Square! method some trouble but got around with map!. Have to change self as go