First implementation, XOR
First implementation, recursion
First implementation, recursion