diff --git a/abi_gki_aarch64.xml b/abi_gki_aarch64.xml index 5ecac553483d..2b1888447b14 100644 --- a/abi_gki_aarch64.xml +++ b/abi_gki_aarch64.xml @@ -1215,7 +1215,7 @@ - + @@ -1235,7 +1235,7 @@ - + @@ -26166,6 +26166,25 @@ + + + + + + + + + + + + + + + + + + + @@ -26177,7 +26196,7 @@ - + @@ -26188,7 +26207,7 @@ - + @@ -26290,7 +26309,7 @@ - + @@ -26304,13 +26323,13 @@ - + - + @@ -26324,7 +26343,7 @@ - + @@ -26341,7 +26360,7 @@ - + @@ -26350,7 +26369,7 @@ - + @@ -26393,7 +26412,7 @@ - + @@ -26402,12 +26421,12 @@ - + - + - + @@ -26416,17 +26435,17 @@ - + - + - - - + + + @@ -26443,7 +26462,7 @@ - + @@ -26586,7 +26605,7 @@ - + @@ -26601,7 +26620,7 @@ - + @@ -26624,21 +26643,21 @@ - + - + - + - + @@ -26646,7 +26665,7 @@ - + @@ -26655,7 +26674,7 @@ - + @@ -26696,15 +26715,15 @@ - + - + - + @@ -26713,7 +26732,7 @@ - + @@ -26734,15 +26753,15 @@ - + - + - + @@ -26769,7 +26788,7 @@ - + @@ -26777,7 +26796,7 @@ - + @@ -26790,9 +26809,9 @@ - + - + @@ -26803,7 +26822,7 @@ - + @@ -26833,13 +26852,13 @@ - + - + @@ -26878,7 +26897,7 @@ - + @@ -27076,13 +27095,13 @@ - + - + - + @@ -27090,12 +27109,12 @@ - + - + - + @@ -27107,36 +27126,36 @@ - + - + - + - + - + - + - + - + - + - + @@ -27150,7 +27169,7 @@ - + @@ -27186,7 +27205,7 @@ - + @@ -27212,18 +27231,18 @@ - + - + - + - + - + @@ -27237,7 +27256,7 @@ - + @@ -27266,17 +27285,17 @@ - + - + - + - + - + @@ -27288,7 +27307,7 @@ - + @@ -27300,19 +27319,19 @@ - + - + - + - + @@ -27339,7 +27358,7 @@ - + @@ -27350,29 +27369,29 @@ - + - + - + - + - + - + - + @@ -27390,9 +27409,9 @@ - + - + @@ -27407,7 +27426,7 @@ - + @@ -27424,13 +27443,13 @@ - + - + @@ -27444,7 +27463,7 @@ - + @@ -27468,10 +27487,10 @@ - + - + @@ -27486,10 +27505,10 @@ - + - + @@ -27507,7 +27526,7 @@ - + @@ -27522,7 +27541,7 @@ - + @@ -27533,7 +27552,7 @@ - + @@ -27551,7 +27570,7 @@ - + @@ -27578,7 +27597,7 @@ - + @@ -27599,48 +27618,48 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -27690,28 +27709,28 @@ - + - + - + - + - + - + - + @@ -27743,46 +27762,46 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -27802,97 +27821,97 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -27901,18 +27920,18 @@ - + - + - + - + @@ -27969,7 +27988,7 @@ - + @@ -28010,10 +28029,10 @@ - + - + @@ -28037,13 +28056,13 @@ - + - + - + @@ -28064,59 +28083,59 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -28130,7 +28149,7 @@ - + @@ -28145,7 +28164,7 @@ - + @@ -28156,20 +28175,20 @@ - + - + - + - + - + @@ -28189,7 +28208,7 @@ - + @@ -28197,7 +28216,7 @@ - + @@ -28217,40 +28236,40 @@ - + - + - + - + - + - + - + - + - + @@ -28262,7 +28281,7 @@ - + @@ -28280,13 +28299,13 @@ - + - + @@ -28312,16 +28331,16 @@ - + - + - + - + @@ -28375,7 +28394,7 @@ - + @@ -28386,7 +28405,7 @@ - + @@ -28433,12 +28452,12 @@ - + - + - + @@ -28516,7 +28535,7 @@ - + @@ -28542,7 +28561,7 @@ - + @@ -28586,7 +28605,7 @@ - + @@ -28615,13 +28634,13 @@ - + - + - + @@ -28629,19 +28648,19 @@ - + - + - + - + - + @@ -28652,84 +28671,84 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -28749,7 +28768,7 @@ - + @@ -28769,7 +28788,7 @@ - + @@ -28795,10 +28814,10 @@ - + - + @@ -28812,13 +28831,13 @@ - + - + - + @@ -28826,7 +28845,7 @@ - + @@ -28840,7 +28859,7 @@ - + @@ -28871,7 +28890,7 @@ - + @@ -28904,13 +28923,13 @@ - + - + @@ -28919,9 +28938,9 @@ - + - + @@ -28936,7 +28955,7 @@ - + @@ -28944,10 +28963,10 @@ - + - + @@ -28955,51 +28974,51 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -29010,19 +29029,19 @@ - + - + - + - + - + @@ -29034,10 +29053,10 @@ - + - + @@ -29066,16 +29085,16 @@ - + - + - + @@ -29083,7 +29102,7 @@ - + @@ -29092,16 +29111,16 @@ - + - + - + @@ -29112,98 +29131,98 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -29227,7 +29246,7 @@ - + @@ -29238,7 +29257,7 @@ - + @@ -29253,27 +29272,27 @@ - + - + - + - + - + - + - + - + @@ -29321,7 +29340,7 @@ - + @@ -29335,277 +29354,277 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - + + + + + + + + + + + - - + + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -29620,190 +29639,190 @@ - + - + - - - - - - - + - + + + + + + + - + - + - + - + - + - - - - - - + + + + + + - + - + - + - + - - - - - - - - - - - - - + + + - - - + + + + + + + + + + + + + - - - - - - - - - - + + - + - - - - + - - + - + - - + + - + + + + + + + + + + + + + - + - + - + - + - + - + - + - + @@ -29812,111 +29831,111 @@ - - - - - - - - - - - - - - - - - - - - + + + - - - + - + + + - - - + + + + + + + + + + + + + + + + + + + + - + - + - + - - - + + + - - - - - - - - - - - - + + + + + + + + + + + + - + - + @@ -29924,116 +29943,116 @@ - + - + - + - + - + - + - + - - - - - - - - - - - - - - + + - - + + + + + + + + + + + + + + - + - + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -30048,371 +30067,371 @@ - + - - - - - - - - - - - - - - + - - + + + + - + + + - - + + - - + - + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - + - + - + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - + + + - + - + - + - - + + - + - - + + - - + + - + - + - + - + - + - - - - - - - - - - - + - + - + + + - - + - + - - + + - - + + - - + + - - + - + + + + + + + + + + + - + - + - - - - - - - - - - + - - + + + + + + + + + + + - + - - - - - - - - - - - + - - + - - - - - - - - - + + + + + + + + + + + - - + - - + + - - - + + - - + + - + + + + + + + + + + + + - + - + - + @@ -30442,7 +30461,7 @@ - + @@ -30457,58 +30476,58 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -30519,7 +30538,7 @@ - + @@ -30564,13 +30583,13 @@ - + - + - + @@ -30582,10 +30601,10 @@ - + - + @@ -30600,19 +30619,19 @@ - + - + - + - + - + @@ -30642,13 +30661,13 @@ - + - + @@ -30662,7 +30681,7 @@ - + @@ -30679,24 +30698,24 @@ - + - + - + - + - + - + - + @@ -30711,13 +30730,13 @@ - + - + - + @@ -30728,16 +30747,16 @@ - + - + - + - + @@ -30745,7 +30764,7 @@ - + @@ -30753,32 +30772,32 @@ - + - + - + - + - + - + - + - + - + @@ -30792,7 +30811,7 @@ - + @@ -30800,10 +30819,10 @@ - + - + @@ -30820,16 +30839,16 @@ - + - + - + @@ -30849,7 +30868,7 @@ - + @@ -30857,7 +30876,7 @@ - + @@ -30877,12 +30896,12 @@ - + - + - + @@ -30891,7 +30910,7 @@ - + @@ -30911,7 +30930,7 @@ - + @@ -30922,10 +30941,10 @@ - + - + @@ -30934,30 +30953,30 @@ - + - + - + - + - + - + - + - + @@ -30969,7 +30988,7 @@ - + @@ -30978,7 +30997,7 @@ - + @@ -30989,7 +31008,7 @@ - + @@ -31006,88 +31025,88 @@ - + - + - + - + - + - + - + - + - + - + - - - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + @@ -31096,104 +31115,104 @@ - + - + - + - - - - - - - - - - - - - + - - + + + - - + + + - - + + - - - + + - - - + - - - + + + - + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - + - + - - - + + - + + + + + + + + + + + @@ -31201,15 +31220,15 @@ - + - + - + @@ -31218,16 +31237,16 @@ - + - + - + - + @@ -31257,7 +31276,7 @@ - + @@ -31269,7 +31288,7 @@ - + @@ -31284,22 +31303,22 @@ - + - + - + - + @@ -31314,67 +31333,67 @@ - - - - - - - - + + + + + + + + - + - + - - - - - - - - - - - + + - - - + + + + + + - + + + + + + + - - - + + + - + - - + + - + - + @@ -31387,41 +31406,41 @@ - - + + - + - + - + - + - + - + - + - + @@ -31433,17 +31452,17 @@ - + - + - + @@ -31454,20 +31473,20 @@ - + - + - - + + @@ -31478,7 +31497,7 @@ - + @@ -31489,7 +31508,7 @@ - + @@ -31503,29 +31522,28 @@ - + - + - - - + + - - + + - - - + + + @@ -31536,115 +31554,116 @@ + - - - - - - + - + + + + + + - - - + + + - - + + - - + + - - + + - - - - + + + + - - - - - - + - + + + + + + - - + + - - + + - + - - + + - + - - - - - - + - - + + - + + + + + + @@ -31659,7 +31678,7 @@ - + @@ -31667,37 +31686,37 @@ - + - - + + - + - + - - + + - + @@ -31717,18 +31736,18 @@ - + - + - + @@ -31736,34 +31755,34 @@ - + - + - + - + - + - + - + - + - + - + @@ -31777,13 +31796,13 @@ - - - - + + - - + + + + @@ -31823,42 +31842,42 @@ - - - - - - - - - - - + - - + + - + + + + + + + + + + + - - + + - + - + @@ -31875,7 +31894,7 @@ - + @@ -31884,13 +31903,13 @@ - + - + @@ -31903,15 +31922,15 @@ - + - + - + - + @@ -31932,7 +31951,7 @@ - + @@ -31953,16 +31972,16 @@ - + - + - + @@ -31977,7 +31996,7 @@ - + @@ -31989,7 +32008,7 @@ - + @@ -32003,7 +32022,7 @@ - + @@ -32015,13 +32034,13 @@ - + - + @@ -32045,13 +32064,13 @@ - + - + @@ -32138,12 +32157,12 @@ - + - + @@ -32152,7 +32171,7 @@ - + @@ -32170,27 +32189,27 @@ - + - + - + - + - + @@ -32228,16 +32247,16 @@ - + - + - + - + @@ -32282,7 +32301,7 @@ - + @@ -32302,8 +32321,8 @@ - - + + @@ -32311,113 +32330,113 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -32431,9 +32450,9 @@ - + - + @@ -32447,10 +32466,10 @@ - + - + @@ -32467,154 +32486,154 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - - - - - - - - - - - - + + + - - + - - - + + - + - - - - + + + - - - - - - + + + + + + + + - + + + + + + + + + + + - + - + - - - - - - - - - - - + + + + + + + + + + + @@ -32623,13 +32642,13 @@ - + - + - + @@ -32653,9 +32672,9 @@ - + - + @@ -32676,38 +32695,38 @@ - + - + - + - + - + - + - - - - - - + + + + + + - + - + @@ -32716,22 +32735,22 @@ - + - - + + - - + + - - + + @@ -32742,7 +32761,7 @@ - + @@ -32775,10 +32794,10 @@ - + - + @@ -32799,7 +32818,7 @@ - + @@ -32811,7 +32830,7 @@ - + @@ -32823,45 +32842,45 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -32869,10 +32888,10 @@ - + - + @@ -32889,50 +32908,40 @@ - - - - - + + + - - + + - - - - - - - + + + + + + + + + - + - + - + - - - - - - - - - - - + @@ -32942,33 +32951,51 @@ - + - + - + + + + + + + + + + + - + - + + + + + + + + + @@ -32979,10 +33006,10 @@ - + - + @@ -32994,14 +33021,14 @@ - + - + @@ -33030,50 +33057,50 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -33097,7 +33124,7 @@ - + @@ -33106,7 +33133,7 @@ - + @@ -33118,85 +33145,85 @@ - - - - - - - - - - + + + + + + + + + + - + - + - - + + - + - + - + - - + + - - + + - - + + - + - + - + - - + + - + @@ -33204,10 +33231,10 @@ - + - + @@ -33216,7 +33243,7 @@ - + @@ -33224,130 +33251,113 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - + @@ -33357,53 +33367,70 @@ - - - + + + - - + + + + - - - + + + + - - - + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + @@ -33463,19 +33490,19 @@ - + - + - + - + - + @@ -33484,7 +33511,7 @@ - + @@ -33495,52 +33522,52 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -33573,13 +33600,13 @@ - + - + - + @@ -33588,10 +33615,10 @@ - + - + @@ -33606,7 +33633,7 @@ - + @@ -33633,25 +33660,25 @@ - + - + - + - + @@ -33662,18 +33689,18 @@ - + - + - + - + - + @@ -33682,10 +33709,10 @@ - + - + @@ -33693,13 +33720,13 @@ - + - + @@ -33710,7 +33737,7 @@ - + @@ -33745,27 +33772,27 @@ - + - + - + - + - + - + @@ -33780,83 +33807,83 @@ - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -33888,7 +33915,7 @@ - + @@ -33912,15 +33939,15 @@ - + - + - + - + @@ -33929,16 +33956,16 @@ - + - + - + - + @@ -33953,10 +33980,10 @@ - + - + @@ -33977,27 +34004,27 @@ - + - + - + - + - + - + @@ -34006,7 +34033,7 @@ - + @@ -34015,7 +34042,7 @@ - + @@ -34029,10 +34056,10 @@ - + - + @@ -34041,16 +34068,16 @@ - + - + - + - + @@ -34074,85 +34101,85 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + @@ -34163,13 +34190,13 @@ - - + + - + @@ -34179,46 +34206,46 @@ - + - + - + - + - + - + - + - + - + - + - - + + @@ -34229,24 +34256,24 @@ - - - + + + - + - + - + @@ -34269,15 +34296,15 @@ - + - + - + @@ -34285,7 +34312,7 @@ - + @@ -34293,7 +34320,7 @@ - + @@ -34314,10 +34341,10 @@ - + - + @@ -34331,9 +34358,9 @@ - + - + @@ -34342,10 +34369,10 @@ - + - + @@ -34366,7 +34393,7 @@ - + @@ -34378,27 +34405,27 @@ - + - + - + - + - + - + @@ -34410,7 +34437,7 @@ - + @@ -34418,7 +34445,7 @@ - + @@ -34426,15 +34453,15 @@ - + - + - + - + @@ -34445,86 +34472,86 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -34535,308 +34562,308 @@ - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + - + - - + + + - + + - - + - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - + - - - - + + + + - + + - + + + + - - + + + - + - + - - + + - - + - + + + + + + + + + + + + + + + - - + + - + - - + + - - - + + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - + - - + - + - - - + - - + + - - - + + - - + + + - - - + + - + + + + + + + + + + + + + + + + + + - + - + - + - - - - - - + + + + + + - + - + - + @@ -34848,25 +34875,25 @@ - + - + - + - + - + @@ -34923,25 +34950,25 @@ - + - + - + - + - + - + - + @@ -34950,7 +34977,7 @@ - + @@ -34973,13 +35000,13 @@ - + - + - + @@ -35036,13 +35063,13 @@ - + - + - + @@ -35059,8 +35086,8 @@ - - + + @@ -35074,7 +35101,7 @@ - + @@ -35085,140 +35112,140 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -35229,52 +35256,52 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -35286,40 +35313,40 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -35327,42 +35354,42 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -35370,7 +35397,7 @@ - + @@ -35382,39 +35409,39 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -35434,15 +35461,15 @@ - + - + - + @@ -35459,15 +35486,15 @@ - + - + - + - + @@ -35475,13 +35502,13 @@ - + - + @@ -35507,15 +35534,15 @@ - + - + - + @@ -35526,169 +35553,169 @@ - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - + - + - - - - - - - - - - - - - - - + + - - + - - + + - + + + + + + + + + + + + + + + - - + + - - + + @@ -35696,193 +35723,193 @@ - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + - - - - + + - - - - - + + - - - + + - + + + + + - - + + + + + + - - + + + + - - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - - + + - - + + - - + + + - - + + + + + + + + + - - + + - - - - - - - + + - - + - - + - - + + - + + + + + + + + + + + + + + + + - + - - - + + + - + - + - + - + - + @@ -35893,10 +35920,10 @@ - + - + @@ -35905,7 +35932,7 @@ - + @@ -35914,37 +35941,37 @@ - + - + - + - + - + - + - + - + - + - + @@ -36034,22 +36061,22 @@ - + - + - + - + - + @@ -36058,7 +36085,7 @@ - + @@ -36070,7 +36097,7 @@ - + @@ -36080,9 +36107,9 @@ - + - + @@ -36103,7 +36130,7 @@ - + @@ -36147,13 +36174,13 @@ - + - + - + @@ -36168,20 +36195,20 @@ - + - + - + - + - + @@ -36190,7 +36217,7 @@ - + @@ -36205,7 +36232,7 @@ - + @@ -36231,7 +36258,7 @@ - + @@ -36248,7 +36275,7 @@ - + @@ -36262,7 +36289,7 @@ - + @@ -36306,27 +36333,27 @@ - + - + - + - + - + - + - + - + @@ -36340,7 +36367,7 @@ - + @@ -36354,7 +36381,7 @@ - + @@ -36380,7 +36407,7 @@ - + @@ -36403,10 +36430,10 @@ - + - + @@ -36423,7 +36450,7 @@ - + @@ -36434,21 +36461,21 @@ - + - + - + - + - + @@ -36457,7 +36484,7 @@ - + @@ -36483,7 +36510,7 @@ - + @@ -36509,24 +36536,24 @@ - + - + - + - + - + @@ -36562,9 +36589,9 @@ - + - + @@ -36573,13 +36600,13 @@ - + - + @@ -36608,14 +36635,14 @@ - + - + @@ -36623,16 +36650,16 @@ - + - + - + @@ -36640,7 +36667,7 @@ - + @@ -36654,40 +36681,40 @@ - - - - - - - - - - - - - - - - + + - - + + + + + + + + + + + + + + + + - - + + - + - - + + @@ -36695,13 +36722,13 @@ - + - + @@ -36728,48 +36755,48 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -36804,7 +36831,7 @@ - + @@ -36819,7 +36846,7 @@ - + @@ -36839,12 +36866,12 @@ - + - + - + @@ -36856,33 +36883,33 @@ - + - + - + - + - + - + - + - + - + @@ -36897,7 +36924,7 @@ - + @@ -36914,45 +36941,45 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -36960,169 +36987,169 @@ - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - - + + - + - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - + + + + + + + + + + + + - - + - + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - + + + - - - - - - - - - - + + - + - - + + + + + + + + + + + + + + + - + - + - + - + @@ -37130,9 +37157,9 @@ - + - + @@ -37149,9 +37176,9 @@ - + - + @@ -37166,10 +37193,10 @@ - + - + @@ -37187,21 +37214,21 @@ - + - + - + - + @@ -37254,8 +37281,8 @@ - - + + @@ -37268,7 +37295,7 @@ - + @@ -37282,55 +37309,55 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -37345,8 +37372,8 @@ - - + + @@ -37408,17 +37435,17 @@ - + - - + + - + @@ -37429,16 +37456,16 @@ - - - - - + + + + + - - + + @@ -37450,17 +37477,17 @@ - + - + - + @@ -37491,23 +37518,23 @@ - + - + - + - + @@ -37515,10 +37542,10 @@ - + - + @@ -37562,7 +37589,7 @@ - + @@ -37570,9 +37597,9 @@ - - - + + + @@ -37589,7 +37616,7 @@ - + @@ -37682,7 +37709,7 @@ - + @@ -37693,7 +37720,7 @@ - + @@ -37708,7 +37735,7 @@ - + @@ -37719,25 +37746,25 @@ - - - + + + - - + + - + - + - - + + @@ -37745,13 +37772,67 @@ - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -37765,15 +37846,15 @@ - + - + - + @@ -37784,7 +37865,7 @@ - + @@ -37792,40 +37873,40 @@ - + - + - + - + - + - - + + - + - + - + - + - + @@ -37839,7 +37920,7 @@ - + @@ -37859,27 +37940,27 @@ - - - - - - - - + + + - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -37888,106 +37969,106 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + @@ -38034,7 +38115,7 @@ - + @@ -38190,7 +38271,7 @@ - + @@ -38198,50 +38279,50 @@ - + - + - - + + - + - + - + - + - + - + - + @@ -38249,7 +38330,7 @@ - + @@ -38258,10 +38339,10 @@ - + - + @@ -38282,8 +38363,8 @@ - - + + @@ -38294,14 +38375,14 @@ - + - - + + @@ -38323,11 +38404,11 @@ - - + + - + @@ -38335,7 +38416,7 @@ - + @@ -38358,7 +38439,7 @@ - + @@ -38379,7 +38460,7 @@ - + @@ -38406,15 +38487,15 @@ - + - + - + @@ -38434,43 +38515,43 @@ - - - - - - + + + + + + - + - + - + - + - - - + + + - + - + - - + + - - + + @@ -38488,8 +38569,8 @@ - - + + @@ -38503,15 +38584,15 @@ - - - + + + - + @@ -38541,17 +38622,17 @@ - - + + - + - + @@ -38563,14 +38644,14 @@ - - - + + + - + @@ -38596,26 +38677,26 @@ - + - - - - - + + + + + - + - + @@ -38632,18 +38713,18 @@ - + - + - + @@ -38651,13 +38732,13 @@ - + - + @@ -38665,141 +38746,141 @@ - - - - - - - - + + + + + + + + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -38839,30 +38920,30 @@ - + - + - + - - - + + + - + - + - - + + @@ -38876,10 +38957,10 @@ - + - + @@ -38887,7 +38968,7 @@ - + @@ -38901,8 +38982,8 @@ - - + + @@ -38938,41 +39019,41 @@ - - + + - - - - - - - + + + + + + + - + - + - - + + - - + + - + - + @@ -38980,7 +39061,7 @@ - + @@ -39013,7 +39094,7 @@ - + @@ -39058,10 +39139,10 @@ - + - + @@ -39085,7 +39166,7 @@ - + @@ -39124,7 +39205,7 @@ - + @@ -39151,16 +39232,16 @@ - + - + - + @@ -39177,15 +39258,15 @@ - + - + - + @@ -39198,7 +39279,7 @@ - + @@ -39215,8 +39296,8 @@ - - + + @@ -39224,7 +39305,7 @@ - + @@ -39248,7 +39329,7 @@ - + @@ -39256,7 +39337,7 @@ - + @@ -39414,7 +39495,7 @@ - + @@ -39446,7 +39527,7 @@ - + @@ -39482,12 +39563,12 @@ - + - + - + @@ -39505,7 +39586,7 @@ - + @@ -39534,13 +39615,13 @@ - + - + - + @@ -39561,16 +39642,16 @@ - + - + - + - + @@ -39581,7 +39662,7 @@ - + @@ -39592,10 +39673,10 @@ - + - + @@ -39606,15 +39687,15 @@ - + - + - + @@ -39622,7 +39703,7 @@ - + @@ -39633,20 +39714,20 @@ - + - + - + - + - + @@ -39655,7 +39736,7 @@ - + @@ -39666,15 +39747,15 @@ - + - + - + - + @@ -39800,10 +39881,10 @@ - + - + @@ -39812,9 +39893,9 @@ - + - + @@ -39823,7 +39904,7 @@ - + @@ -39832,7 +39913,7 @@ - + @@ -39858,7 +39939,7 @@ - + @@ -39866,7 +39947,7 @@ - + @@ -39877,23 +39958,23 @@ - + - + - + - - - + + + @@ -39916,16 +39997,16 @@ - + - + - + - + @@ -39945,22 +40026,22 @@ - + - + - + - + - + @@ -39977,7 +40058,7 @@ - + @@ -39991,7 +40072,7 @@ - + @@ -40003,39 +40084,39 @@ - + - + - - + + - + - + - + - + - + - + - + @@ -40043,8 +40124,8 @@ - - + + @@ -40052,70 +40133,70 @@ - + - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + @@ -40138,7 +40219,7 @@ - + @@ -40147,33 +40228,33 @@ - + - - + + - - - + + + - - + + - + - - + + - + @@ -40181,124 +40262,124 @@ - - + + - - + + - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + - + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - + - + @@ -40312,204 +40393,208 @@ - + - + - - + + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - + - + - + + + + + - + @@ -40517,11 +40602,11 @@ - + - + @@ -40531,31 +40616,31 @@ - + - + - + - + - + - + - + @@ -40563,10 +40648,10 @@ - + - + @@ -40583,7 +40668,7 @@ - + @@ -40594,19 +40679,19 @@ - + - + - + - + @@ -40630,13 +40715,13 @@ - + - + - + @@ -40654,7 +40739,7 @@ - + @@ -40684,7 +40769,7 @@ - + @@ -40723,10 +40808,10 @@ - + - + @@ -40734,7 +40819,7 @@ - + @@ -40764,7 +40849,7 @@ - + @@ -40773,22 +40858,22 @@ - + - + - + - + - + @@ -40814,50 +40899,50 @@ - + - + - + - + - + - + - + - + - + - - - - + + + + - + - + - + - + - + @@ -40911,9 +40996,9 @@ - + - + @@ -40925,10 +41010,10 @@ - + - + @@ -40937,12 +41022,12 @@ - + - + - + @@ -40963,143 +41048,143 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -41113,7 +41198,7 @@ - + @@ -41121,13 +41206,13 @@ - + - + @@ -41144,15 +41229,15 @@ - + - + - + - + @@ -41166,46 +41251,46 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -41214,19 +41299,19 @@ - - + + - + - + @@ -41256,7 +41341,7 @@ - + @@ -41268,7 +41353,7 @@ - + @@ -41279,13 +41364,13 @@ - + - + - + @@ -41293,13 +41378,13 @@ - + - + @@ -41307,47 +41392,47 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -41355,7 +41440,7 @@ - + @@ -41384,17 +41469,17 @@ - + - + - + - - - + + + @@ -41408,20 +41493,20 @@ - + - + - + - + - + @@ -41433,7 +41518,7 @@ - + @@ -41441,18 +41526,18 @@ - + - + - + - + @@ -41460,17 +41545,17 @@ - + - + - + @@ -41478,7 +41563,7 @@ - + @@ -41486,7 +41571,7 @@ - + @@ -41521,13 +41606,13 @@ - + - + @@ -41539,16 +41624,16 @@ - + - + - + - + @@ -41560,16 +41645,16 @@ - + - + - + - + @@ -41583,7 +41668,7 @@ - + @@ -41592,13 +41677,13 @@ - + - + - + @@ -41616,25 +41701,25 @@ - + - + - + - + - + @@ -41642,13 +41727,13 @@ - + - + - + @@ -41677,16 +41762,16 @@ - + - + - + @@ -41695,26 +41780,26 @@ - + - + - + - + - + - + - + - + @@ -41723,50 +41808,50 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -41790,10 +41875,10 @@ - + - + @@ -41817,13 +41902,13 @@ - + - + @@ -41844,7 +41929,7 @@ - + @@ -41859,10 +41944,10 @@ - + - + @@ -41873,7 +41958,7 @@ - + @@ -41900,7 +41985,7 @@ - + @@ -41936,8 +42021,8 @@ - - + + @@ -41945,7 +42030,7 @@ - + @@ -41954,7 +42039,7 @@ - + @@ -41965,7 +42050,7 @@ - + @@ -41977,27 +42062,27 @@ - + - + - + - + - + - + - + @@ -42009,7 +42094,7 @@ - + @@ -42039,10 +42124,10 @@ - + - + @@ -42057,7 +42142,7 @@ - + @@ -42066,19 +42151,19 @@ - + - + - + - + - + @@ -42093,7 +42178,7 @@ - + @@ -42105,7 +42190,7 @@ - + @@ -42114,10 +42199,10 @@ - + - + @@ -42125,7 +42210,7 @@ - + @@ -42139,7 +42224,7 @@ - + @@ -42166,7 +42251,7 @@ - + @@ -42192,15 +42277,15 @@ - + - + - + - + @@ -42208,48 +42293,48 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -42264,7 +42349,7 @@ - + @@ -42275,24 +42360,24 @@ - + - + - + - + - + - + - + @@ -42307,15 +42392,15 @@ - + - + - + - + @@ -42324,10 +42409,10 @@ - + - + @@ -42335,12 +42420,12 @@ - + - + - + @@ -42370,7 +42455,7 @@ - + @@ -42379,7 +42464,7 @@ - + @@ -42391,42 +42476,42 @@ - + - + - + - + - + - + - + - + - + - + @@ -42450,10 +42535,10 @@ - + - + @@ -42462,7 +42547,7 @@ - + @@ -42489,27 +42574,27 @@ - + - + - + - + - + - + - + @@ -42523,61 +42608,61 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -42585,7 +42670,7 @@ - + @@ -42593,7 +42678,7 @@ - + @@ -42602,49 +42687,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -42662,7 +42747,7 @@ - + @@ -42677,7 +42762,7 @@ - + @@ -42740,7 +42825,7 @@ - + @@ -42752,7 +42837,7 @@ - + @@ -42764,7 +42849,7 @@ - + @@ -42782,13 +42867,13 @@ - + - + @@ -42800,7 +42885,7 @@ - + @@ -42821,10 +42906,10 @@ - + - + @@ -42839,13 +42924,13 @@ - + - + @@ -42872,12 +42957,12 @@ - + - + @@ -42889,19 +42974,19 @@ - + - + - + - + - + @@ -42921,7 +43006,7 @@ - + @@ -42945,13 +43030,13 @@ - + - + @@ -42975,7 +43060,7 @@ - + @@ -42990,7 +43075,7 @@ - + @@ -42999,11 +43084,11 @@ - + - - + + @@ -43014,15 +43099,15 @@ - + - + - + @@ -43030,23 +43115,23 @@ - + - + - + - + - + @@ -43055,13 +43140,13 @@ - - + + - + @@ -43070,16 +43155,16 @@ - + - + - + @@ -43090,16 +43175,16 @@ - + - + - + - + @@ -43108,13 +43193,13 @@ - + - + - + @@ -43135,7 +43220,7 @@ - + @@ -43146,13 +43231,13 @@ - + - + @@ -43164,32 +43249,32 @@ - + - + - + - + - + - + - + - - + + @@ -43206,20 +43291,20 @@ - + - + - - - + + + - + @@ -43237,15 +43322,15 @@ - + - + - + @@ -43254,7 +43339,7 @@ - + @@ -43269,210 +43354,210 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -43512,7 +43597,7 @@ - + @@ -43592,17 +43677,17 @@ - + - + - - + + @@ -43613,24 +43698,24 @@ - + - + - + - + - + - + - + @@ -43731,7 +43816,7 @@ - + @@ -43739,16 +43824,16 @@ - + - + - + @@ -43757,8 +43842,8 @@ - - + + @@ -43775,47 +43860,47 @@ - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -43823,9 +43908,9 @@ - + - + @@ -43837,10 +43922,10 @@ - + - + @@ -43882,7 +43967,7 @@ - + @@ -43900,7 +43985,7 @@ - + @@ -43926,7 +44011,7 @@ - + @@ -43941,78 +44026,78 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -44042,7 +44127,7 @@ - + @@ -44077,22 +44162,22 @@ - + - + - + - + @@ -44110,7 +44195,7 @@ - + @@ -44122,10 +44207,10 @@ - + - + @@ -44143,7 +44228,7 @@ - + @@ -44164,7 +44249,7 @@ - + @@ -44191,22 +44276,22 @@ - + - + - + - + @@ -44218,25 +44303,25 @@ - + - + - + - + - + - + @@ -44245,7 +44330,7 @@ - + @@ -44254,22 +44339,22 @@ - - + + - + - - + + - + - + @@ -44280,7 +44365,7 @@ - + @@ -44297,7 +44382,7 @@ - + @@ -44322,7 +44407,7 @@ - + @@ -44445,7 +44530,7 @@ - + @@ -44453,9 +44538,9 @@ - + - + @@ -44470,7 +44555,7 @@ - + @@ -44479,7 +44564,7 @@ - + @@ -44494,23 +44579,23 @@ - + - + - + - + @@ -44520,9 +44605,9 @@ - + - + @@ -44530,7 +44615,7 @@ - + @@ -44549,10 +44634,10 @@ - + - + @@ -44578,13 +44663,13 @@ - + - + - + @@ -44598,7 +44683,7 @@ - + @@ -44606,10 +44691,10 @@ - + - + @@ -44626,7 +44711,7 @@ - + @@ -44634,10 +44719,10 @@ - + - + @@ -44648,7 +44733,7 @@ - + @@ -44656,16 +44741,16 @@ - - + + - + - + @@ -44677,7 +44762,7 @@ - + @@ -44686,7 +44771,7 @@ - + @@ -44698,19 +44783,19 @@ - + - + - + - + - + @@ -44719,20 +44804,20 @@ - + - + - + - + - + @@ -44741,24 +44826,24 @@ - + - + - - + + - + - + @@ -44787,15 +44872,15 @@ - + - + - + @@ -44824,7 +44909,7 @@ - + @@ -44832,7 +44917,7 @@ - + @@ -44840,7 +44925,7 @@ - + @@ -44848,17 +44933,17 @@ - + - + - + - + @@ -44879,17 +44964,17 @@ - + - + - + - + - + @@ -44901,9 +44986,9 @@ - + - + @@ -44915,24 +45000,24 @@ - + - + - + - + - + @@ -44953,10 +45038,10 @@ - + - + @@ -44967,22 +45052,22 @@ - + - + - + - + - + @@ -44993,7 +45078,7 @@ - + @@ -45004,40 +45089,40 @@ - + - + - + - + - + - + - - + + - + - + - + - + @@ -45049,13 +45134,13 @@ - + - + @@ -45064,10 +45149,10 @@ - + - + @@ -45091,18 +45176,18 @@ - + - + - + - + @@ -45116,8 +45201,8 @@ - - + + @@ -45131,7 +45216,7 @@ - + @@ -45139,815 +45224,815 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - + - + - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + - + - + - + - + - + - - + + - - + + - - - + + + - - - + + + - - - + + + - - + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - - - + + + + - - + + - - + + - - + + - + - + - + - + + + + + + + - + - - - - - - - + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - + + - - + + - + - + - - + + - + - + @@ -45955,15 +46040,15 @@ - + - + - + - + @@ -45971,7 +46056,7 @@ - + @@ -45979,12 +46064,12 @@ - + - + - + @@ -45993,44 +46078,44 @@ - + - - + + - + - + - - + + - + - + - + @@ -46043,9 +46128,9 @@ - - - + + + @@ -46056,11 +46141,11 @@ - + - + @@ -46070,7 +46155,7 @@ - + @@ -46089,7 +46174,7 @@ - + @@ -46100,7 +46185,7 @@ - + @@ -46190,20 +46275,20 @@ - - + + - + - + - + - + @@ -46215,7 +46300,7 @@ - + @@ -46223,27 +46308,27 @@ - + - + - + - + - + - + @@ -46258,7 +46343,7 @@ - + @@ -46272,7 +46357,7 @@ - + @@ -46280,10 +46365,10 @@ - + - + @@ -46304,7 +46389,7 @@ - + @@ -46331,7 +46416,7 @@ - + @@ -46340,7 +46425,7 @@ - + @@ -46355,7 +46440,7 @@ - + @@ -46405,7 +46490,7 @@ - + @@ -46413,18 +46498,18 @@ - + - + - + - + @@ -46432,37 +46517,37 @@ - + - + - + - + - + - + - + - + - + - + @@ -46474,7 +46559,7 @@ - + @@ -46482,75 +46567,75 @@ - + - - - - - - - - - - - - - - - - - - + + + - - - + + + + + + + + + + + + + + + + + + - - + + - + - - - + + + - - - - - - - - - - - - - - - + + - + + + + + + + + + + + + + + - - + + @@ -46558,31 +46643,31 @@ - + - - + + - - + + - + - + - + @@ -46592,28 +46677,28 @@ - + - + - - + + - - + + - + @@ -46624,14 +46709,14 @@ - + - - + + - + @@ -46639,23 +46724,23 @@ - - + + - + - + - - + + - + @@ -46664,20 +46749,20 @@ - + - - - + + + - + - + @@ -46688,9 +46773,9 @@ - + - + @@ -46699,7 +46784,7 @@ - + @@ -46708,7 +46793,7 @@ - + @@ -46723,7 +46808,7 @@ - + @@ -46732,7 +46817,7 @@ - + @@ -46740,9 +46825,9 @@ - + - + @@ -46757,7 +46842,7 @@ - + @@ -46781,7 +46866,7 @@ - + @@ -46819,10 +46904,10 @@ - + - + @@ -46831,10 +46916,10 @@ - + - + @@ -46849,12 +46934,12 @@ - + - + @@ -46865,7 +46950,7 @@ - + @@ -46873,14 +46958,14 @@ - - - - - - - - + + + + + + + + @@ -46903,7 +46988,7 @@ - + @@ -46920,11 +47005,11 @@ - + - + @@ -46935,7 +47020,7 @@ - + @@ -46981,26 +47066,26 @@ - + - + - + - + - + @@ -47008,7 +47093,7 @@ - + @@ -47046,7 +47131,7 @@ - + @@ -47060,8 +47145,8 @@ - - + + @@ -47072,16 +47157,16 @@ - + - + - + @@ -47092,16 +47177,16 @@ - + - + - + - + @@ -47110,7 +47195,7 @@ - + @@ -47118,12 +47203,12 @@ - + - + - + @@ -47153,34 +47238,34 @@ - - + + - - - - + + + + - - + + - + - + - + @@ -47189,7 +47274,7 @@ - + @@ -47240,7 +47325,7 @@ - + @@ -47249,7 +47334,7 @@ - + @@ -47306,7 +47391,7 @@ - + @@ -47318,7 +47403,7 @@ - + @@ -47417,7 +47502,7 @@ - + @@ -47435,16 +47520,16 @@ - + - + - + @@ -47459,12 +47544,12 @@ - + - + @@ -47479,7 +47564,7 @@ - + @@ -47488,10 +47573,10 @@ - + - + @@ -47521,7 +47606,7 @@ - + @@ -47539,33 +47624,33 @@ - + - + - + - + - + - + - - + + - + - + @@ -47574,7 +47659,7 @@ - + @@ -47582,34 +47667,34 @@ - + - + - + - + - + - + - + - + - + - + @@ -47618,10 +47703,10 @@ - + - + @@ -47644,34 +47729,34 @@ - + - + - + - + - + - + - + - - + + - + @@ -47679,33 +47764,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -47713,64 +47798,64 @@ - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - + - - + + @@ -47782,30 +47867,30 @@ - + - + - + - + - + - + - + @@ -47819,7 +47904,7 @@ - + @@ -47831,7 +47916,7 @@ - + @@ -47845,7 +47930,7 @@ - + @@ -47890,18 +47975,18 @@ - + - + - + @@ -47943,7 +48028,7 @@ - + @@ -47966,16 +48051,16 @@ - + - + - + @@ -47991,7 +48076,7 @@ - + @@ -48029,13 +48114,13 @@ - - + + - + @@ -48045,13 +48130,13 @@ - + - - + + @@ -48069,16 +48154,16 @@ - + - + - + @@ -48117,8 +48202,8 @@ - - + + @@ -48128,7 +48213,7 @@ - + @@ -48155,7 +48240,7 @@ - + @@ -48171,14 +48256,6 @@ - - - - - - - - @@ -48193,15 +48270,15 @@ - + - + - + @@ -48215,11 +48292,11 @@ - + - + - + @@ -48232,7 +48309,7 @@ - + @@ -48243,7 +48320,7 @@ - + @@ -48254,7 +48331,7 @@ - + @@ -48262,7 +48339,7 @@ - + @@ -48281,7 +48358,7 @@ - + @@ -48289,25 +48366,33 @@ - - + + + + + + + + + + - + - + - + - + - + @@ -48316,20 +48401,20 @@ - + - + - + - + - + @@ -48341,15 +48426,15 @@ - + - + - + @@ -48357,7 +48442,7 @@ - + @@ -48377,15 +48462,15 @@ - - - - + + + + - + @@ -48403,18 +48488,10 @@ - + - - - - - - - - @@ -48490,8 +48567,8 @@ - - + + @@ -48519,58 +48596,58 @@ - - + + - + - + - - + + - - - - - - - - - - - - - - - + + + + + + + - + + + + + + + + + - - + + @@ -48578,48 +48655,48 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -48628,13 +48705,13 @@ - + - + - + @@ -48645,7 +48722,7 @@ - + @@ -48659,7 +48736,7 @@ - + @@ -48673,7 +48750,7 @@ - + @@ -48687,7 +48764,7 @@ - + @@ -48701,21 +48778,21 @@ - + - + - + - + - + @@ -48732,33 +48809,33 @@ - + - + - + - + - + - + - + - - + + @@ -48769,13 +48846,13 @@ - + - + - + @@ -48784,7 +48861,7 @@ - + @@ -48817,7 +48894,7 @@ - + @@ -48826,15 +48903,15 @@ - + - + - + @@ -48879,9 +48956,9 @@ - + - + @@ -48890,7 +48967,7 @@ - + @@ -48898,10 +48975,10 @@ - + - + @@ -48909,21 +48986,21 @@ - + - + - - + + - + @@ -48932,7 +49009,7 @@ - + @@ -48941,8 +49018,33 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -48950,7 +49052,15 @@ - + + + + + + + + + @@ -48958,7 +49068,7 @@ - + @@ -48966,13 +49076,13 @@ - + - + - + @@ -48981,13 +49091,13 @@ - + - - + + @@ -48996,29 +49106,30 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -49035,8 +49146,8 @@ - - + + @@ -49060,11 +49171,11 @@ - + - + @@ -49109,16 +49220,16 @@ - + - + - + @@ -49133,7 +49244,7 @@ - + @@ -49177,33 +49288,33 @@ - + - + - + - + - + - + - + - + @@ -49278,38 +49389,38 @@ - + - - + + - + - + - + - + - - - + + + - + - + - + - + @@ -49338,27 +49449,27 @@ - - + + - - - - + + + + - + - + - + @@ -49367,10 +49478,10 @@ - + - + @@ -49388,7 +49499,7 @@ - + @@ -49396,19 +49507,19 @@ - + - + - + - + @@ -49417,13 +49528,13 @@ - + - + @@ -49432,7 +49543,7 @@ - + @@ -49441,16 +49552,16 @@ - + - + - + @@ -49471,103 +49582,103 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -49575,15 +49686,15 @@ - + - + - + @@ -49598,8 +49709,8 @@ - - + + @@ -49626,35 +49737,35 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49669,127 +49780,127 @@ - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - + - + - + @@ -49797,7 +49908,7 @@ - + @@ -49805,7 +49916,7 @@ - + @@ -49822,11 +49933,11 @@ - + - - + + @@ -49836,28 +49947,28 @@ - + - + - + - + - + - + @@ -49868,18 +49979,18 @@ - + - + - + - + @@ -49888,15 +49999,15 @@ - + - + - + @@ -49904,36 +50015,36 @@ - - - - + + + + - + - + - + - + - + - - - - + + + + @@ -49947,8 +50058,8 @@ - - + + @@ -49962,14 +50073,14 @@ - + - + - + @@ -49977,21 +50088,21 @@ - + - + - + - + - + @@ -50003,7 +50114,7 @@ - + @@ -50011,7 +50122,7 @@ - + @@ -50025,13 +50136,13 @@ - + - + @@ -50049,7 +50160,7 @@ - + @@ -50057,15 +50168,15 @@ - + - - - - + + + + @@ -50085,7 +50196,7 @@ - + @@ -50140,15 +50251,15 @@ - + - + - + @@ -50161,7 +50272,7 @@ - + @@ -50170,63 +50281,63 @@ - - + + - + - - - - - + + + + + - - + + - + - + - + - - + + - + - + - - + + - + - + @@ -50234,7 +50345,7 @@ - + @@ -50242,26 +50353,26 @@ - + - + - + - + - + - + @@ -50269,7 +50380,7 @@ - + @@ -50277,10 +50388,10 @@ - + - + @@ -50288,7 +50399,81 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -50296,12 +50481,12 @@ - + - + - + @@ -50334,8 +50519,8 @@ - - + + @@ -50346,7 +50531,7 @@ - + @@ -50372,7 +50557,7 @@ - + @@ -50386,7 +50571,7 @@ - + @@ -50394,7 +50579,7 @@ - + @@ -50405,7 +50590,7 @@ - + @@ -50422,12 +50607,12 @@ - + - + - + @@ -50457,9 +50642,9 @@ - + - + @@ -50468,7 +50653,7 @@ - + @@ -50476,32 +50661,32 @@ - + - + - + - + - + - + - + - + - + - + @@ -50552,10 +50737,10 @@ - + - + @@ -50564,10 +50749,10 @@ - + - + @@ -50581,19 +50766,19 @@ - + - + - + - + - + @@ -50602,7 +50787,7 @@ - + @@ -50641,18 +50826,18 @@ - + - + - + - + - + @@ -50664,10 +50849,10 @@ - + - + @@ -50678,13 +50863,13 @@ - + - + - + @@ -50702,13 +50887,13 @@ - + - + @@ -50746,9 +50931,9 @@ - + - + @@ -50760,24 +50945,24 @@ - + - + - + - + - + - + @@ -50786,7 +50971,7 @@ - + @@ -50797,7 +50982,7 @@ - + @@ -50838,15 +51023,15 @@ - + - + - + - + @@ -50867,7 +51052,7 @@ - + @@ -50875,7 +51060,7 @@ - + @@ -50883,42 +51068,42 @@ - + - + - + - + - + - + - + - + @@ -50926,10 +51111,10 @@ - + - + @@ -50968,7 +51153,7 @@ - + @@ -50995,13 +51180,13 @@ - + - + @@ -51019,21 +51204,21 @@ - + - + - + - + - + @@ -51066,9 +51251,9 @@ - + - + @@ -51086,7 +51271,7 @@ - + @@ -51094,7 +51279,7 @@ - + @@ -51109,7 +51294,7 @@ - + @@ -51117,23 +51302,23 @@ - + - + - + - + - + - + @@ -51141,7 +51326,7 @@ - + @@ -51149,7 +51334,7 @@ - + @@ -51161,12 +51346,12 @@ - + - + @@ -51181,13 +51366,13 @@ - + - + - + @@ -51199,55 +51384,55 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -51262,16 +51447,16 @@ - + - + - + - + @@ -51283,28 +51468,28 @@ - + - + - + - + - + - + - + @@ -51321,15 +51506,15 @@ - + - + - + - + @@ -51341,7 +51526,7 @@ - + @@ -51367,7 +51552,7 @@ - + @@ -51379,10 +51564,10 @@ - + - + @@ -51396,7 +51581,7 @@ - + @@ -51407,7 +51592,7 @@ - + @@ -51421,7 +51606,7 @@ - + @@ -51432,10 +51617,10 @@ - + - + @@ -51446,7 +51631,7 @@ - + @@ -51469,24 +51654,24 @@ - + - + - + - + - + - + - + @@ -51497,18 +51682,18 @@ - + - + - + @@ -51522,7 +51707,7 @@ - + @@ -51536,48 +51721,48 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -51589,7 +51774,7 @@ - + @@ -51603,49 +51788,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -51656,153 +51841,154 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + @@ -51810,11 +51996,11 @@ - + - + @@ -51822,59 +52008,59 @@ - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + @@ -51882,7 +52068,7 @@ - + @@ -51891,12 +52077,12 @@ - + - + @@ -51904,173 +52090,173 @@ - - + + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - + - - - + + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - - + + + @@ -52080,78 +52266,78 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - + + - - - - - - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -52161,67 +52347,67 @@ - + - + - + - + - + - + - + - + - + - + - + - - - - + + + + - - + + - + - + - + - + - + @@ -52231,7 +52417,7 @@ - + @@ -52240,18 +52426,18 @@ - + - + - - + + @@ -52296,19 +52482,19 @@ - + - + - + - + @@ -52319,15 +52505,15 @@ - + - + - + - + @@ -52347,7 +52533,7 @@ - + @@ -52363,10 +52549,10 @@ - + - + @@ -52381,17 +52567,18 @@ - - - - - - - + + + + + + + + - + @@ -52414,71 +52601,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + @@ -52488,10 +52613,10 @@ - + - + @@ -52506,7 +52631,7 @@ - + @@ -52521,19 +52646,19 @@ - + - + - + - + - + @@ -52641,7 +52766,7 @@ - + @@ -52698,7 +52823,7 @@ - + @@ -52707,40 +52832,40 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -52751,18 +52876,18 @@ - + - + - + - + @@ -52773,21 +52898,21 @@ - + - + - + - + @@ -52798,7 +52923,7 @@ - + @@ -52811,7 +52936,7 @@ - + @@ -52824,13 +52949,13 @@ - + - + @@ -52848,7 +52973,7 @@ - + @@ -52878,8 +53003,8 @@ - - + + @@ -52887,8 +53012,8 @@ - - + + @@ -52896,108 +53021,108 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -53024,7 +53149,7 @@ - + @@ -53033,16 +53158,16 @@ - + - + - + - + @@ -53054,10 +53179,18 @@ - + - + + + + + + + + + @@ -53071,27 +53204,27 @@ - + - + - + - + - + - + - + - + @@ -53112,10 +53245,10 @@ - + - + @@ -53127,7 +53260,7 @@ - + @@ -53138,13 +53271,13 @@ - + - + - + @@ -53152,8 +53285,8 @@ - - + + @@ -53164,7 +53297,7 @@ - + @@ -53178,7 +53311,7 @@ - + @@ -53189,7 +53322,7 @@ - + @@ -53203,7 +53336,7 @@ - + @@ -53217,10 +53350,10 @@ - + - + @@ -53247,7 +53380,7 @@ - + @@ -53262,15 +53395,29 @@ - + + + + + + + + + + + + + + + - + - + - + @@ -53293,31 +53440,31 @@ - + - + - + - + - + - + - + - + - + @@ -53338,7 +53485,7 @@ - + @@ -53376,10 +53523,10 @@ - + - + @@ -53403,20 +53550,20 @@ - + - + - + - - + + @@ -53424,7 +53571,7 @@ - + @@ -53432,26 +53579,26 @@ - + - + - + - + - + - + - + - + @@ -53477,20 +53624,20 @@ - + - + - + - + - + @@ -53499,18 +53646,18 @@ - + - + - + - + - + @@ -53519,10 +53666,10 @@ - + - + @@ -53530,7 +53677,7 @@ - + @@ -53538,7 +53685,7 @@ - + @@ -53546,14 +53693,14 @@ - + - + - + @@ -53565,15 +53712,15 @@ - + - + - + @@ -53582,10 +53729,10 @@ - + - + @@ -53596,7 +53743,7 @@ - + @@ -53605,7 +53752,7 @@ - + @@ -53634,7 +53781,27 @@ - + + + + + + + + + + + + + + + + + + + + + @@ -53642,9 +53809,9 @@ - + - + @@ -53653,20 +53820,20 @@ - + - + - + - - + + @@ -53674,7 +53841,7 @@ - + @@ -53682,86 +53849,86 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + @@ -53769,13 +53936,13 @@ - + - + @@ -53783,21 +53950,21 @@ - - + + - + - + - + - + @@ -53811,582 +53978,585 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + - - - - - - + + + - - - - + + - - - + + + + - + + - - - + + + + + - - - + + + - - - + + - - - - - - - - - - + + + + + + + + + + + + + + - + + + + + + + + + + - - + + - - - - - - - - - - - - - - - + + - - - - + + + - - + + + + + + - - + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - - + + - - - + + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + @@ -54413,13 +54583,13 @@ - + - + @@ -54479,10 +54649,10 @@ - + - + @@ -54509,7 +54679,7 @@ - + @@ -54518,13 +54688,13 @@ - + - + - + @@ -54536,10 +54706,10 @@ - + - + @@ -54548,13 +54718,13 @@ - + - + - + @@ -54593,12 +54763,12 @@ - + - + - + @@ -54606,9 +54776,9 @@ - + - + @@ -54632,7 +54802,7 @@ - + @@ -54640,13 +54810,13 @@ - + - + @@ -54666,12 +54836,12 @@ - + - + - + @@ -54686,7 +54856,7 @@ - + @@ -54697,7 +54867,7 @@ - + @@ -54720,19 +54890,19 @@ - + - + - + - + @@ -54746,9 +54916,9 @@ - + - + @@ -54763,7 +54933,7 @@ - + @@ -54772,7 +54942,7 @@ - + @@ -54790,10 +54960,10 @@ - + - + @@ -54951,7 +55121,7 @@ - + @@ -54959,7 +55129,7 @@ - + @@ -54970,7 +55140,7 @@ - + @@ -54981,12 +55151,12 @@ - + - + @@ -54995,7 +55165,7 @@ - + @@ -55007,7 +55177,7 @@ - + @@ -55019,16 +55189,16 @@ - + - + - + @@ -55037,10 +55207,10 @@ - + - + @@ -55064,35 +55234,35 @@ - + - + - + - + - + - + - + - + @@ -55100,27 +55270,27 @@ - + - + - + - + - + - + @@ -55147,10 +55317,10 @@ - + - + @@ -55162,13 +55332,13 @@ - + - + - + @@ -55177,7 +55347,7 @@ - + @@ -55186,13 +55356,13 @@ - + - + - + @@ -55228,10 +55398,10 @@ - + - + @@ -55249,18 +55419,18 @@ - + - + - + - + @@ -55277,7 +55447,7 @@ - + @@ -55285,7 +55455,7 @@ - + @@ -55311,30 +55481,30 @@ - + - + - + - + - + - + - + - + - + @@ -55346,21 +55516,21 @@ - + - + - + - + - + @@ -55393,7 +55563,7 @@ - + @@ -55402,13 +55572,13 @@ - + - + @@ -55422,15 +55592,15 @@ - + - + - + - + @@ -55439,7 +55609,7 @@ - + @@ -55450,7 +55620,7 @@ - + @@ -55461,12 +55631,12 @@ - + - + - + @@ -55478,15 +55648,15 @@ - + - + - + - + @@ -55495,19 +55665,19 @@ - + - + - + - + @@ -55521,7 +55691,7 @@ - + @@ -55535,12 +55705,12 @@ - + - + - + @@ -55552,7 +55722,7 @@ - + @@ -55560,10 +55730,10 @@ - + - + @@ -55577,37 +55747,37 @@ - + - + - + - + - + - + - + - + - + - + @@ -55627,7 +55797,7 @@ - + @@ -55635,16 +55805,16 @@ - + - + - + - + @@ -55653,39 +55823,39 @@ - + - + - + - + - + - + @@ -55693,24 +55863,24 @@ - + - + - + - + - + - + - + @@ -55722,7 +55892,7 @@ - + @@ -55733,7 +55903,7 @@ - + @@ -55741,15 +55911,15 @@ - + - + - + - + @@ -55763,26 +55933,7 @@ - - - - - - - - - - - - - - - - - - - - + @@ -55790,7 +55941,7 @@ - + @@ -55802,15 +55953,15 @@ - + - + - + @@ -55830,21 +55981,21 @@ - + - + - + - + - + @@ -55852,9 +56003,9 @@ - + - + @@ -55863,7 +56014,7 @@ - + @@ -55871,10 +56022,10 @@ - + - + @@ -55882,318 +56033,318 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -56201,7 +56352,7 @@ - + @@ -56210,12 +56361,12 @@ - + - + - + @@ -56230,19 +56381,19 @@ - + - + - + - + @@ -56254,19 +56405,19 @@ - + - + - + - + @@ -56275,7 +56426,7 @@ - + @@ -56313,13 +56464,13 @@ - + - + @@ -56336,7 +56487,7 @@ - + @@ -56351,7 +56502,7 @@ - + @@ -56360,7 +56511,7 @@ - + @@ -56374,7 +56525,7 @@ - + @@ -56382,48 +56533,48 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -56458,10 +56609,10 @@ - + - + @@ -56470,7 +56621,7 @@ - + @@ -56503,13 +56654,13 @@ - + - + @@ -56518,7 +56669,7 @@ - + @@ -56529,7 +56680,7 @@ - + @@ -56564,16 +56715,16 @@ - + - + - + - + @@ -56591,10 +56742,10 @@ - + - + @@ -56612,13 +56763,13 @@ - + - + - + @@ -56633,7 +56784,7 @@ - + @@ -56642,7 +56793,7 @@ - + @@ -56668,7 +56819,7 @@ - + @@ -56679,7 +56830,7 @@ - + @@ -56687,7 +56838,7 @@ - + @@ -56704,10 +56855,10 @@ - + - + @@ -56745,7 +56896,7 @@ - + @@ -56774,7 +56925,7 @@ - + @@ -56851,7 +57002,7 @@ - + @@ -56860,9 +57011,9 @@ - + - + @@ -56910,7 +57061,7 @@ - + @@ -56919,12 +57070,12 @@ - + - + - + @@ -56953,9 +57104,9 @@ - + - + @@ -56970,7 +57121,7 @@ - + @@ -56978,9 +57129,9 @@ - + - + @@ -56989,7 +57140,7 @@ - + @@ -57007,28 +57158,28 @@ - + - + - + - + - + - + - + @@ -57037,23 +57188,23 @@ - + - + - + - + - + @@ -57062,7 +57213,7 @@ - + @@ -57080,9 +57231,9 @@ - + - + @@ -57094,7 +57245,7 @@ - + @@ -57103,16 +57254,16 @@ - + - + - + - + @@ -57124,7 +57275,7 @@ - + @@ -57141,9 +57292,9 @@ - + - + @@ -57158,12 +57309,12 @@ - + - + - + @@ -57178,7 +57329,7 @@ - + @@ -57190,10 +57341,10 @@ - + - + @@ -57211,22 +57362,22 @@ - + - + - + - + - + @@ -57256,21 +57407,21 @@ - + - + - + - + - + @@ -57279,15 +57430,15 @@ - + - + - + - + @@ -57295,7 +57446,7 @@ - + @@ -57331,27 +57482,27 @@ - + - + - + - + - + - + @@ -57378,7 +57529,7 @@ - + @@ -57401,9 +57552,9 @@ - + - + @@ -57430,7 +57581,7 @@ - + @@ -57441,7 +57592,7 @@ - + @@ -57449,7 +57600,7 @@ - + @@ -57460,7 +57611,7 @@ - + @@ -57468,39 +57619,39 @@ - + - + - + - + - + - + - + - + - + @@ -57515,7 +57666,7 @@ - + @@ -57527,18 +57678,18 @@ - + - + - + - + @@ -57546,7 +57697,7 @@ - + @@ -57554,7 +57705,7 @@ - + @@ -57562,12 +57713,12 @@ - + - + - + @@ -57588,7 +57739,7 @@ - + @@ -57612,16 +57763,16 @@ - + - + - + @@ -57636,7 +57787,7 @@ - + @@ -57644,7 +57795,7 @@ - + @@ -57652,7 +57803,7 @@ - + @@ -57666,15 +57817,15 @@ - + - + - + - + @@ -57683,449 +57834,449 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + + + + + + - + + + + + + + + + + + + + - - + + - - + + - + + - - + + + + + + + + + + + + + + + - - + + - + - - + + - + - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + - - + + @@ -58137,143 +58288,143 @@ - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + @@ -58281,218 +58432,218 @@ - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - + - + - - + + - - + + - - - + + + - - + + - - - + + + - - - + + + - - - + + + - - + + - - - + + + - + - + - + @@ -58504,32 +58655,32 @@ - + - + - + - - + + - - + + - - - + + + @@ -58537,16 +58688,16 @@ - + - - + + - + @@ -58561,7 +58712,7 @@ - + @@ -58570,12 +58721,12 @@ - + - + @@ -58592,7 +58743,7 @@ - + @@ -58600,7 +58751,7 @@ - + @@ -58615,13 +58766,13 @@ - + - + - + @@ -58644,17 +58795,17 @@ - + - + - + @@ -58669,11 +58820,11 @@ - - + + - + @@ -58681,6 +58832,6 @@ diff --git a/block/blk-crypto.c b/block/blk-crypto.c index 2c47e8eec865..3e1bb4192498 100644 --- a/block/blk-crypto.c +++ b/block/blk-crypto.c @@ -171,15 +171,19 @@ bool blk_crypto_endio(struct bio *bio) /** * blk_crypto_init_key() - Prepare a key for use with blk-crypto * @blk_key: Pointer to the blk_crypto_key to initialize. - * @raw_key: Pointer to the raw key. Must be the correct length for the chosen - * @crypto_mode; see blk_crypto_modes[]. + * @raw_key: Pointer to the raw key. + * @raw_key_size: Size of raw key. Must be at least the required size for the + * chosen @crypto_mode; see blk_crypto_modes[]. (It's allowed + * to be longer than the mode's actual key size, in order to + * support inline encryption hardware that accepts wrapped keys.) * @crypto_mode: identifier for the encryption algorithm to use * @data_unit_size: the data unit size to use for en/decryption * * Return: The blk_crypto_key that was prepared, or an ERR_PTR() on error. When * done using the key, it must be freed with blk_crypto_free_key(). */ -int blk_crypto_init_key(struct blk_crypto_key *blk_key, const u8 *raw_key, +int blk_crypto_init_key(struct blk_crypto_key *blk_key, + const u8 *raw_key, unsigned int raw_key_size, enum blk_crypto_mode_num crypto_mode, unsigned int data_unit_size) { @@ -191,8 +195,11 @@ int blk_crypto_init_key(struct blk_crypto_key *blk_key, const u8 *raw_key, if (crypto_mode >= ARRAY_SIZE(blk_crypto_modes)) return -EINVAL; + BUILD_BUG_ON(BLK_CRYPTO_MAX_WRAPPED_KEY_SIZE < BLK_CRYPTO_MAX_KEY_SIZE); + mode = &blk_crypto_modes[crypto_mode]; - if (mode->keysize == 0) + if (raw_key_size < mode->keysize || + raw_key_size > BLK_CRYPTO_MAX_WRAPPED_KEY_SIZE) return -EINVAL; if (!is_power_of_2(data_unit_size)) @@ -201,8 +208,8 @@ int blk_crypto_init_key(struct blk_crypto_key *blk_key, const u8 *raw_key, blk_key->crypto_mode = crypto_mode; blk_key->data_unit_size = data_unit_size; blk_key->data_unit_size_bits = ilog2(data_unit_size); - blk_key->size = mode->keysize; - memcpy(blk_key->raw, raw_key, mode->keysize); + blk_key->size = raw_key_size; + memcpy(blk_key->raw, raw_key, raw_key_size); /* * The keyslot manager uses the SipHash of the key to implement O(1) key @@ -210,7 +217,7 @@ int blk_crypto_init_key(struct blk_crypto_key *blk_key, const u8 *raw_key, * precomputed here so that it only needs to be computed once per key. */ get_random_once(&hash_key, sizeof(hash_key)); - blk_key->hash = siphash(raw_key, mode->keysize, &hash_key); + blk_key->hash = siphash(raw_key, raw_key_size, &hash_key); return 0; } diff --git a/block/keyslot-manager.c b/block/keyslot-manager.c index cdf0607019d4..52f94a5a9680 100644 --- a/block/keyslot-manager.c +++ b/block/keyslot-manager.c @@ -168,6 +168,7 @@ static int find_keyslot(struct keyslot_manager *ksm, hlist_for_each_entry(slotp, head, hash_node) { if (slotp->key.hash == key->hash && slotp->key.crypto_mode == key->crypto_mode && + slotp->key.size == key->size && slotp->key.data_unit_size == key->data_unit_size && !crypto_memneq(slotp->key.raw, key->raw, key->size)) return slotp - ksm->slots; diff --git a/fs/crypto/inline_crypt.c b/fs/crypto/inline_crypt.c index aa04e8a7d674..7bfafe28011f 100644 --- a/fs/crypto/inline_crypt.c +++ b/fs/crypto/inline_crypt.c @@ -74,8 +74,8 @@ int fscrypt_prepare_inline_crypt_key(struct fscrypt_prepared_key *prep_key, else sb->s_cop->get_devices(sb, blk_key->devs); - err = blk_crypto_init_key(&blk_key->base, raw_key, crypto_mode, - sb->s_blocksize); + err = blk_crypto_init_key(&blk_key->base, raw_key, ci->ci_mode->keysize, + crypto_mode, sb->s_blocksize); if (err) { fscrypt_err(inode, "error %d initializing blk-crypto key", err); goto fail; diff --git a/include/linux/bio-crypt-ctx.h b/include/linux/bio-crypt-ctx.h index 4535df0a6349..2e06b06fce47 100644 --- a/include/linux/bio-crypt-ctx.h +++ b/include/linux/bio-crypt-ctx.h @@ -19,6 +19,7 @@ enum blk_crypto_mode_num { #ifdef CONFIG_BLK_INLINE_ENCRYPTION #define BLK_CRYPTO_MAX_KEY_SIZE 64 +#define BLK_CRYPTO_MAX_WRAPPED_KEY_SIZE 128 /** * struct blk_crypto_key - an inline encryption key @@ -41,7 +42,7 @@ struct blk_crypto_key { unsigned int data_unit_size_bits; unsigned int size; unsigned int hash; - u8 raw[BLK_CRYPTO_MAX_KEY_SIZE]; + u8 raw[BLK_CRYPTO_MAX_WRAPPED_KEY_SIZE]; }; #define BLK_CRYPTO_MAX_IV_SIZE 32 diff --git a/include/linux/blk-crypto.h b/include/linux/blk-crypto.h index 07d32e33f0bb..6dd37961888a 100644 --- a/include/linux/blk-crypto.h +++ b/include/linux/blk-crypto.h @@ -14,7 +14,8 @@ int blk_crypto_submit_bio(struct bio **bio_ptr); bool blk_crypto_endio(struct bio *bio); -int blk_crypto_init_key(struct blk_crypto_key *blk_key, const u8 *raw_key, +int blk_crypto_init_key(struct blk_crypto_key *blk_key, + const u8 *raw_key, unsigned int raw_key_size, enum blk_crypto_mode_num crypto_mode, unsigned int data_unit_size);