Given is a string S consisting of digits from `1` through `9`.

Find the number of pairs of integers (i,j) (1 ≤ i ≤ j ≤ |S|) that satisfy the following condition:

Condition: In base ten, the i-th through j-th characters of S form an integer that is a multiple of 2019.

Constraints

* 1 ≤ |S| ≤ 200000
* S is a string consisting of digits from `1` through `9`.

Input

Input is given from Standard Input in the following format:


S


Output

Print the number of pairs of integers (i,j) (1 ≤ i ≤ j ≤ |S|) that satisfy the condition.

Examples

Input

1817181712114


Output

3


Input

14282668646


Output

2


Input

2119


Output

0


import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);

		String str = sc.next();
		char[] input = str.toCharArray();
		int n = str.length();
		int p = 2019;

		int modCount[] = new int[2019];
		int[] pCount = new int[10001];

		long tmp = 0;
		int times = 1;
		long result = 0;

		for(int j = n - 1; j >= 0; j--){
			tmp += (input[j] - '0') * times;

			int mod = (int)(tmp % p);

			result += pCount[mod];

			if(mod == 0){
				result++;
			}


			pCount[mod]++;

			times *= 10;
			//オーバーフロー対策（ただしこれはpが2や5だと使えない）
			times %= p;
		}

		System.out.println(result);
	}
}
