         ##
         ##
         ##
-        _createContext: (fn)->
+        _createContext: (fn, _retry)->
+            ##
+            if !@__SCRIPT
+                return @lookup @data.libloader, @identity, (err, ctx)=>
+                    return done(err) if err
+                    setImmediate ()=>
+                        ctx.getCompiledCode (err, script)=>
+                            return done(err) if err
+
+                            if _retry && !(@__SCRIPT = script)
+                                return fn new Error 'libloader problem'
+                                
+                            @_createContext fn, true
+
+            ##
             ctx =
                 window: {}
                 console: console


            vm.createContext ctx

            vm.runInContext @__SCRIPT+"\nvar floyd = require('floyd');", ctx

            ctx.floyd.system.platform = 'cheerio'
            ctx.floyd.system.os = floyd.system.os


                @__POOL__ = []

                @_createContext (err, ctx)=>
                    @_releaseContext(ctx) if ctx
                    done err

        ##
        ##
