Why do we have all this methods in two places?