#include <bits/stdc++.h>
using namespace std;
using namespace std;
typedef long long ll;
typedef vector <int> vi;
typedef pair <int,int> pii;
typedef pair<ll,ll> pll;
typedef vector<ll> vll;
#define A first
#define B second
#define PB push_back
#define MP make_pair
#define all(v) v.begin(),v.end()
#define FAST ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0);

struct rez
{
    int x;
    int y;
    int krompir;
};

int main()
{

    FAST
    vector<rez> res;
    int n,m;
    cin>>n>>m;
    int a[n];
    int b[n];
    int c[m];
    int d[m];
    for(int i=0;i<n;i++) cin>>a[i]>>b[i];
    for(int i=0;i<m;i++) cin>>c[i]>>d[i];
    for(int i=0,j=0;i<n && j<m;i++,j++)
    {
        rez p;
        p.x=i+1;
        p.y=j+1;
        p.krompir=min(b[i],d[j]);
        res.PB(p);
    }
    int sum=0;
    for(int i=0;i<res.size();i++) sum+=res[i].krompir;
    cout<<sum<<endl<<res.size()<<endl;
    for(int i=0;i<res.size();i++) cout<<res[i].x<<" "<<res[i].y<<" "<<res[i].krompir<<endl;
    return 0;
}