     for values in Import.properties
       code.body.push new Call   new Value(thisLit, [ new Access new Literal "put" ]), values
 
-    code.body.push new Literal "(function(a, b, c) { " +
-      "while (c = a.shift()) { " +
-        "c[1](b[c[0]]); " +
-      "} " +
-    "})(this.delayed, this.list)"
+    if Import.delayedEnabled
+      code.body.push new Literal "(function(a, b, c) { " +
+        "while (c = a.shift()) { " +
+          "c[1](b[c[0]]); " +
+        "} " +
+      "})(this.delayed, this.list)"
 
     code.body.push new Literal "this"
     code.body.makeReturn()


    unless Import.imported[filename] or o.importingFile is filename
      args.push new Literal "function(cl) { #{variable} = cl; }"

    word = if Import.rootFile isnt o.filename then "this" else "__imports"


  @properties: []
  @rootFile: null
  @importedDeclarations: {}
  @delayedEnabled: no

  constructor: (@searchPath, types={}) ->
    {@isAbsolute, @isRelative, @isResolve} = types
