Class Flash ActionScript

package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var srcInstance:ShapeContainer = new ShapeContainer(200, 200);
        
        var cirA:Circle = new Circle(0, 0, 50);
        var cirB:Circle = new Circle(0, 0, 400);
        var sqA:Square = new Square(0, 0, 100);
        var sqB:Square = new Square(0, 0, 200);
        
        var bAdded:Boolean;
        
        bAdded = srcInstance.addShape(cirA);
        trace(bAdded);
        bAdded = srcInstance.addShape(cirB);
        trace(bAdded);
        bAdded = srcInstance.addShape(sqA);
        trace(bAdded);
        bAdded = srcInstance.addShape(sqB);
        trace(bAdded);
    }
  }
}
interface IShape {
  function getDimensions():Object;
}
class Circle implements IShape{
  private var _nX:Number;
  private var _nY:Number;
  private var _nRadius:Number;
  public function Circle(nX:Number, nY:Number, nRadius:Number) {
    nX = nX;
    nY = nY;
    nRadius = nRadius;
  }
  public function getDimensions():Object {
    return {width: 2* _nRadius, height: 2  * _nRadius};
  }
}
class Square implements IShape {
  private var _nX:Number;
  private var _nY:Number;
  private var _nSide:Number;
  public function Square(nX:Number, nY:Number, nSide:Number) {
    _nX = nX;
    nY = nY;
    nSide = nSide;
  }
  public function getDimensions():Object {
    return {width: _nSide, height: _nSide};
  }
}
class ShapeContainer {
  private var _aShapes:Array;
  private var _nWidth:Number;
  private var _nHeight:Number;
  public function ShapeContainer(nWidth:Number, nHeight:Number) {
    _nWidth = nWidth;
    _nHeight = nHeight;
    _aShapes = new Array();
  }
  public function addShape(shObject:IShape):Boolean {
    if(shObject.getDimensions().height > _nHeight) {
      return false;
    }
    var nSum:Number = 0;
    for(var i:Number = 0; i < _aShapes.length; i++) {
      nSum += _aShapes[i].getDimensions().width;
    }
   
    if(nSum + shObject.getDimensions().width > _nWidth) {
      return false;
    }
    else {
      _aShapes.push(shObject);
      return true;
    }
    }
}