why do you need to pass proj if it's an attribute of self?