Göylərin Oğlu, əziz imperatorumuz, sizə, birinci nazirinə, qonşu krallıqdan vergi toplamağı əmr etdi. Hər birinə gümüş sikkələrdə məbləğ təyin edilmişdir — nömrəsi olan krallıq a_i ödəməlidir., öz sınırsız mərhəmətini göstərmək üçün imperator qərara almışdır ki, bu ölkələrdən yalnız bəzilərindən vergi alsın, digərlərini isə bağışlasın. Həddən artıq çalışqan maliyyə naziri bütün a_i dəyərlərini qeyd edərək, boş olmayan alt çoxluqlardan alınan mümkün bütün vergi məbləğlərini əvvəlcədən hesabladı — belə məbləğlərin sayı 2^n - 1 oldu.əəssüf ki, nazir iş prosesində ilkin vergi dəyərləri olan vərəqi itirdi. Belə kobud səhlənkarlıq və anlaşılmaz əl yazısı üçün o, dərhal edam edildi.İndi sizin əlinizdə yalnız 2^n - 1 məbləğlərdən ibarət olan, çox da aydın olmayan şəkildə yazılmış siyahı var. Bu məbləğlərə əsasən ilkin dəyərləri a_i bərpa edə bilərsinizmi?
sətir z~(1 \le z \le 200) ədədini ehtiva edir — testlərin sayı. testləri təsvir edilir.ər bir test iki sətirdən ibarətdir:
Birinci sətir tam n~(1 \le n \le 20) ədədini ehtiva edir.
İkinci sətir 2^n - 1 tam ədədi, 2 \cdot 10^9-dan çox olmayan, — a_i dəyərlərinin boş olmayan alt çoxluqlarının bütün mümkün məbləğləri ilə ehtiva edir.
ütün a_i dəyərlərinin müsbət tam ədədlər olduğu təmin edilir.ütün testlərdəki ədədlərin ümumi sayı 10^7-dən çox deyil.
ər bir test üçün a_i~(i = 1 .. n) bərpa olunmuş dəyərləri artan sırayla göstərin.Əgər bərpa mümkün deyilsə, və ya giriş məlumatlarına uyğun bir neçə fərqli dəst varsa, "NO" sətirini göstərin — axı siz bir naziri iki dəfə edam edə bilməzsiniz.
Nümunə 1