#include<bits/stdc++.h>

using namespace std;

int main(){
    ios_base::sync_with_stdio(false);
    int n, m;
    cin >> n >> m;
    int zemljiste[n][m];
    pair<int, int> ogranicenja_n[n];
    pair<int, int> ogranicenja_m[m];
    for(int i = 0; i < n; i++){
    	for(int j = 0; j < m; j++){
    		zemljiste[i][j] = 0;
    	}
    }
    for(int i = 0; i < n; i++){
        int a, b;
        cin >> a >> b;
        ogranicenja_n[i] = make_pair(a, b);
    }
    int brojac = 0;
    int krompiri = 0;
    for(int i = 0; i < m; i++){
    	int c, d;
    	cin >> c >> d;
    	ogranicenja_m[i] = make_pair(c, d);
        for(int j = 0; j < n; j++){
            if(d < ogranicenja_n[j].first){
                zemljiste[j][i] = 0;
            }
            else{
            	if(ogranicenja_n[j].second >= ogranicenja_n[j].first &&
            	ogranicenja_m[i].second >= ogranicenja_m[i].first){
            		zemljiste[j][i] = min(d, ogranicenja_n[j].second);
                brojac++;
                krompiri += zemljiste[i][j];
                ogranicenja_n[j].second -= zemljiste[i][j];
                ogranicenja_m[j].second -= zemljiste[i][j];
            	}
            	else{
            		zemljiste[i][j] = 0;
            	}
            }
        }
    }
    cout << krompiri << '\n' << brojac << '\n'; 
    for(int i = 0; i < n; i++){
    	for(int j = 0; j < m; j++){
    		if(zemljiste[i][j] != 0){
    			cout << i + 1 << ' ' << j + 1 << " " << zemljiste[i][j] << '\n';
    		}
    	}
    }
}