solution to the Zappos internship challenge