import java.util.*;

public class Euler274 {
    static List<Integer> primesUpTo(int n) {
        byte[] isComposite = new byte[n + 1];
        List<Integer> primes = new ArrayList<>();

        for (int i = 2; i <= n; ++i) {
            if (isComposite[i] == 0) {
                primes.add(i);
            }
            for (int p : primes) {
                long v = (long) i * p;
                if (v > n) {
                    break;
                }
                isComposite[(int) v] = 1;
                if (i % p == 0) {
                    break;
                }
            }
        }

        return primes;
    }

    static int inverseMod10(int p) {
        int a = 10;
        int b = p;
        int x0 = 1;
        int x1 = 0;

        while (b != 0) {
            int q = a / b;
            int na = b;
            int nb = a - q * b;
            a = na;
            b = nb;

            int nx = x1;
            int ny = x0 - q * x1;
            x0 = nx;
            x1 = ny;
        }

        int inv = x0 % p;
        if (inv < 0) {
            inv += p;
        }
        return inv;
    }

    public static String solve() {
        int primeLimit = 10000000;
        List<Integer> primes = primesUpTo(primeLimit - 1);

        long sum = 0;
        for (int p : primes) {
            if (p == 2 || p == 5) {
                continue;
            }
            sum += inverseMod10(p);
        }

        return String.valueOf(sum);
    }

    public static void main(String[] args) {
        System.out.println(solve());
    }
}
