import sys input=lambda: sys.stdin.readline().rstrip() F=[3, 5, 17, 257, 65537] a=int(input()) FF=[1] for i in range(2**5): res=1 for j in range(5): if i&(1<1: FF.append(res) S=set() for ff in FF: if ff==1: ord=1 else: ord=0 while 2<=ff*2**ord<=10**9: S.add(ff*2**ord) ord+=1 S=sorted(list(S)) import bisect ct=bisect.bisect_right(S,a) print(ct-1)