added self to all function arguments