function print(obj, silent = false) {
    let result = ''
    let children = ''
    let { type, node, instanced, animated } = getInfo(obj)

    // Check if the root node is useless
    if (obj.__removed && obj.children.length) {
      obj.children.forEach((child) => (result += print(child)))
      return result
    }

    // Bail out on bones
    if (!options.bones && type === 'bone') {
      return `<primitive object={${node}} />`
    }

    // Take care of lights with targets
    if (type.endsWith('Light') && obj.target && obj.children[0] === obj.target) {
      return `<${type} ${handleProps(obj)} target={${node}.target}>
        <primitive object={${node}.target} ${handleProps(obj.target)} />
      </${type}>`
    }

    // Collect children
    if (obj.children) obj.children.forEach((child) => (children += print(child)))

    if (instanced) {
      result = `<instances.${duplicates.geometries[obj.geometry.uuid + obj.material.name].name} `
      type = `instances.${duplicates.geometries[obj.geometry.uuid + obj.material.name].name}`
    } else {
      if (obj.isInstancedMesh) {
        const geo = `${node}.geometry`
        const mat = obj.material.name ? `materials${sanitizeName(obj.material.name)}` : `${node}.material`
        type = "instancedMesh"
        result = `<instancedMesh args={[${geo}, ${mat}, ${!obj.count ? `${node}.count` : obj.count}]} `
      } else {
        // Form the object in JSX syntax
        if (type === 'bone') result = `<primitive object={${node}} `
        else result = `<${type} `
      }
    }

    // Include names when output is uncompressed or morphTargetDictionaries are present
    if (obj.name.length && (options.keepnames || obj.morphTargetDictionary || animated)) result += `name="${obj.name}" `

    const oldResult = result
    result += handleProps(obj)

    const pruned = prune(obj, children, result, oldResult, silent)
    // Bail out if the object was pruned
    if (pruned !== undefined) return pruned

    // Close tag
    result += `${children.length ? '>' : '/>'}\n`

    // Add children and return
    if (children.length) {
      if (type === 'bone') result += children + `</primitive>`
      else result += children + `</${type}>`
    }
    return result
  }
Lack of content
   <group position={[10, 0, 0]} scale={2} rotation={[-Math.PI / 2, 0, 0]}>
     <group position={[10, 0, 0]} scale={2} rotation={[-Math.PI / 2, 0, 0]}>
       <group position={[10, 0, 0]} scale={2} rotation={[-Math.PI / 2, 0, 0]} />
Solution:
  (delete the whole sub graph)