update initialize and square