still crappy but the end