#include <bits/stdc++.h>
using namespace std;
long long dp[60], ans[60], n, k;
int main() {
  dp[0] = dp[1] = 1;
  cin >> n >> k;
  for (int i = 0; i < n; i++) ans[i] = i + 1;
  for (int i = 2; i <= n; i++) dp[i] = dp[i - 1] + dp[i - 2];
  long long pos = 0;
  while (pos < n - 1) {
    long long sz = n - pos;
    if (k <= dp[sz - 1]) {
      pos++;
      continue;
    } else {
      k -= dp[sz - 1];
      swap(ans[pos], ans[pos + 1]);
      pos += 2;
      continue;
    }
  }
  for (int i = 0; i < n; i++) cout << ans[i] << " ";
}
