1. 程式人生 > >小明數(打表)

小明數(打表)

Description

小明比較喜歡研究各種各樣的數字,有一天他發現了一類數,並將這些數命名為“小明數”,下面是“小明數”的定義:

數字的二進位制由連續的k個1和連續的k-1個0組成。

比如:

1(二進位制為:1,k=1)

6(二進位制為:110,k=2)

120(二進位制為:1111000,k=4)

496(二進位制為:111110000,k=5)

現在給你一個數字n,求他所有的因子裡最大的“小明數”。

Input

第1行:一個數T,表示後面用作輸入測試的數的數量。(1 <= T <= 10^5)

第2 - T + 1行:每行1個數n。(1 <= n <= 10^5)

Output

共T行每行對應每個測試用例的結果

Sample Input 1

2
3
992

Sample Output 1

1
496