     protected function onPngLoadingComplete (..._) :void {
         for each (var movie :MovieMold in _lib.movies) {
             movie.fillLabels();
-            var creator :MovieCreator = new MovieCreator();
-            creator.frameRate = _lib.frameRate;
-            creator.mold = movie;
-            _creators[movie.id] = creator;
+            _creators[movie.id] = new MovieCreator(movie, _lib.frameRate);
         }
         _future.succeed(new StarlingResources(_creators));
     }

        return holder;
    }
}
import flump.display.Movie;
import flump.mold.MovieMold;

import starling.display.DisplayObject;

class MovieCreator {
    public var frameRate :Number;
    public var mold :MovieMold;

    public function create (idToDisplayObject :Function) :DisplayObject {
        return new Movie(mold, frameRate, idToDisplayObject);
    }

        atlasFuture.succeeded.add(function (img :LoadedImage) :void {
            const baseTexture :Texture = Texture.fromBitmapData(img.bitmapData);
            for each (var atlasTexture :AtlasTextureMold in atlas.textures) {
                _creators[atlasTexture.symbol] = new ImageCreator(
                    Texture.fromTexture(baseTexture, atlasTexture.bounds),
                    atlasTexture.offset,
                    atlasTexture.symbol);
            }
        });
    }
