package main import ( "bufio" "fmt" "os" "strconv" ) var sc = bufio.NewScanner(os.Stdin) var rdr = bufio.NewReaderSize(os.Stdin, 1000000) func main() { sc.Split(bufio.ScanWords) n, m := nextInt(), nextInt() n -= n % 1000 mod := (n/1000 - n/(1000*m)*m) fmt.Println(ncr(uint64(m), uint64(mod))) } func ncr(n, r uint64) uint64 { k := r if k > n/2 { k = n - r } ret := uint64(1) for i := uint64(1); i <= k; i++ { ret *= (n - i + 1) % 1000000000 ret /= i } return ret % 1000000000 } func nextLine() string { sc.Scan() return sc.Text() } func nextInt() int { i, _ := strconv.Atoi(nextLine()) return i }