did a lot of methods