length, dividing = [int(j) for j in input().split()]
result = 1

for l in range(1, length+1):
    rems = []
    prev_rem = 1
    for i in range(l):
        if not i:
            rems.append(1)
        elif i < (l+1)//2:
            prev_rem = prev_rem * 10 % dividing
            rems.append(prev_rem)
        else:
            prev_rem = prev_rem * 10 % dividing
            rems[l-i-1] = (rems[l-i-1] + prev_rem) % dividing

    possible = [1]
    for i, rem in enumerate(rems):
        new_possible = [0] * dividing
        for prev, cnt in enumerate(possible):
            for pl in range(i == 0, 10):
                new_possible[(prev + pl * rem) % dividing] += cnt
        possible = new_possible
    result = (result + possible[0]) % (10 ** 9 + 7)
print(result)