#include using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair P; #define fi first #define se second #define repl(i,a,b) for(ll i=(ll)(a);i<(ll)(b);i++) #define rep(i,n) repl(i,0,n) #define each(itr,v) for(auto itr:v) #define pb push_back #define all(x) (x).begin(),(x).end() #define dbg(x) cout<<#x"="<y?x:y) #define mmin(x,y) (x=pow(2,k)-1)return; dfs(v*2+1); res[v]=cnt++; dfs(v*2+2); } int main(){ cin.sync_with_stdio(false); cin>>k; dfs(0); vector tmp; sort(res+cnt-1-(ll)pow(2,k-1)-1,res+cnt-1); rep(i,cnt-1)printf("%lld ", res[i]); printf("\n"); return 0; }