Petya loves lucky numbers. Everybody knows that lucky numbers are positive integers whose decimal representation contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.

One day Petya dreamt of a lexicographically k-th permutation of integers from 1 to n. Determine how many lucky numbers in the permutation are located on the positions whose indexes are also lucky numbers.

Input

The first line contains two integers n and k (1 ≤ n, k ≤ 109) — the number of elements in the permutation and the lexicographical number of the permutation.

Output

If the k-th permutation of numbers from 1 to n does not exist, print the single number "-1" (without the quotes). Otherwise, print the answer to the problem: the number of such indexes i, that i and ai are both lucky numbers.

Examples

Input

7 4


Output

1


Input

4 7


Output

1

Note

A permutation is an ordered set of n elements, where each integer from 1 to n occurs exactly once. The element of permutation in position with index i is denoted as ai (1 ≤ i ≤ n). Permutation a is lexicographically smaller that permutation b if there is such a i (1 ≤ i ≤ n), that ai < bi, and for any j (1 ≤ j < i) aj = bj. Let's make a list of all possible permutations of n elements and sort it in the order of lexicographical increasing. Then the lexicographically k-th permutation is the k-th element of this list of permutations.

In the first sample the permutation looks like that:

1 2 3 4 6 7 5

The only suitable position is 4.

In the second sample the permutation looks like that:

2 1 3 4

