#include"bits/stdc++.h"
using namespace std;
int n,m,k,b1,b2,s=114514,a[11],b[101],c[2][11],d[11],buf[101];
bool judge()
{
for (int i=1;i<=101;i++)
{
if (buf[i]>b[i])
{
return 0;
}
}
return 1;
}
void dfs (int dep,int ans)
{
if (dep==m)
{
if (ans<s)
{
if (judge()==1)
{
s=ans;
}
}
return;
}
dfs((dep+1),ans);
for (int i=c[1][dep];i<=c[2][dep];i++)
{
b[i]+=d[dep];
}
dfs((dep+1),(ans+a[dep]));
for (int i=c[1][dep];i<=c[2][dep];i++)
{
b[i]-=d[dep];
}
return;
}
int main()
{
cin>>n>>m;
memset(b,0,sizeof(b));
memset(buf,0,sizeof(buf));
for (int i=1;i<=n;i++)
{
cin>>b1>>b2;
cin>>k;
for (int o=b1;o<=b2;o++)
{
buf[o]+=k;
}
}
for (int i=1;i<=m;i++)
{
cin>>c[1][i]>>c[2][i];
cin>>d[i]>>a[i];
}
dfs(m,0);
cout<<s;
return 0;
}