buncha shit, should have committed earlier