#include <bits/stdc++.h>
using namespace std;

using ll = long long;

const int N = 200005, SZ = 262144;
const ll INF = ll(1e18);

int n, q;
ll a[N], b[N];

struct Seg{
  ll d[2*SZ][2];
  void m(ll *a, ll *b, ll *r){
    ll c[2] = {-INF, -INF};
    for(int i = 0; i < 2; i++) for(int j = 0; j < 2; j++){
      c[i^j] = max(c[i^j], a[i] + b[j]);
    }
    r[0] = c[0];
    r[1] = c[1];
  }
  void u(int x, int a, int b){
    x += SZ;
    d[x][0] = a;
    d[x][1] = b;
    for(x /= 2; x; x /= 2) m(d[2*x], d[2*x+1], d[x]);
  }
  ll g(int s, int e){
    ll r[2] = {0, -INF};
    for(s += SZ, e += SZ; s <= e; s /= 2, e /= 2){
      if(s % 2 == 1) m(r, d[s++], r);
      if(e % 2 == 0) m(r, d[e--], r);
    }
    return r[0];
  }
} S;

int main(){
  ios_base::sync_with_stdio(0);
  cin.tie(0);

  cin >> n >> q;
  n *= 2;
  for(int i = 1; i <= n; i++) cin >> a[i];
  for(int i = 1; i <= n; i++) cin >> b[i];

  for(int i = 1; i <= n; i++) S.u(i, a[i], b[i]);

  for(; q--; ){
    int x;
    ll y, z;
    cin >> x >> y >> z;
    S.u(x, y, z);
    cout << S.d[1+SZ][0] + S.g(2, n - 1) + S.d[n+SZ][0] << '\n';
  }

  return 0;
}