solution part 1--socks