//NiceDuck
#include "bits/stdc++.h"
typedef long long ll;
using namespace std;
#define FILE "000"
#define foru(i,a,b) for(int i=(int)(a); i<=(int)(b); ++i)
#define ford(i,a,b) for(int i=(int)(a); i>=(int)(b); --i)
#define fastio ios_base::sync_with_stdio(0);cin.tie(0);
#define pb push_back
#define fi first
#define se second
#define pii pair<int,int>
#define pil pair<int,ll>
#define pli pair<ll,int>
#define MOD 1000000007
#define el "\n"

const int MAX=3e5+5,maxCord=1e6+6;
int n,m;
ll fw[maxCord],res[MAX];
struct Event
{
    int pos,type,val,idx;
    ll weight;
    bool operator <(const Event &other) const 
    {
        return (pos<other.pos) || (pos==other.pos && type<other.type);
    }
};
vector<Event> event;
void update(int pos, ll val)
{
    for(;pos<maxCord;pos+=(pos&(-pos))) fw[pos]+=val;
}
ll query(int pos)
{
    ll ans=0;
    for(;pos>=1;pos-=(pos&(-pos))) ans+=fw[pos];
    return ans;
}

void calc()
{
    sort(event.begin(),event.end());
    foru(i,0,event.size()-1)
    {
        Event e=event[i];
        if(e.type==0) update(e.val,e.weight);
        else 
        {
            res[e.idx]=query(1000000)-query(e.val-1);
        }
    }
    foru(i,1,m) cout<<res[i]<<el;
}

int main()
{
    fastio
    if(fopen(FILE ".inp","r"))
    {
        freopen(FILE ".inp","r",stdin);
        freopen(FILE ".out","w",stdout);
    }
    
    cin>>n;
    foru(i,1,n)
    {
        int l,r; ll c; cin>>l>>r>>c;
        event.pb({l,0,r,0,c});
    }
    cin>>m;
    foru(i,1,m)
    {
        int s,t; cin>>s>>t;
        event.pb({t,1,s,i,0});
    }
    calc();
    
    return 0;
}