flip 再帰