i thought all methods had to have self as the first parameter?