eliminate self. where unnecessary