Bituś 和 Bajtuś 正在玩“双倍击打”游戏。游戏在一个由 $n$ 个格子组成的棋盘上进行,这些格子从 $1$ 到 $n$ 编号。每个格子上都有一个棋子。两名玩家轮流行动。每次行动是将编号为 $i$ 的格子上的棋子取下,并把它移动到编号为 $2^{k}i$ 的格子上,这里的 $k \ge 1$ 可以任意选择,只要目标格子存在。如果新格子上已经有棋子,则发生“互相击打”,两个棋子都从游戏中被移除。无法行动的玩家判负。
每次都是 Bituś 准备棋盘(也就是选择一个正整数 $n$),并大方地把先手权让给 Bajtuś。但 Bituś 不喜欢输,所以他总是选择一个让后手玩家有必胜策略的棋盘。例如,长度为 1、10 或 11 的棋盘就满足这个条件。但他又不希望 Bajtuś 起疑,所以每次都要选不同大小的棋盘。
因此他请求你帮忙。请写一个程序,对于给定的 $k$,输出第 $k$ 大(按递增顺序)的、保证后手玩家有必胜策略的棋盘大小。
输入格式
输入的唯一一行包含一个整数 $k$($1 \le k \le 1,000,000,000$)。
输出格式
输出的唯一一行应为第 $k$ 大保证后手玩家获胜的棋盘的大小。
样例
输入
2
输出
10