Implement a first in first out (FIFO) queue using only two stacks. The implemented queue should support all the functions of a normal queue (push, peek, pop, and empty).
Example 1:
Input: ["MyQueue", "push", "push", "peek", "pop", "empty"] [[], [1], [2], [], [], []] Output: [null, null, null, 1, 1, false]
Constraints:
1 <= x <= 9100 calls will be made to push, pop, peek, and empty.