#include <bits/stdc++.h>
#define lli long long int
using namespace std;
#define mod 1000000007
#define MOD 1000000037
#define mod1 998244353
#define fastio ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); 
#define INF 1e18

int main()
{
    string s;
    cin >> s;
    int n=s.length(),p=2019;
    if(p==2)
    {
        lli ans=0;
        for(int i=s.length()-1;i>-1;i--)
        {
            int t=s[i]-'0';
            if(t%2==0)
                ans+=i+1;
        }
        cout << ans << endl;
    }
    else if(p==5)
    {
        lli ans=0;
        for(int i=s.length()-1;i>-1;i--)
        {
            int t=s[i]-'0';
            if(t%5==0)
                ans+=i+1;
        }
        cout << ans << endl;
    }
    else
    {
        int rarr[n];
        int t=s[n-1]-'0',prem=t%p,power=10;
        rarr[n-1]=prem;
        for(int i=s.length()-2;i>-1;i--)
        {
            t=s[i]-'0';
            prem=(power*t+prem)%p;
            rarr[i]=prem;
            power=(power*1LL*10)%p;
        }
        // for(int i=0;i<n;i++)
        //     cout << rarr[i] << " ";
        // cout << endl;
        int nnum[p];
        for(int i=0;i<p;i++)
            nnum[i]=0;
        nnum[rarr[0]]=1;
        lli ans=0;
        for(int i=1;i<n;i++)
        {
            ans+=nnum[rarr[i]];
            nnum[rarr[i]]+=1;
        }
        ans+=nnum[0];
        cout << ans << endl;
    }
}
