2 hour front-end coding challenge