The only suitable position is 4.
#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k, count = 0, ch = 0, c = 0;
  int mas[15] = {1,    2,     6,      24,      120,      720,
                 5040, 40320, 362880, 3628800, 39916800, 479001600};
  int isp[1000] = {}, dl = 0;
  long long int mas2[1030] = {
      4,         7,         44,        47,        74,        77,
      444,       447,       474,       477,       744,       747,
      774,       777,       4444,      4447,      4474,      4477,
      4744,      4747,      4774,      4777,      7444,      7447,
      7474,      7477,      7744,      7747,      7774,      7777,
      44444,     44447,     44474,     44477,     44744,     44747,
      44774,     44777,     47444,     47447,     47474,     47477,
      47744,     47747,     47774,     47777,     74444,     74447,
      74474,     74477,     74744,     74747,     74774,     74777,
      77444,     77447,     77474,     77477,     77744,     77747,
      77774,     77777,     444444,    444447,    444474,    444477,
      444744,    444747,    444774,    444777,    447444,    447447,
      447474,    447477,    447744,    447747,    447774,    447777,
      474444,    474447,    474474,    474477,    474744,    474747,
      474774,    474777,    477444,    477447,    477474,    477477,
      477744,    477747,    477774,    477777,    744444,    744447,
      744474,    744477,    744744,    744747,    744774,    744777,
      747444,    747447,    747474,    747477,    747744,    747747,
      747774,    747777,    774444,    774447,    774474,    774477,
      774744,    774747,    774774,    774777,    777444,    777447,
      777474,    777477,    777744,    777747,    777774,    777777,
      4444444,   4444447,   4444474,   4444477,   4444744,   4444747,
      4444774,   4444777,   4447444,   4447447,   4447474,   4447477,
      4447744,   4447747,   4447774,   4447777,   4474444,   4474447,
      4474474,   4474477,   4474744,   4474747,   4474774,   4474777,
      4477444,   4477447,   4477474,   4477477,   4477744,   4477747,
      4477774,   4477777,   4744444,   4744447,   4744474,   4744477,
      4744744,   4744747,   4744774,   4744777,   4747444,   4747447,
      4747474,   4747477,   4747744,   4747747,   4747774,   4747777,
      4774444,   4774447,   4774474,   4774477,   4774744,   4774747,
      4774774,   4774777,   4777444,   4777447,   4777474,   4777477,
      4777744,   4777747,   4777774,   4777777,   7444444,   7444447,
      7444474,   7444477,   7444744,   7444747,   7444774,   7444777,
      7447444,   7447447,   7447474,   7447477,   7447744,   7447747,
      7447774,   7447777,   7474444,   7474447,   7474474,   7474477,
      7474744,   7474747,   7474774,   7474777,   7477444,   7477447,
      7477474,   7477477,   7477744,   7477747,   7477774,   7477777,
      7744444,   7744447,   7744474,   7744477,   7744744,   7744747,
      7744774,   7744777,   7747444,   7747447,   7747474,   7747477,
      7747744,   7747747,   7747774,   7747777,   7774444,   7774447,
      7774474,   7774477,   7774744,   7774747,   7774774,   7774777,
      7777444,   7777447,   7777474,   7777477,   7777744,   7777747,
      7777774,   7777777,   44444444,  44444447,  44444474,  44444477,
      44444744,  44444747,  44444774,  44444777,  44447444,  44447447,
      44447474,  44447477,  44447744,  44447747,  44447774,  44447777,
      44474444,  44474447,  44474474,  44474477,  44474744,  44474747,
      44474774,  44474777,  44477444,  44477447,  44477474,  44477477,
      44477744,  44477747,  44477774,  44477777,  44744444,  44744447,
      44744474,  44744477,  44744744,  44744747,  44744774,  44744777,
      44747444,  44747447,  44747474,  44747477,  44747744,  44747747,
      44747774,  44747777,  44774444,  44774447,  44774474,  44774477,
      44774744,  44774747,  44774774,  44774777,  44777444,  44777447,
      44777474,  44777477,  44777744,  44777747,  44777774,  44777777,
      47444444,  47444447,  47444474,  47444477,  47444744,  47444747,
      47444774,  47444777,  47447444,  47447447,  47447474,  47447477,
      47447744,  47447747,  47447774,  47447777,  47474444,  47474447,
      47474474,  47474477,  47474744,  47474747,  47474774,  47474777,
      47477444,  47477447,  47477474,  47477477,  47477744,  47477747,
      47477774,  47477777,  47744444,  47744447,  47744474,  47744477,
      47744744,  47744747,  47744774,  47744777,  47747444,  47747447,
      47747474,  47747477,  47747744,  47747747,  47747774,  47747777,
      47774444,  47774447,  47774474,  47774477,  47774744,  47774747,
      47774774,  47774777,  47777444,  47777447,  47777474,  47777477,
      47777744,  47777747,  47777774,  47777777,  74444444,  74444447,
      74444474,  74444477,  74444744,  74444747,  74444774,  74444777,
      74447444,  74447447,  74447474,  74447477,  74447744,  74447747,
      74447774,  74447777,  74474444,  74474447,  74474474,  74474477,
      74474744,  74474747,  74474774,  74474777,  74477444,  74477447,
      74477474,  74477477,  74477744,  74477747,  74477774,  74477777,
      74744444,  74744447,  74744474,  74744477,  74744744,  74744747,
      74744774,  74744777,  74747444,  74747447,  74747474,  74747477,
      74747744,  74747747,  74747774,  74747777,  74774444,  74774447,
      74774474,  74774477,  74774744,  74774747,  74774774,  74774777,
      74777444,  74777447,  74777474,  74777477,  74777744,  74777747,
      74777774,  74777777,  77444444,  77444447,  77444474,  77444477,
      77444744,  77444747,  77444774,  77444777,  77447444,  77447447,
      77447474,  77447477,  77447744,  77447747,  77447774,  77447777,
      77474444,  77474447,  77474474,  77474477,  77474744,  77474747,
      77474774,  77474777,  77477444,  77477447,  77477474,  77477477,
      77477744,  77477747,  77477774,  77477777,  77744444,  77744447,
      77744474,  77744477,  77744744,  77744747,  77744774,  77744777,
      77747444,  77747447,  77747474,  77747477,  77747744,  77747747,
      77747774,  77747777,  77774444,  77774447,  77774474,  77774477,
      77774744,  77774747,  77774774,  77774777,  77777444,  77777447,
      77777474,  77777477,  77777744,  77777747,  77777774,  77777777,
      444444444, 444444447, 444444474, 444444477, 444444744, 444444747,
      444444774, 444444777, 444447444, 444447447, 444447474, 444447477,
      444447744, 444447747, 444447774, 444447777, 444474444, 444474447,
      444474474, 444474477, 444474744, 444474747, 444474774, 444474777,
      444477444, 444477447, 444477474, 444477477, 444477744, 444477747,
      444477774, 444477777, 444744444, 444744447, 444744474, 444744477,
      444744744, 444744747, 444744774, 444744777, 444747444, 444747447,
      444747474, 444747477, 444747744, 444747747, 444747774, 444747777,
      444774444, 444774447, 444774474, 444774477, 444774744, 444774747,
      444774774, 444774777, 444777444, 444777447, 444777474, 444777477,
      444777744, 444777747, 444777774, 444777777, 447444444, 447444447,
      447444474, 447444477, 447444744, 447444747, 447444774, 447444777,
      447447444, 447447447, 447447474, 447447477, 447447744, 447447747,
      447447774, 447447777, 447474444, 447474447, 447474474, 447474477,
      447474744, 447474747, 447474774, 447474777, 447477444, 447477447,
      447477474, 447477477, 447477744, 447477747, 447477774, 447477777,
      447744444, 447744447, 447744474, 447744477, 447744744, 447744747,
      447744774, 447744777, 447747444, 447747447, 447747474, 447747477,
      447747744, 447747747, 447747774, 447747777, 447774444, 447774447,
      447774474, 447774477, 447774744, 447774747, 447774774, 447774777,
      447777444, 447777447, 447777474, 447777477, 447777744, 447777747,
      447777774, 447777777, 474444444, 474444447, 474444474, 474444477,
      474444744, 474444747, 474444774, 474444777, 474447444, 474447447,
      474447474, 474447477, 474447744, 474447747, 474447774, 474447777,
      474474444, 474474447, 474474474, 474474477, 474474744, 474474747,
      474474774, 474474777, 474477444, 474477447, 474477474, 474477477,
      474477744, 474477747, 474477774, 474477777, 474744444, 474744447,
      474744474, 474744477, 474744744, 474744747, 474744774, 474744777,
      474747444, 474747447, 474747474, 474747477, 474747744, 474747747,
      474747774, 474747777, 474774444, 474774447, 474774474, 474774477,
      474774744, 474774747, 474774774, 474774777, 474777444, 474777447,
      474777474, 474777477, 474777744, 474777747, 474777774, 474777777,
      477444444, 477444447, 477444474, 477444477, 477444744, 477444747,
      477444774, 477444777, 477447444, 477447447, 477447474, 477447477,
      477447744, 477447747, 477447774, 477447777, 477474444, 477474447,
      477474474, 477474477, 477474744, 477474747, 477474774, 477474777,
      477477444, 477477447, 477477474, 477477477, 477477744, 477477747,
      477477774, 477477777, 477744444, 477744447, 477744474, 477744477,
      477744744, 477744747, 477744774, 477744777, 477747444, 477747447,
      477747474, 477747477, 477747744, 477747747, 477747774, 477747777,
      477774444, 477774447, 477774474, 477774477, 477774744, 477774747,
      477774774, 477774777, 477777444, 477777447, 477777474, 477777477,
      477777744, 477777747, 477777774, 477777777, 744444444, 744444447,
      744444474, 744444477, 744444744, 744444747, 744444774, 744444777,
      744447444, 744447447, 744447474, 744447477, 744447744, 744447747,
      744447774, 744447777, 744474444, 744474447, 744474474, 744474477,
      744474744, 744474747, 744474774, 744474777, 744477444, 744477447,
      744477474, 744477477, 744477744, 744477747, 744477774, 744477777,
      744744444, 744744447, 744744474, 744744477, 744744744, 744744747,
      744744774, 744744777, 744747444, 744747447, 744747474, 744747477,
      744747744, 744747747, 744747774, 744747777, 744774444, 744774447,
      744774474, 744774477, 744774744, 744774747, 744774774, 744774777,
      744777444, 744777447, 744777474, 744777477, 744777744, 744777747,
      744777774, 744777777, 747444444, 747444447, 747444474, 747444477,
      747444744, 747444747, 747444774, 747444777, 747447444, 747447447,
      747447474, 747447477, 747447744, 747447747, 747447774, 747447777,
      747474444, 747474447, 747474474, 747474477, 747474744, 747474747,
      747474774, 747474777, 747477444, 747477447, 747477474, 747477477,
      747477744, 747477747, 747477774, 747477777, 747744444, 747744447,
      747744474, 747744477, 747744744, 747744747, 747744774, 747744777,
      747747444, 747747447, 747747474, 747747477, 747747744, 747747747,
      747747774, 747747777, 747774444, 747774447, 747774474, 747774477,
      747774744, 747774747, 747774774, 747774777, 747777444, 747777447,
      747777474, 747777477, 747777744, 747777747, 747777774, 747777777,
      774444444, 774444447, 774444474, 774444477, 774444744, 774444747,
      774444774, 774444777, 774447444, 774447447, 774447474, 774447477,
      774447744, 774447747, 774447774, 774447777, 774474444, 774474447,
      774474474, 774474477, 774474744, 774474747, 774474774, 774474777,
      774477444, 774477447, 774477474, 774477477, 774477744, 774477747,
      774477774, 774477777, 774744444, 774744447, 774744474, 774744477,
      774744744, 774744747, 774744774, 774744777, 774747444, 774747447,
      774747474, 774747477, 774747744, 774747747, 774747774, 774747777,
      774774444, 774774447, 774774474, 774774477, 774774744, 774774747,
      774774774, 774774777, 774777444, 774777447, 774777474, 774777477,
      774777744, 774777747, 774777774, 774777777, 777444444, 777444447,
      777444474, 777444477, 777444744, 777444747, 777444774, 777444777,
      777447444, 777447447, 777447474, 777447477, 777447744, 777447747,
      777447774, 777447777, 777474444, 777474447, 777474474, 777474477,
      777474744, 777474747, 777474774, 777474777, 777477444, 777477447,
      777477474, 777477477, 777477744, 777477747, 777477774, 777477777,
      777744444, 777744447, 777744474, 777744477, 777744744, 777744747,
      777744774, 777744777, 777747444, 777747447, 777747474, 777747477,
      777747744, 777747747, 777747774, 777747777, 777774444, 777774447,
      777774474, 777774477, 777774744, 777774747, 777774774, 777774777,
      777777444, 777777447, 777777474, 777777477, 777777744, 777777747,
      777777774, 777777777, 4444444444};
  long long int q = 1, numb = 11, num = 1, w = 0;
  char mas3[10000] = {};
  cin >> n >> k;
  int start = 1;
  if (n > 16) {
    for (w = 0; mas2[w] < n - 16; count++, w++)
      ;
    start = n - 16;
  }
  for (int j = start; j <= n; j++) {
    for (; k <= mas[numb]; numb--)
      ;
    if (numb + 1 >= n) {
      cout << "-1";
      return 0;
    }
    if (numb + 1 == n - j) {
      if (numb >= 0) {
        c = ((k - 1) / (mas[numb]));
        k -= (mas[numb] * c);
      }
    }
    int t = j - dl;
    for (int i = 0; i < dl; i++) {
      if (t + c >= isp[i]) c++;
    }
    ch = t + c;
    mas3[j - 1] = ch + 48;
    if (c > 0) {
      isp[dl] = ch;
      dl++;
      sort(isp, isp + dl);
    }
    c = 0;
    if (j == ch && ch == mas2[w]) {
      count++;
      w++;
    }
    if (j == mas2[w] && j != ch) {
      for (int e = 0; ch >= mas2[e]; e++) {
        if (ch == mas2[e]) count++;
      }
      w++;
    }
  }
  cout << count;
}
