#include <bits/stdc++.h>
using namespace std;
long long int fib[50 + 5];
void fill_fib() {
  int i;
  fib[1] = fib[2] = 1;
  for (i = 3; i <= 50; i++) fib[i] = fib[i - 1] + fib[i - 2];
}
void fill_perm(int n, long long int k, int perm[]) {
  int i;
  for (i = 0; i < n; i++)
    if (k <= fib[n - i])
      perm[i] = i + 1;
    else {
      perm[i] = i + 2;
      perm[i + 1] = i + 1;
      k -= fib[n - i];
      i++;
    }
}
int main() {
  int i, perm[50 + 5], n;
  long long int k;
  fill_fib();
  scanf("%i%I64d", &n, &k);
  fill_perm(n, k, perm);
  for (i = 0; i < n; i++) printf("%i ", perm[i]);
  return 0;
}
