#include<cstdio>
#include<iostream>
using namespace std;

int n,m;
long long s;

int main()
{
   int i,j;
   int p,v;
   int l,r,from,to;
   
   scanf("%d %d", &n, &m);
   
   if(n<=1000 && m<=1000)
   {
      int a[1005][1005];
         
      for(i=1;i<=m;i++) scanf("%d",&a[1][i]);
   
      for(i=2;i<=n;i++)
      {
         scanf("%d %d %d %d %d %d", &p, &l, &r, &v, &from, &to);
      
         l=(l+s)%m+1;
         r=(r+s)%m+1;
         from=(from+s)%m+1; //'í' v uslovieto
         to=(to+s)%m+1; //'j' v uslovieto
      
         s=0;
      
         for(j=1;j<=m;j++)
         {
            a[i][j]=a[p][j];
            if(l<=j && j<=r) a[i][j]+=v;
            if(from<=j && j<=to) s+=a[i][j];
         }
      
         printf("%lld\n",s);
      }
   }
   
   else
   {
      long long a[100005];
      
      for(i=1;i<=m;i++) scanf("%d",&a[i]);
      
      for(i=2;i<=n;i++)
      {
         scanf("%d %d %d %d %d %d", &p, &l, &r, &v, &from, &to);
         
         l=(l+s)%m+1;
         r=(r+s)%m+1;
         from=(from+s)%m+1; //'í' v uslovieto
         to=(to+s)%m+1; //'j' v uslovieto
      
         s=0;
         
         for(j=l;j<=r;j++) a[j]+=v;
         for(j=from;j<=to;j++) s+=a[j];
      
         printf("%lld\n",s);
      }
   }
   
   return 0;
}
