#include #include long long mod=1000000007; typedef struct { int b[61]; } bits; int cmp(const void*a,const void*b){ return ((bits*)a)->b[60]-((bits*)b)->b[60]; } int bitcheck(long long a,bits* b,int c){ if(a%2==1){ a--; b->b[c]=1; }else{ b->b[c]=0; } if(a==0) return; bitcheck(a/2,b,c+1); } long long kaijo(int a){ if(a==0) return 1; return (long long)a*kaijo(a-1)%mod; } int main(){ int n,k,i,j,check[60],bitsum; bits bit[61]; long long a,ans; scanf("%d %d",&n,&k); for(i=0;i