not terrible programming, just bad