import java.math.*;
import java.util.*;

import ru.ifmo.testlib.*;
import ru.ifmo.testlib.Outcome.Type;

public class Check implements Checker {
	final int MX = 1_000_000_000;

    @Override
    public Outcome test(InStream inf, InStream ouf, InStream ans) {
		int n = inf.nextInt();
		int a[] = new int[n + 2];
		for (int i = 1; i <= n; i++) {
		 	a[i] = inf.nextInt();
		}
		int b[] = new int[n + 2];
		for (int i = 0; i <= n + 1; i++) {
		 	b[i] = ouf.nextInt();
			if (b[i] < -MX || b[i] > MX) {
			 	return new Outcome(Type.WA, "b[" + Integer.toString(i) + "] is out of range");
			}
		}
		for (int i = 1; i <= n; i++) {
		 	if (a[i] != b[i - 1] + b[i] + b[i + 1]) {
		 	 	return new Outcome(Type.WA, "a[" + Integer.toString(i) + "] is incorrect");
			}
		}
		return new Outcome(Type.OK, "OK");
    }
}
