O(2^n)