#include<stdio.h>
int n,k,q,ai;
long long x,a[5010],f[5010][5010],pt[5010],sum,inf=1e9+7;
int main()
{
    scanf("%d%d%d",&n,&k,&q);
    sum=0;
    for(int i=1;i<=n;i++)
    {
        scanf("%lld",&a[i]);
        pt[i]=0;
    }
    for(int i=1;i<=n;i++) f[i][0]=1;
    f[0][0]=f[n+1][0]=0;
    for(int j=1;j<=k;j++)
    {
        for(int i=1;i<=n;i++)
        {
            f[i][j]=(f[i-1][j-1]+f[i+1][j-1])%inf;
        }
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=0;j<=k;j++)
        {
            pt[i]=(pt[i]+f[i][j]*f[i][k-j]%inf)%inf;
        }
    }
    for(int i=1;i<=n;i++)
    {
       sum=(sum+a[i]*pt[i]%inf)%inf;
    }
    while(q--)
    {
        scanf("%d%lld",&ai,&x);
        sum=(sum+((x-a[ai])*pt[ai]%inf))%inf;
        a[ai]=x;
        if(sum>=0) printf("%lld\n",sum);
        else printf("%lld\n",sum+inf);
    }
}
