n, k = map(int,input().split())

mod = 10**9+7
MOD = 10 ** 9 + 7
MAX = 2*n+1


fact = [1] * (MAX + 1)  # i!
finv = [1] * (MAX + 1)  # (i!)^{-1}
iinv = [1] * (MAX + 1)  # i^{-1}

for i in range(2, MAX + 1):
    fact[i] = fact[i - 1] * i % MOD
    iinv[i] = MOD - iinv[MOD % i] * (MOD // i) % MOD
    finv[i] = finv[i - 1] * iinv[i] % MOD


def c(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD


ans = 0
for m in range(1,min(n-1,k)+1):
    # print((c(n,m) * c(n-1,m)) % mod)
    ans += (c(n,m)%mod * c(n-1,m)%mod) % mod

if k == 1:
    print(ans % mod)

else:
    print((ans+1) % mod)

 n, k = map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split k mod = 10**9+7 mod 10**9+7 10**9 10 9 7 MOD = 10 ** 9 + 7 MOD 10 ** 9 + 7 10 ** 9 10 9 7 MAX = 2*n+1 MAX 2*n+1 2*n 2 n 1 fact = [1] * (MAX + 1) fact [1] * (MAX + 1) [1] 1 MAX + 1 MAX 1 finv = [1] * (MAX + 1) finv [1] * (MAX + 1) [1] 1 MAX + 1 MAX 1 iinv = [1] * (MAX + 1) iinv [1] * (MAX + 1) [1] 1 MAX + 1 MAX 1 for i in range(2, MAX + 1):
    fact[i] = fact[i - 1] * i % MOD
    iinv[i] = MOD - iinv[MOD % i] * (MOD // i) % MOD
    finv[i] = finv[i - 1] * iinv[i] % MOD i range(2, MAX + 1) range 2 MAX + 1 MAX 1 fact[i] = fact[i - 1] * i % MOD fact[i] fact i fact[i - 1] * i % MOD fact[i - 1] * i fact[i - 1] fact i - 1 i 1 i MOD iinv[i] = MOD - iinv[MOD % i] * (MOD // i) % MOD iinv[i] iinv i MOD - iinv[MOD % i] * (MOD // i) % MOD MOD iinv[MOD % i] * (MOD // i) % MOD iinv[MOD % i] * (MOD // i) iinv[MOD % i] iinv MOD % i MOD i MOD // i MOD i MOD finv[i] = finv[i - 1] * iinv[i] % MOD finv[i] finv i finv[i - 1] * iinv[i] % MOD finv[i - 1] * iinv[i] finv[i - 1] finv i - 1 i 1 iinv[i] iinv i MOD def c(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD c if n < k or n < 0 or k < 0:
        return 0
     n < k or n < 0 or k < 0 n < k or n < 0 n < k n k n < 0 n 0 k < 0 k 0 return 0 0 return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD (fact[n] * finv[k] % MOD) * finv[n - k] % MOD (fact[n] * finv[k] % MOD) * finv[n - k] fact[n] * finv[k] % MOD fact[n] * finv[k] fact[n] fact n finv[k] finv k MOD finv[n - k] finv n - k n k MOD n n k k ans = 0 ans 0 for m in range(1,min(n-1,k)+1):
    # print((c(n,m) * c(n-1,m)) % mod)
    ans += (c(n,m)%mod * c(n-1,m)%mod) % mod m range(1,min(n-1,k)+1) range 1 min(n-1,k)+1 min(n-1,k) min n-1 n 1 k 1 ans += (c(n,m)%mod * c(n-1,m)%mod) % mod ans (c(n,m)%mod * c(n-1,m)%mod) % mod c(n,m)%mod * c(n-1,m)%mod c(n,m)%mod * c(n-1,m) c(n,m)%mod c(n,m) c n m mod c(n-1,m) c n-1 n 1 m mod mod if k == 1:
    print(ans % mod)

else:
    print((ans+1) % mod) k == 1 k 1 print(ans % mod) print ans % mod ans mod print((ans+1) % mod) print (ans+1) % mod ans+1 ans 1 mod mod = 10**9+7 10**9+7 mod iinv = [1] * (MAX + 1) [1] * (MAX + 1) iinv fact = [1] * (MAX + 1) [1] * (MAX + 1) fact k = map(int,input().split()) map(int,input().split()) k MOD = 10 ** 9 + 7 10 ** 9 + 7 MOD finv = [1] * (MAX + 1) [1] * (MAX + 1) finv ans += (c(n,m)%mod * c(n-1,m)%mod) % mod (c(n,m)%mod * c(n-1,m)%mod) % mod ans n, k = map(int,input().split()) map(int,input().split()) n ans = 0 0 ans MAX = 2*n+1 2*n+1 MAX def c(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD def c(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD c
n, k = map(int,input().split())

mod = 10**9+7
MOD = 10 ** 9 + 7
MAX = 2*n+1


fact = [1] * (MAX + 1)  # i!
finv = [1] * (MAX + 1)  # (i!)^{-1}
iinv = [1] * (MAX + 1)  # i^{-1}

for i in range(2, MAX + 1):
    fact[i] = fact[i - 1] * i % MOD
    iinv[i] = MOD - iinv[MOD % i] * (MOD // i) % MOD
    finv[i] = finv[i - 1] * iinv[i] % MOD


def c(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return (fact[n] * finv[k] % MOD) * finv[n - k] % MOD


ans = 0
for m in range(1,min(n-1,k)+1):
    # print((c(n,m) * c(n-1,m)) % mod)
    ans += (c(n,m)%mod * c(n-1,m)%mod) % mod

if k == 1:
    print(ans % mod)

else:
    print((ans+1) % mod)


