108D: თამაშების დეველოპერი თამთა

დროის ლიმიტი: 2 წმ

მეხსიერების ლიმიტი: 128 მეგაბაიტი

შემავალი მონაცემები: stdin

გამომავალი მონაცემები: stdout


თამთამ გრაფიკული პროგრამირების სწავლა დაიწყო. დღეს მან პირველი ბრძანება ისწავლა. მისი ეკრანი წარმოადგენს NxM-ზე შავ-თეთრი პიქსელების ცხრილს(grid), სადაც თითოეული პიქსელი ან ანთებულია, ან ჩამქრალი. თავიდან ყველა პიქსელი ანთებულია. მან ისწავლა ფუნქცია სახელად flip(x0,x1,y0,y1) რომელსაც გადაეცემა მართკუთხედის კოორდინატები. ფუნქციის შედეგად ამ მართკუთხეში, ჩარჩოს ჩათვლით, ყველა პიქსელი შეიცვლის მდგომარეობას: თუ ანთებული იყო ჩაქრება, თუ ჩამქრალი - აინთება. თამთამ ზედიზედ ბევრჯერ გამოიყენა ეს ფუნქცია და აინტერესებს, საბოლოოდ, რამდენი პიქსელი დარჩა ანთებული. დაეხმარეთ მას ანთებული პიქსელების რაოდენობის დათვლაში.

შემომავალი მონაცემები: პირველი ხაზი შეიცავს სამ რიცხვს W, H, Q რომლებიც შესაბამისად აღნიშნავენ ეკრანის სიგანეს, ეკრანის სიმაღლეს და ფუნქციის გამოძახების რაოდენობას. (1<=W<=10^9; 1<=H<=10^9; 1<=Q<=10^5). შემდეგი Q ხაზი შეიცავს 4 რიცხვს: X0, X1, Y0, Y1 რაც აღნიშნავს flip-ისთვის გადაცემული მართკუთხედის კოორდინატებს. თითო ქვერის შედეგად მდგომარეობას შეიცვლის ყველა პიქსელი რომლის x, y კოორდინატები აკმაყოფილებს პირობას: X0<=x<=X1 და Y0<=y<=Y1. (1<=X0, X1<=W; 1<=Y0, Y1<=H)

გამომავალი მონაცემები: გამოიტანეთ ერთი რიცხვი: ანთებული პიქსელების რაოდენობა. (დასაწყისში ყველა პიქსელი ანთებულია!)


მაგალითები

შესატანი მონაცემები

4 5 3 1 3 2 5 2 4 3 4 3 3 1 5

გამოსატანი მონაცემები

9

შენიშვნა

მაგალითის ახსნა:

####     ####     ####      ##.# 
####     ...#     ...#     ..##
#### --> ...# --> .##. --> .#..
####     ...#     .##.     .#..
####     ...#     ...#     ..##