gave up halfway but please take it