package main import ( "bufio" "fmt" "os" "strconv" ) var sc = bufio.NewScanner(os.Stdin) func main() { sc.Split(bufio.ScanWords) n, k := nextInt(), nextInt() m, eria := make([][]int, 1001), make([][]int, 1502) for i := range m { m[i] = make([]int, 1001) } for i := range eria { eria[i] = make([]int, 1502) } for i := 0; i < n; i++ { x, y, hp := nextInt(), nextInt(), nextInt() m[y+500][x+500] = hp } for i := 0; i < k; i++ { x, y, w, h, d := nextInt()+500, nextInt()+500, nextInt(), nextInt(), nextInt() eria[y][x] += d eria[y+h+1][x+w+1] += d eria[y][x+w+1] -= d eria[y+h+1][x] -= d } for i, l := range eria { for j := range l[1:] { eria[i][j+1] += eria[i][j] } } for i, l := range eria[1:] { for j := range l { eria[i+1][j] += eria[i][j] } } total := 0 for i, l := range m { for j, v := range l { if eria[i][j] >= v { continue } total += v - eria[i][j] } } fmt.Println(total) } func nextLine() string { sc.Scan() return sc.Text() } func nextInt() int { i, _ := strconv.Atoi(nextLine()) return i }