Block from external 3DM file without Insert command

Hi!
I want to get a block from external 3DM file without Insert command in python.(Not block instance)

Any idea?

My simple idea:

import scriptcontext
import Rhino
import System.Guid

filename = "d:/path/to/box.3dm"
f3dm = Rhino.FileIO.File3dm.Read(filename)

objs = [obj for obj in f3dm.Objects.GetEnumerator()]
geometry = [obj.Geometry for obj in objs]
attrs = [obj.Attributes for obj in objs]
base_point = Rhino.Geometry.Point3d(0,0,0)

block_name = "box"
found = scriptcontext.doc.InstanceDefinitions.Find(block_name)
if found:
    rc = scriptcontext.doc.InstanceDefinitions.ModifyGeometry(found.Index, geometry, attrs)
else:
    rc = scriptcontext.doc.InstanceDefinitions.Add(block_name, "", base_point, geometry, attrs)

#

idef = scriptcontext.doc.InstanceDefinitions.Find(block_name)
xform = Rhino.Geometry.Transform.Translation(10,0,0)

id = scriptcontext.doc.Objects.AddInstanceObject(idef.Index, xform )
if id!=System.Guid.Empty:
    scriptcontext.doc.Views.Redraw()