initial rectangle implementation