Polycarpus loves lucky numbers. Everybody knows that lucky numbers are positive integers, whose decimal representation (without leading zeroes) contain only the lucky digits *x* and *y*. For example, if *x* = 4, and *y* = 7, then numbers 47, 744, 4 are lucky.

Let's call a positive integer *a* undoubtedly lucky, if there are such digits *x* and *y* (0 ≤ *x*, *y* ≤ 9), that the decimal representation of number *a* (without leading zeroes) contains only digits *x* and *y*.

Polycarpus has integer *n*. He wants to know how many positive integers that do not exceed *n*, are undoubtedly lucky. Help him, count this number.
The first line contains a single integer *n* (1 ≤ *n* ≤ 10<sup class="upper-index">9</sup>) — Polycarpus's number.
__author__ = 'Esfandiar'
import sys
from collections import defaultdict
input=sys.stdin.readline
n=int(input())
if n<=100:
    print(n)
    exit()
adad = 101
def cal(x):
    diff = [0]*10
    d = 0
    while x:
        yy=x%10
        diff[yy]+=1
        if diff[yy] == 1:
            d+=1
            if d > 2:return 0 
        x//=10
    return 1
res = 100
while adad<=n:
    if cal(adad):
        res+=1
    adad+=1
print(res)