 
 public class SwfTexture
 {
-    public function get symbol():String {   return _symbol;     }
-    public function get origin():Point  {   return new Point(_origin.x*_scale, _origin.y*_scale);     }
-    public function get w():int {   return Math.ceil(_w*_scale);  }
-    public function get h():int {   return Math.ceil(_h*_scale);  }
-    public function get a():int {   return this.w*this.h;  }
+    public var symbol :String;
+    public var quality :String;
+    public function get origin() :Point { return new Point(_origin.x * _scale, _origin.y * _scale); }
+    public function get w() :int { return Math.ceil(_w * _scale); }
+    public function get h() :int { return Math.ceil(_h * _scale); }
+    public function get a() :int { return this.w * this.h; }
 
     public static function fromFlipbook (lib :XflLibrary, movie :MovieMold, frame :int,
         quality :String = StageQuality.BEST, scale :Number = 1) :SwfTexture {

    }

    public function SwfTexture (symbol :String, disp :DisplayObject, scale :Number, quality :String) {
        _symbol = symbol;
        _quality = quality;

        // wrap object twice for convenience
        var wrapper:Sprite = new Sprite();

            // render to bmd
            var topLeft:Point = new Point(_s_filteredBmd.width / 2 - _strictBounds.width / 2 - _strictBounds.x, _s_filteredBmd.height / 2 - _strictBounds.height / 2 - _strictBounds.y);
            var m :Matrix = new Matrix(1,0,0,1, topLeft.x, topLeft.y);
            _s_filteredBmd.drawWithQuality(_disp, m, null, null, null, true, this.quality);
            
            // calculate visual bounds
            _visualBounds = _s_filteredBmd.getColorBoundsRect(0xff000000, 0x00000000, false);
