moved new methods to bottom