as you have access you y directly why using self. everywhere? I makes longer lines and a self. causes
a dictionary lookup in the attributes.