Морж Aleksandr okeanda (x_A,y_A) nöqtəsində yerləşir. Onun ətrafında çoxlu buz parçaları var. O, (x_B,y_B) nöqtəsinə minimal sayda tullanışla çatmaq istəyir. Aleksandr maksimum dörd istiqamətdən birinə iki hüceyrə tullana bilər. Əgər o, (x,y) nöqtəsindədirsə, bir tullanışla o, aşağıdakı hüceyrələrdən birinə keçə bilər: (x+1,y), (x-1,y), (x,y+1), (x,y-1), (x+2,y), (x-2,y), (x,y+2), (x,y-2). Aleksandr yalnız buz parçası üzərində olan hüceyrəyə tullana bilər. Zəmanət verilir ki, (x_A,y_A) və (x_B,y_B) nöqtələri buz parçaları üzərindədir.
Birinci sətirdə dörd tam ədəd verilir - nöqtələrin koordinatları (x_A,y_A) və (x_B,y_B) (1 ≤ x_i,y_i ≤ 10^9). Buz parçalarının koordinatları seqmentlərlə veriləcək. İkinci sətirdə bu seqmentlərin sayı n (1 ≤ n ≤ 10^5) verilir. Növbəti n sətirin hər biri üç tam ədəd ehtiva edir: x (1 ≤ x ≤ 10^9), y_L və y_R (1 ≤ y_L≤y_R ≤ 10^9). Bu o deməkdir ki, koordinatları (x, y_i) (y_{L }≤ y_{i }≤ y_R) olan hüceyrələr buz parçaları üzərindədir. Belə hüceyrələrin ümumi sayı 10^5-dən çox olmayacaq.
Aleksandrın (x_A,y_A) nöqtəsindən (x_B,y_B) nöqtəsinə çatmaq üçün minimal tullanış sayı, ya da əgər bu mümkün deyilsə -1.
Nümunə 1