#include <stdio.h>
#define DIM 100
int n, stack[DIM];
void subset(int level) {
for(int i = 1; i <= level;++i) {
}
}
void solve(int level){
if(level<=n) {
for(int i = stack[level-1]+1; i <= n; ++i) {
stack[level] = i;
subset(level);
solve(level+1);
}
}
}
int main(int argc, char const *argv[]) {
solve(1);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNkZWZpbmUgRElNIDEwMAoKaW50IG4sIHN0YWNrW0RJTV07Cgp2b2lkIHN1YnNldChpbnQgbGV2ZWwpIHsKCiAgICAgZm9yKGludCBpID0gMTsgaSA8PSBsZXZlbDsrK2kpIHsKCiAgICAgICBwcmludGYoIiVkICIsIHN0YWNrW2ldKTsKCiAgICAgfQogICAgIAogICAgIHByaW50ZigiXG4iKTsKfQoKdm9pZCBzb2x2ZShpbnQgbGV2ZWwpewogIAogICAgIGlmKGxldmVsPD1uKSB7ICAgICAgCiAgICAgICBmb3IoaW50IGkgPSBzdGFja1tsZXZlbC0xXSsxOyBpIDw9IG47ICsraSkgewogICAgICAgICBzdGFja1tsZXZlbF0gPSBpOwogICAgICAgICBzdWJzZXQobGV2ZWwpOwogICAgICAgICBzb2x2ZShsZXZlbCsxKTsKICAgICAgIH0KICAgICB9Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyIGNvbnN0ICphcmd2W10pIHsKCiAgc2NhbmYoIiVkIiwgJm4pOwogIHNvbHZlKDEpOwoKICByZXR1cm4gMDsKfQo=