Solutions to Square's online technical challenge