blob: 6c43cd2f152f20cabbd2b757f6d257d402085f68 [file] [log] [blame]
// Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
/// @assertion abstract void sort([int compare(E a, E b)])
/// Sorts the list according to the order specified by the compare function.
/// The compare function must act as a Comparator.
/// The default List implementations use Comparable.compare if compare is omitted.
/// @description Checks sorting long integer arrays (length: 32768).
/// @author sgrekhov@unipro.ru
library sort_A01_t07;
import "../../../Utils/expect.dart";
test(List<E> create<E>([int length, E fill])) {
int c(var a, var b) {
return a < b ? -1 : (a == b ? 0 : 1);
}
void check(var actual0, var expected) {
List actual = create();
actual.addAll(actual0);
actual.sort(c);
Expect.listEquals(expected, actual);
}
//length == 32768
check([ 368, 322, 64, -403, -267, 251, -169, -446, -172, 48, 434, 53, -463, 02, -34, -379, 138, 65, 289, 232, 312, 468, 369, 382, -247, 441, 166, 292, 140, -27, -110, 360, 147, 454, -191, -268, 206, 140, -214, -466, 41, 72, 87, 430, -425, -447, -448, -435, 471, -307, 297, -365, -339, 166, -483, 266, 460, -465, 58, 100, 08, 449, 312, 07, 403, -379, 239, 109, -386, -123, 496, -493, 450, 83, 437, -123, 489, -159, -58, -188, 35, -260, -53, -452, 406, 316, 315, -282, 351, -127, -330, 211, 174, 482, -282, 430, -44, -191, 39, 70, 186, 387, 429, 136, 323, 366, -135, -336, -292, 308, -24, -405, -452, 423, -357, -194, -409, 458, 377, 442, 184, -453, 153, -142, -470, -277, -212, -14, 32, -320, -92, -282, -81, 189, -293, -258, 55, 72, -94, -385, -120, -266, -290, 280, 09, -146, -61, 100, 164, -184, 42, -152, -137, 47, -441, 245, 270, 199, 83, -198, -269, -157, 373, 151, -468, -68, -255, 440, -496, 152, -445, 237, -262, 118, 369, 248, -176, 160, -152, -160, 476, -257, 189, 192, 290, -400, -63, 413, -349, -127, -285, -117, 216, -60, -466, 249, 372, 131, 189, -271, -217, -404, 466, 22, -434, -313, 122, -110, 348, -178, -417, -324, 65, 272, 368, 208, -276, 158, 121, -125, -469, -312, 258, -401, 481, -356, 348, 353, 276, 389, -418, -89, -162, -100, -215, -96, 440, 407, -353, 288, 82, -270, 464, -353, -146, -315, -293, 430, -305, -320, -195, -274, 221, -84, -175, 202, 412, 26, 407, 188, 267, 490, -48, -395, 242, 237, 10, 182, 497, -491, 322, 431, -261, 287, -422, 445, -176, 138, 375, 19, 318, 32, -403, 39, 448, 274, -259, 361, -200, -351, 401, -432, -09, -147, -327, 85, -57, -465, 120, 292, -104, -58, 223, 487, -271, -347, 432, 405, 291, -341, -76, 110, 192, 373, 01, 140, 148, -405, 01, 448, 96, -97, -132, -61, -392, 394, -476, 51, 429, 144, 195, -174, -413, -82, -187, 168, 72, 98, 426, 215, 257, -150, 177, -51, -276, -321, -58, 372, -226, 443, -328, -278, 198, 41, 161, -341, 287, 185, -438, 216, 182, 258, -106, -379, 28, -440, -359, -48, -490, -433, -332, 267, 270, 345, 69, 494, -124, -489, -282, -498, -194, 242, -276, -143, 135, 385, 16, -78, 423, 78, -09, 105, 188, -263, -422, -283, 149, -281, 169, 159, -213, -311, 279, -443, -113, 200, -97, 263, 211, 473, 266, -483, -433, -158, -126, 203, -272, -258, -23, 03, 321, -180, -392, 09, 58, 38, -422, 59, 257, 248, 71, -456, -211, -150, -47, 176, -450, 356, 292, -387, -319, 410, -18, -251, -248, -291, 452, -20, -49, 281, 483, 124, -398, -57, -14, 160, 481, 64, 71, -409, 164, -358, -365, -194, -08, 441, 482, 394, 297, 274, -141, -169, 184, 342, 80, 437, -97, 384, 269, 354, 165, -395, 331, 267, 400, -183, 279, 382, -267, -149, 473, -250, -07, -40, 56, -162, -99, 38, -268, 51, 165, 444, 382, 201, 286, 314, 490, -311, 198, 260, -105, -137, -283, -274, -369, -383, 395, 410, -149, -19, 113, -176, 231, -393, -363, -213, -55, 390, -323, -471, 293, 342, 473, -473, 44, -389, 341, 386, 152, 39, 498, -452, 403, -285, 126, -114, -167, 374, 148, 184, -145, -238, -139, -414, 221, 350, 225, 18, 240, 402, 47, 386, 245, 373, 413, 141, -164, 255, 27, 489, 146, 26, -111, 49, 241, -133, 435, -74, -259, 436, -37, 448, -302, 324, -114, 419, 174, -389, -63, 266, -486, -164, 152, 259, 61, 66, 252, -250, 173, 131, -261, -181, -343, 480, -279, -249, -153, 08, -471, 441, -56, -08, 389, 142, 168, -224, 413, -158, -113, 202, -39, -99, -109, -387, 12, 452, -469, 116, -298, -444, -252, 293, -124, 257, 273, 449, -140, -27, -43, 242, -86, 402, -266, -197, 396, 403, 431, -338, 97, 171, 364, -442, -76, -245, 24, 437, 60, 55, 405, 262, 112, 05, 408, -160, 115, 181, -211, 475, -346, -402, -431, 420, -148, 156, 76, -251, 411, 07, 263, 08, -322, 127, 419, 103, -265, -57, 392, 295, -150, -351, 409, -186, 155, 317, 154, -230, 351, -205, 97, -143, -106, 167, -222, 246, 175, -294, -153, 86, 213, -390, -406, -256, -410, -135, -301, -175, -340, -57, -380, 11, 92, -471, 325, 99, -301, 332, 369, -450, -373, 319, 259, 21, 338, -463, 120, 13, -257, 467, -401, -191, -70, 45, 405, 20, 411, -396, 345, -77, 47, -183, 434, -361, -154, -388, -409, 397, -204, 460, -201, -77, -369, -441, -203, 469, -52, -231, 334, -456, -264, 433, -147, 166, 331, -242, -314, -406, 214, -117, 17, -239, 200, 304, 252, -101, -232, 343, -204, 64, -344, 96, -161, 139, 155, 136, 109, -45, -243, 295, -01, -06, -419, 352, 12, 412, -38, -449, -494, -324, -66, 375, 289, -13, -469, 42, 386, -201, 237, 34, 363, -255, -370, 55, 385, -363, 43, 346, 93, 301, 141, -408, 147, 222, -203, -341, 486, -389, 62, -156, -212, -151, -280, -423, 336, -249, 471, -426, 403, -439, 108, -382, -194, -409, 173, 43, -272, -283, -111, -327, -482, -469, 118, 165, -395, -233, -324, -408, -122, -409, 288, -482, -60, -492, -52, 128, 112, 271, 202, 15, 332, -190, 133, -09, -99, 159, -466, 482, 376, -76, 07, -254, 307, -23, -237, -236, 244, 291, 208, -25, 382, -03, -07, -178, 357, 441, 450, -31, 213, -496, -164, 397, -185, 470, 240, -432, 129, 275, -98, 357, 51, -238, -397, 210, -409, 218, 474, -312, 09, 183, 163, -108, -320, 08, -434, -463, -50, -483, 359, 15, -127, -305, 264, 188, 17, 05, -391, -02, 132, 363, 207, -317, -23, -338, 393, 69, 380, -281, 257, -110, -246, 272, -366, 286, -220, -300, -324, -418, -283, -465, 449, 91, 82, 214, 131, -400, 71, -408, 450, -297, -192, 158, 238, 285, -328, 483, 206, -447, -298, -37, 295, -43, 87, 429, 95, 368, -371, 271, 450, 199, 306, 400, 142, -111, 466, 125, 341, 389, -430, -357, -408, -122, -347, -318, 15, -174, -335, -278, -121, 219, -463, 26, 28, 477, -45, -376, 345, 84, 395, -353, 135, -446, -101, -223, 295, -135, -245, 488, 106, -175, -369, -450, -445, -215, -268, 70, 463, 249, -356, 194, 321, 34, -280, -151, 11, 175, 325, 208, 111, -427, 355, -253, -21, -245, 376, -226, 472, -17, -238, 79, 308, -107, 129, 363, -470, -286, 286, 493, 463, -218, -461, 284, 316, -241, -14, 179, 434, 163, -113, 398, -412, 95, -03, 67, -298, 225, 341, -326, -291, -397, -395, -483, 349, 235, -267, -269, -199, -481, 77, -236, -199, 116, -99, -30, 376, -261, 01, -338, -246, -259, -440, -157, 336, 409, -238, -462, 135, -396, 64, 344, 59, 170, -287, 260, 257, -54, -156, -442, 317, 421, 174, -29, 37, -73, 441, 265, -482, 294, -220, -227, -465, -160, 468, -277, 102, -270, 113, -263, 186, 30, -67, 98, -300, 146, 210, -191, -407, -446, 219, -238, 475, -107, 233, 365, -327, -474, 482, -309, 321, -238, -36, -292, 455, 284, 284, 57, -133, 249, -354, -95, -221, 79, -497, 331, -275, 214, -08, 170, -380, -289, 433, -52, 105, 166, -187, 278, 193, 147, -179, 366, -238, -362, -426, -283, 422, -290, -374, 141, 460, -228, -453, 91, 351, -450, -77, -72, -384, 415, -401, -263, -21, -468, 185, -416, -450, -150, -286, 243, -151, 35, 109, 111, -475, -464, 328, 448, -254, 454, 89, -294, 78, 488, 298, -71, -461, 73, 358, 07, 340, -191, -404, -181, 193, -367, 255, 243, -17, 469, -13, -315, 357, -52, 296, -266, -16, 477, -318, -417, -217, -376, -211, 362, -388, -61, 143, 03, -488, 01, -137, -295, -338, -41, 24, 355, 93, -220, 99, -72, 101, -62, 113, 310, -262, -90, -455, 223, -113, 79, -342, 170, -445, -53, 384, 20, -261, 28, -477, 103, -119, 238, 308, 44, -302, 185, -101, -357, 465, -150, 71, 418, 288, -315, 229, -473, 447, -374, -398, 186, 205, -240, 208, 261, -441, 93, -219, -202, -379, 156, -246, 02, 247, -438, -102, 445, 247, -350, -412, -436, 00, -489, 483, 141, 48, -436, 168, -05, -310, -378, -319, -253, 234, 390, -492, 293, -17, 141, -56, 456, 150, -450, 310, -103, -36, -291, 194, 64, -141, -366, 128, -289, -03, 463, 352, -454, -473, 372, 41, 69, 494, -425, 317, -420, 465, -323, -274, 300, -329, -478, -392, -327, -428, 418, 70, 36, -373, 116, -400, 338, -398, -419, -450, 99, -456, 402, 145, -76, 275, 39, -155, -379, 114, 14, -298, 431, 192, -72, -417, 363, 302, -309, -464, 374, -391, 458, -90, -263, 426, 363, -425, -472, 444, -23, 127, -160, -120, 125, -384, 07, -336, 314, 128, 278, -172, -318, -439, -480, 462, -356, -265, 264, -165, 123, 138, -56, 433, -99, -467, 359, 116, -39, -261, 412, 438, -281, -248, 170, 344, 221, -323, -140, 35, -342, -10, 363, -160, 51, -264, 155, 195, 323, -81, -118, 299, -90, -322, 232, -337, -288, 444, 279, -475, -317, 191, -185, -98, -205, 486, 98, -484, -337, 458, 403, -179, -52, -381, -486, -149, -145, 169, -454, 30, -60, 280, -171, 350, 459, -438, -487, 23, -494, -356, 48, 41, 335, 363, -204, -17, -299, -254, 351, -135, -295, 255, -462, -495, -274, -448, -143, 433, -427, 255, -37, 14, 36, 293, 216, -05, -293, -418, -482, 65, -274, 418, -394, -86, 281, 254, 397, 483, -499, -400, 200, 58, -293, -410, 63, -67, -05, 420, -134, 68, 176, 330, -66, 64, 475, -349, -441, -318, -267, -71, 247, 311, -153, -295, -275, -20, -188, -26, 315, -187, 427, 15, 371, -366, 106, 286, 68, -399, -441, 434, -479, -413, -384, -44, 151, -409, 107, 210, 125, -308, -09, 224, -497, 338, -218, 81, -182, 94, -445, -366, -241, 482, -499, -18, -383, 459, -232, -463, -88, -173, -177, -66, 266, -60, -258, -83, 383, 349, -21, 361, -107, 470, 85, -104, 308, 367, 477, -21, 313, -115, 465, -428, 219, -182, 54, -312, -222, -325, -275, -458, 02, 401, -24, 121, -159, -430, -462, 76, -229, 18, -63, 164, 340, -477, -87, -499, -258, -110, 332, -444, -373, 297, -372, -301, -385, -465, -113, 245, -290, 465, 288, -436, 366, 116, 185, 59, 187, -424, -13, 458, 446, 425, 123, 286, -200, -112, -361, 42, 278, 471, 450, -242, 268, -69, -43, -264, -34, -304, 481, -472, -339, -379, -408, -121, 238, -370, 438, 277, -294, -74, 235, -348, 203, 210, -210, -497, -402, -70, 397, -271, -99, -300, -13, 22, 131, -204, 258, -403, -08, -409, -23, 154, 65, 69, -115, -197, -449, -176, -420, -243, -398, -333, 261, -343, -270, -448, 12, -172, -18, -91, 409, -265, 109, 248, 257, 92, -456, 367, -459, 389, -189, 18, 43, 376, -60, -220, 31, -09, 456, 111, -399, -442, -370, -286, 67, -140, -234, -421, -459, -400, 341, 450, 188, 302, -449, 297, -105, -53, 165, -64, -164, 476, -193, -269, -296, 247, 12, 235, 90, -32, 198, -457, 379, 328, -242, -54, 41, 376, 26, 82, -171, -133, 384, -483, 21, -213, 314, 416, 235, 331, 205, -429, -341, -136, -197, -137, -37, 315, -50, -447, 135, -352, -51, 14, -171, 207, 461, 370, 435, -13, 304, -236, -294, -460, 133, 227, -172, 300, 496, -437, 131, -447, -366, 291, -83, 289, 06, 380, 456, 457, -215, 92, -43, 234, -394, 286, 293, -433, 156, 229, 406, -40, -155, -36, 01, 479, 44, -319, 279, 392, -256, -90, 445, 230, 53, -138, 372, -88, 94, 328, 221, 379, -80, -322, 466, 379, 465, 259, -202, 473, -12, -295, 286, 334, -479, 139, -335, 65, 320, 444, 309, -84, 206, 254, -354, 112, -32, -482, -124, -438, -301, -403, -206, 471, 127, -240, 350, 444, -129, -351, 418, 360, 206, 204, -454, -421, 195, -289, 497, 15, 07, 306, 431, -287, 61, -71, -323, -119, 300, 53, 296, 499, -498, -410, 470, 130, 202, -327, 426, -427, 174, 344, -215, 232, 400, 183, 311, 95, -254, -340, -38, 253, 467, -107, -181, 380, 323, -04, -239, 123, -98, -91, 474, 256, -01, 444, -114, 53, -31, -187, 479, -05, 09, -236, -273, 262, 448, -109, -143, -306, 51, 320, -200, 18, 65, 119, 250, -112, -33, -488, -137, -279, 273, -163, 478, -227, 134, 216, -322, -45, -471, -343, 451, 391, 274, -322, 153, -426, 421, -138, 120, -27, 34, 420, -157, -400, 391, -406, 340, -141, -42, 56, 80, -269, -255, 410, 356, 379, 127, -465, -165, -492, 44, 138, 399, -182, -332, 404, 244, -410, -233, -135, 63, -347, -215, 406, -247, 29, -500, -54, 388, 310, -498, 320, -458, -253, 231, 398, -21, 210, -215, -334, 218, 330, 304, 118, 00, 472, 374, -255, -438, -359, 110, 477, 147, -253, 384, 400, -372, -264, -154, -484, -101, 200, -311, -59, -200, -228, 191, 279, 482, 477, 445, -448, -341, -399, 170, 159, -427, 397, -244, -12, -110, -282, -35, -463, 318, 201, 438, 446, -210, 136, -185, 189, 189, 04, -18, 489, -372, -327, -380, -38, -350, -435, 14, 161, 18, 37, -179, 443, -66, 429, -69, 324, -352, -251, -286, 466, -198, 04, 412, 92, -08, -273, 133, -319, -417, -385, 22, 63, -211, 142, -475, 291, -441, 392, -47, 77, -71, -374, 21, -285, -445, -196, -109, -297, 53, 105, 21, -292, -391, -66, 300, 454, -487, 286, -365, -51, 401, 158, -488, 42, -200, -110, 186, -140, 134, -361, -211, -85, -235, 310, 130, 172, -385, -127, 376, -480, -169, 249, -272, 292, -317, -119, 246, 49, -333, 382, 498, -80, 392, -138, -185, 44, 252, -499, 404, -114, -360, -306, -347, 257, -144, 283, 281, -29, 09, -491, 344, 340, 259, -428, 132, 442, 305, 231, -09, -176, 465, 341, 245, 357, -296, -440, -99, -192, -87, 158, -453, 53, -296, -300, 162, 60, -164, -57, -116, 345, -47, 80, -463, 64, -496, 169, 06, 310, 252, -150, -366, 217, 43, -269, 74, 247, 143, -172, -92, -444, 486, -45, 461, -310, -493, 475, -398, -157, 271, 338, -312, -276, -82, -275, -360, -77, -253, 146, 85, 499, -152, -429, 217, -256, 155, 143, -157, -202, 471, 251, 207, 457, -294, -480, -01, 66, 496, 454, 409, 267, -356, -50, -157, 63, 175, -17, -162, -226, -19, -225, 126, -318, -154, 195, -74, -147, -162, 269, -496, -190, 21, 211, 119, -421, 231, -29, 145, -421, 277, 407, 346, 421, -143, 41, 336, -468, -476, 26, 159, 358, 301, -215, -460, 00, 480, 318, 353, -182, 87, 357, 480, -40, 420, 452, 40, -496, -77, 37, -417, -300, -56, -218, -27, 301, 323, -190, -314, -300, 336, 345, -442, 138, -18, -50, -10, -38, -232, 195, -368, -293, 53, -35, 168, 325, -83, 60, 329, -308, -403, -235, 244, 394, 399, 69, -453, 222, 379, -267, -226, 216, -70, 184, 206, 412, -14, 48, 226, 254, -257, -289, 462, -352, -472, 482, 474, 297, 42, -345, 489, 491, 272, -415, 385, 171, 154, 433, -106, 386, 18, -480, 102, 449, 205, 160, -287, -309, -292, -208, -202, 303, 03, 112, 452, 31, 94, -222, 180, -364, -67, -479, -21, -294, -394, -135, -271, -388, 150, 475, 498, -332, 496, 452, -383, -447, 464, 183, 96, 24, 475, 394, -172, 330, 358, 132, 213, -48, 410, -107, 440, 195, -86, -80, 401, 372, -363, -369, 484, 287, -42, -165, 455, -46, 139, -75, 07, 456, -392, -44, -20, -417, -150, -340, -235, 61, 292, 478, -135, 202, -129, 158, -102, 285, -422, 151, 157, 67, -366, 493, -146, 93, 180, 161, -453, 172, -414, 407, 128, 46, -137, -392, 481, -435, -231, -254, 478, -87, -276, -156, -384, 95, -498, 366, 232, -68, 17, 241, 499, -496, 235, 205, 97, 267, -134, 496, -61, 305, -245, -433, -149, 470, 28, -167, -112, -351, 79, -134, 62, -344, 210, -470, -397, 212, 396, 336, -356, 266, 77, -05, 270, 164, -300, 219, -68, 67, 215, -277, -128, -177, 143, 223, -207, -329, -92, 181, -180, -160, -452, -266, -04, 258, -235, 451, 323, -339, 287, -181, -221, 217, 315, -451, -119, -485, 268, -335, 82, 336, 241, -194, -341, -116, -118, -48, 55, 290, -14, -273, -18, 34, -39, -170, 144, -422, -218, 319, 92, -431, -361, 371, 286, 454, 421, 20, 469, -459, -463, 404, 377, 278, -290, -464, -338, 444, 341, -431, 235, -173, -204, 69, -287, -390, 400, -291, -312, -318, -119, -368, 103, 20, -496, 242, 326, -223, -238, -353, -182, 151, -449, -304, -70, 114, 84, 92, 410, -75, -486, 145, -396, -190, 67, -183, 272, -33, 379, -187, -499, -240, -55, 104, -368, -51, 198, 458, 226, -188, -395, -103, 464, 09, 93, -106, -25, -323, -162, -115, 455, -148, -117, -441, -485, 450, 229, 287, 269, 460, -400, 270, 72, 46, 226, 204, -153, -75, 162, -74, 237, -381, 323, 201, 480, -84, -405, 307, 445, 286, -307, -248, -362, 428, 164, -347, 378, 245, 441, 499, 205, -107, 269, -223, -209, -05, -167, 139, 420, -153, -83, -490, 318, -260, 211, 299, -492, -341, 106, -195, 445, -349, 58, -417, -421, 74, -263, -191, -181, 30, -192, -124, -225, -71, -495, 67, 425, -162, 58, -303, -463, 475, -293, 355, 67, -229, 154, 75, -70, 113, -268, 227, -384, -358, 310, 48, 216, -101, -291, -113, -219, 18, 263, 57, -201, -380, -24, -276, 310, -466, 274, 347, -139, -167, 203, 428, 104, 209, 355, -466, 174, -61, -387, 291, 82, 424, -161, 150, 175, 48, -462, -191, -82, -347, 366, 218, -226, -158, -206, -64, 228, -80, -216, -411, 254, 487, -131, -142, -452, 76, 245, 223, -485, 358, 14, 97, -366, -295, -252, -338, 253, 138, -29, 24, 291, -163, 94, -83, -469, -260, 354, 259, 161, -10, -300, -85, -23, 69, -375, 377, -355, -278, 100, 12, -419, -34, -390, 67, 171, 210, 229, 277, -152, -300, -199, -09, 389, 395, -239, -228, -13, -385, -117, -352, 105, 83, 415, -66, 04, -459, -189, -499, -237, -236, 14, 196, 230, 476, 116, -98, 186, -155, -321, -466, 398, 332, 377, -361, -421, -362, -88, 66, -247, 295, 215, -290, 231, 130, 496, 87, -477, 160, 89, 139, 424, -45, -165, -494, -69, 451, -92, -383, 149, 439, 03, 399, -377, -120, -462, -298, 19, 302, -379, -376, 450, -312, 187, 181, -330, 183, -232, -306, -157, -291, 333, 119, -484, 20, 126, -53, 324, -114, 416, 325, 178, 271, 224, 301, 04, -386, -144, -477, -231, -23, -01, -281, -483, -314, -248, -313, -278, 372, -119, 417, -66, 66, 37, -50, -61, 15, -250, -237, -247, 18, -412, -217, -210, -336, -415, -354, 130, 293, 21, 399, 122, -480, -30, 139, 59, 222, 326, 281, 447, 60, 198, -119, -374, 87, -317, 65, -46, 285, -320, -440, -196, -232, -157, 446, 284, 280, -408, -85, 73, 113, 166, 47, 485, -363, -314, 44, -289, -135, 177, 10, 425, 228, -257, -449, 167, -73, 469, -378, -288, -351, 34, 368, 270, 377, 314, 406, -490, 406, -179, 435, 371, -160, -17, 357, -23, 169, 253, -460, -466, -69, 51, 459, -341, 294, -137, 326, 73, 184, -200, -362, -315, 334, -494, -193, -436, -327, -286, -426, -69, 387, -491, -197, -273, 344, 12, -444, 14, -235, -403, 400, -452, -500, -288, -293, -354, 427, -114, 220, 463, -462, -290, -352, -275, -284, 308, -211, 241, -478, 215, -327, 409, -424, 328, -11, 421, -160, 45, 287, 457, 142, 187, -494, 142, -249, 65, 289, -322, 451, 361, -359, 490, -429, 142, -285, 139, -50, 356, -119, 324, 423, 54, -415, -149, 234, 74, -228, -426, -380, -89, -469, -386, -49, -111, 257, 202, 455, 398, -267, 406, -389, 226, -252, -318, 220, 315, -327, 22, -477, 54, -154, -202, -40, -68, 150, -306, -494, -226, 120, -374, 186, -496, -259, -11, 245, -150, -309, 200, 100, 276, 459, 211, 355, 59, -255, 75, -125, 270, -402, 250, 177, 296, -451, -11, -272, 199, -464, 87, 473, 156, -435, -489, -488, 158, 00, 258, -492, -456, -42, 460, -328, 269, -477, -473, -171, 120, 455, -444, -109, -95, 306, -432, -299, 355, 57, -70, 406, 93, -131, -268, 102, -66, -257, 114, -407, -404, 224, -47, -360, -317, -86, 164, -196, -63, 192, 133, -90, 147, 189, 301, -448, 348, -279, -247, 203, 278, -465, 462, 224, -96, -306, -174, -309, 289, -208, -216, 385, -483, 237, -123, -300, -349, -458, 356, 441, -414, -10, -149, 233, 31, 04, -363, -121, 225, 242, -65, 355, -370, -103, 79, 386, 443, 405, -423, -416, -302, -139, -178, -285, -401, -449, 267, 102, -407, 475, 395, 31, -35, 98, 116, -151, -398, 253, 228, -321, 348, 15, -465, 478, -236, 114, 364, -293, 372, -206, -208, -78, 155, 114, 489, -394, 165, 256, 209, -389, 231, 456, 494, 49, 55, 111, 398, -491, 216, 478, -311, 64, -06, 76, 394, 258, -310, -389, -182, -86, -95, 462, 336, -88, 428, 325, 19, 445, 433, 80, -444, -483, 36, -97, 418, -57, -486, -332, -47, -418, -354, 494, 499, 492, 70, 393, -397, -388, -144, -79, 379, 261, -117, -433, 26, -189, -255, -455, -244, -322, 477, 165, 47, 13, -432, 317, -191, -66, 485, -386, 368, -16, -40, 367, -24, -118, -387, 79, 346, -31, -500, 225, 83, 235, 293, -391, -102, -462, 06, 155, 68, -17, 172, -32, 496, -408, -215, 157, 378, -229, 271, 246, 255, 83, 114, 83, 465, 227, -337, 312, 48, 15, 37, -369, 103, 182, 92, -499, -428, -402, -492, 141, 81, -468, -391, 430, -376, 246, 87, -498, -483, 211, 249, -376, -206, 215, -440, -240, -58, 75, -428, 490, -410, 461, -26, -455, 496, -434, -101, -432, -335, -93, 209, 246, -60, -330, -472, 416, 417, 116, -229, -214, 179, -480, -89, 473, 235, -29, 85, 29, -102, -491, 371, -12, 471, -155, 386, 467, 264, -215, -465, -219, -456, -403, -473, 336, -233, -444, 253, 36, -476, -476, 323, 203, -104, 86, -472, -17, -91, 114, -136, 307, 123, -265, 147, 446, 433, 33, -235, 197, -330, 153, 478, -285, 250, -143, -97, -131, 265, -344, 406, -359, 32, -419, 344, -220, 167, -275, 263, -424, 339, -373, -265, 314, 215, 382, -387, 148, 268, -122, 197, 438, -117, 175, -347, -15, -116, 409, 355, 02, -435, -387, 143, 450, 46, 340, -270, -287, -435, -154, 141, -244, 325, 376, -78, 40, -390, 35, -312, 378, -234, -263, 317, 149, 412, -178, -365, 149, -269, -158, -349, 149, 307, -354, 451, -147, 486, -319, 418, -97, 379, 59, -489, 205, 287, -66, 97, -251, -179, -362, -372, 87, -125, -203, 89, 140, 119, 224, -211, -297, -82, 292, 352, -275, 438, 303, 78, -223, -164, -04, -468, 68, -93, -456, -227, 46, -22, -278, 295, 299, -140, -225, 239, 236, 72, -172, -124, 44, -96, -483, 247, 322, -339, 451, -453, -401, -394, 477, 228, 294, 325, 261, -138, 84, -343, 487, -370, 135, -290, -223, 286, 422, 53, 377, 158, -23, -295, -114, -479, 461, -97, -380, 283, 416, -77, -318, -484, 381, -341, -404, 176, 484, -291, -110, 68, -134, 230, -450, -147, -208, 180, -08, -286, -267, -131, -275, -438, 427, 463, -64, 388, 219, 56, -476, 135, -168, -294, -497, -287, 218, -400, -259, 202, -191, 484, 123, -472, -434, -475, -119, -142, 205, -275, 424, -210, 447, 01, -147, 374, -35, -359, -386, -316, 197, -362, 319, -119, 197, 323, 95, -85, -225, -312, -31, 436, 24, -56, 464, 90, -30, 198, -200, -325, -225, 77, 318, -278, -422, 23, -404, 395, 164, 63, -421, -139, -447, -249, -405, 250, -426, 190, -335, 201, -270, 487, 137, 255, -69, 102, -155, 401, 152, 146, -71, 427, -277, -253, -350, 153, 270, 98, 49, -66, 13, 480, -353, 67, -269, -258, -183, 157, -216, 335, -142, 15, 322, 496, 122, -247, 450, -181, 07, 102, 465, 436, 381, 40, 35, -117, 46, -195, -166, -405, 239, 347, -425, -262, -86, -193, -19, -416, 464, -383, -229, -177, 484, -55, 171, 106, -450, 121, 426, 57, 75, -257, 345, -44, -364, -120, -308, 182, 185, 26, -371, 276, -127, -296, -485, -360, 363, 348, -276, -320, -183, 347, 355, -198, -208, 26, 408, -158, -01, -314, -248, -426, -70, -403, 382, 66, -22, -426, -252, -337, 100, -123, -208, -174, 433, 159, -34, -351, 359, -458, -171, -324, 389, 36, -22, 33, -438, 239, 375, 413, 425, -373, 487, -145, 77, 369, -227, -445, 444, 21, 70, 396, -250, 362, -278, 36, 373, 188, 185, 232, -418, -134, 409, 471, 402, 239, 356, -184, -22, -416, -271, -96, -289, -284, -389, -360, -63, -115, -305, 233, -242, 266, 130, 361, 480, 352, -103, 354, 393, -66, 438, 475, 300, -301, -201, 202, 439, -345, -130, -83, -261, 99, -327, 303, -333, -215, 443, 456, 170, -09, 190, 428, -243, -180, 289, 89, -328, 38, 295, -83, 472, 234, -107, 272, 433, 192, 326, -276, -301, 48, 494, 291, -353, -333, 94, 166, 304, 389, 123, -26, -120, -187, 255, 489, 485, 396, 431, 09, 287, 226, 427, 259, 312, -180, 384, -402, -136, -438, -178, 415, 111, -184, 206, -390, 336, -200, 277, 140, 42, -100, -33, 422, -435, 74, -236, -450, -30, -305, 59, -243, -227, 338, -131, -414, -342, 105, -316, 374, 167, 358, 290, -222, 27, -04, 241, -137, -351, 18, -145, 191, -230, 322, 465, -165, 248, 81, 237, -281, 276, 148, 328, -450, -13, 49, -12, 497, -346, -476, 372, 322, 382, -486, -48, -91, 362, -307, -376, -489, -437, 332, -446, -167, -494, -128, -480, 255, 453, 257, -174, -418, -94, -346, -16, 393, 204, 472, 390, -290, 496, -386, -116, -270, -372, 337, 140, 491, -118, -384, -146, 298, 448, 261, -369, -193, -367, -348, -438, -62, -239, -112, 20, -481, 394, -496, -236, 450, -172, 07, -339, -176, 121, 45, 55, -398, 234, 47, -407, -31, -485, 299, -233, -184, 60, -102, 123, -455, 402, 185, -16, 16, -75, -144, 35, -181, -139, -348, -230, -459, 159, 283, 218, -220, -172, 125, 234, -85, -328, -321, 384, 39, 479, -349, 355, 39, 401, 330, 437, -344, 367, -79, -476, -208, 277, 411, 464, -10, -437, 86, 32, 222, -131, -250, -145, -451, 375, -411, -36, -101, -231, -152, -210, 100, 351, -354, -09, 253, -172, -72, -239, -304, 349, -215, 340, 479, -304, -344, -31, -240, 242, -147, -166, -37, 103, -459, 13, 330, -369, 477, 81, 252, 178, 372, -148, 29, -482, -305, -218, 198, 124, 43, -254, 325, -320, -61, 304, -123, 95, 126, 489, 190, 479, -177, 05, 435, -135, -482, 265, 348, -152, -153, 452, -474, -281, 156, 55, 89, 351, -310, 139, 327, -415, 386, 153, -234, -175, 309, 143, -228, -65, 484, -186, 267, -193, 320, 202, -476, -310, -33, -276, 38, -334, -324, 64, 237, 332, -380, 178, -464, -190, -182, 363, 247, 56, 368, -487, -267, 178, -492, 357, -35, 492, -328, -268, 152, -156, 434, -472, 34, 254, -247, -427, -228, -71, 137, -490, 114, -391, -460, 150, 271, -142, 365, 19, -234, 234, 32, -01, -88, 393, -143, 377, 385, 29, -38, 37, 373, 248, 66, -93, 02, -329, 332, -373, 452, -30, -11, 66, 431, 29, 68, -445, -260, -66, 74, 06, -332, -42, -494, 432, -149, -137, -339, 89, -256, 123, -22, -31, -128, -104, -272, -274, 67, -439, -147, 20, 383, 342, -62, 314, -128, -493, 369, 112, -59, 295, -382, 461, 106, -24, 393, 457, 339, -446, 398, -65, 178, -123, 404, -98, 273, -367, 480, 193, -306, -166, -287, -71, 28, 151, 95, 400, 158, 317, 364, -49, 112, -165, -88, -282, -337, 157, 28, -497, 212, 278, 290, 242, -345, 195, -04, -219, -320, -24, 474, -126, 310, -313, -345, -161, -310, 250, 91, -299, 67, 308, 152, 32, -05, -83, -398, 158, -426, 130, -487, 286, -91, 304, 380, 416, 351, -124, -303, -469, 353, -329, 257, -485, 210, 412, 206, 401, 162, -202, -398, 82, -42, -394, -386, -195, 23, -284, 463, 450, -301, 477, 236, 460, -367, 469, 376, 484, -155, -74, -485, 50, 97, 272, 66, 160, 184, -228, 61, 198, 422, -485, -220, 232, -379, 246, -463, 145, -185, -499, 95, 14, -170, 183, 326, 315, 152, 202, 299, -150, -20, -334, 400, -70, 438, -34, -410, 474, -409, 151, -476, -487, 166, 157, -402, -361, -97, -365, 284, -430, -12, 231, 84, 318, 267, -90, 485, 271, -35, 284, -379, -203, -198, -126, 227, 92, -308, 317, 66, 135, 320, 443, 149, 338, 100, 247, 478, -145, -266, -386, -74, 223, -302, -138, 393, 465, 273, 379, -412, 90, -485, -290, 387, -182, 436, 115, 410, -20, 284, 329, -384, 105, 272, -383, -57, -128, -284, 273, -421, -50, 388, 05, -327, -414, 368, -433, -97, 493, -202, -09, 435, -187, -447, 322, 131, 489, 289, 394, -30, 74, 223, 438, 31, -05, -445, -174, -281, -229, -400, -202, -427, 488, -344, -253, -74, -476, 166, 329, -131, -184, -180, -196, 129, -126, -374, 113, 215, -232, 07, 37, 342, -270, -25, 225, -423, 382, -449, -204, -347, -349, 446, -273, -09, -398, 326, 417, -22, 344, -402, 347, -340, 271, -349, 289, -03, 130, 254, 64, 398, -239, -398, -408, 343, 429, 317, -228, -336, 368, 420, -183, -128, 367, 396, 363, -179, -426, -367, 300, -230, 83, 147, -70, -146, 299, 72, -297, -71, -174, 268, 179, 440, -278, 271, -365, 03, 88, -92, 167, 308, -172, -163, -320, 47, 85, -104, 369, 160, 381, 169, 430, 316, 168, 213, 23, 319, 137, 226, 100, 463, 346, -221, -245, -432, -450, 243, 72, 490, -349, 91, 299, 331, 428, -169, 231, 14, -421, 100, 26, 460, 121, 308, -371, 141, 21, 152, -39, -342, 230, -439, -26, 77, -159, -419, 497, 243, 324, 69, 234, -173, 13, 33, 11, -59, -284, -258, -193, -204, -306, 333, 108, -333, 142, 237, 308, 15, -111, -231, -474, -380, 183, 352, -451, -476, 433, -454, 267, -390, 468, 01, -63, -19, -114, 448, 422, 103, 42, -270, 399, 236, -85, 07, -245, -443, 97, -436, 425, 486, 185, 451, -42, -132, 303, 07, 244, -412, 54, 12, -302, 374, -135, 488, -145, 252, 436, 129, 207, 331, -289, 458, 419, 127, 317, -325, -464, -86, -261, -187, -99, -224, -236, -289, 145, -81, 219, -111, 360, 125, -247, -442, 351, 119, -102, -294, 223, -165, 335, -70, 18, -101, 240, -63, -474, 57, 112, -86, 472, -297, 228, 225, -20, -156, 436, -23, -384, -493, -282, 476, 484, -28, -114, 335, -57, 285, -459, -334, -28, -271, 448, 490, 128, 188, -73, -494, 97, -460, 272, 69, 95, 00, -206, -425, -303, -269, 404, -187, -262, -377, -211, -277, 95, -473, -90, -110, 312, -48, 56, 136, -467, 356, 126, 161, 396, -94, -481, -07, 298, 291, -85, -107, 144, 209, 321, 341, -208, 225, -346, 383, 348, 295, -42, 295, 322, 368, -315, 487, 172, -407, 123, 205, -199, -250, 218, -303, -492, 237, -457, 306, 381, 310, -301, 25, 19, -480, -134, -336, -402, 372, -453, 446, 167, 357, -406, 341, 225, -221, 328, -102, 225, -48, -45, -474, -446, -326, 76, -438, 411, 471, -280, -356, 281, 271, 169, 152, 292, -113, 316, -258, 111, -285, -312, 130, -428, 134, -28, -350, 414, 152, 400, 491, -44, -145, -483, 10, 29, 445, 424, 293, 416, -04, -211, -451, -232, -189, 202, -88, -450, 370, 154, 162, -62, -306, -208, 362, 329, -384, -488, -405, 269, -236, -414, -275, 472, -45, -412, 01, -99, -136, 146, 169, 361, -212, 219, -371, 99, 273, 41, 149, 143, -305, 163, -419, 241, 456, 444, 70, -76, -192, -483, -307, 73, -397, 271, 45, 411, 359, -102, 164, -277, -103, -167, -64, 185, -96, 65, 136, -323, -42, -215, -327, -495, 449, -246, 247, -243, 50, 169, -467, 359, 187, -273, 284, -358, 498, 181, -447, -291, -421, -431, 284, 328, -97, -279, 13, -341, -362, 01, -163, 97, 287, 362, 102, -412, -384, 201, 197, -481, -129, 230, 378, -90, -191, -486, 52, 159, 195, 458, 368, -374, -473, -495, 455, 282, -274, 320, 442, 216, -178, 131, -187, -39, -07, -232, 49, 461, -179, 98, 480, -456, -172, -290, -46, 490, 76, -141, 149, -229, -183, 370, -102, 196, -273, 205, 331, 305, 25, -375, 21, 347, -392, -313, 160, 453, 307, -291, 414, -372, -341, -253, 25, 340, 309, 479, 330, -114, -162, 331, -491, -493, -447, 259, -444, -220, -36, 387, -415, 490, -488, 459, -311, -380, -354, 350, -427, -195, -89, -161, 285, 71, 438, -190, -89, -400, -210, 93, -14, 480, 276, 347, 488, 330, 107, -456, -38, -429, -217, 400, -87, -205, 359, 103, 267, -143, 305, 340, 162, 68, 31, -53, -09, -30, 258, 402, 70, -100, 347, -92, 232, 124, -245, 220, -46, -286, -384, -232, -214, 251, -332, 199, -454, -473, 154, 313, -116, 311, -495, -102, -120, 37, -302, 371, -493, -192, -374, 429, 208, -175, -163, -60, 449, 444, 13, 255, -341, 481, -476, -55, 233, -308, -04, -369, 72, 03, -203, -192, 166, -198, 207, -102, 339, -243, 122, -302, 65, -400, -373, 125, -75, -36, -83, 227, 261, 430, 334, 420, -236, 358, 217, -151, -97, 65, -20, -173, -432, 277, 135, -413, -68, 194, -15, -229, 451, -393, -30, 368, -293, 97, -07, 485, -86, 411, 212, -325, -307, 46, -53, 309, 257, -336, -342, 12, 229, 491, -309, -350, -380, -322, -263, 52, 373, 222, -324, -324, -318, 146, -103, 241, 95, 390, 226, -139, -347, 290, 388, -153, -163, -165, -344, -54, -01, 167, -190, 81, 158, 01, 231, -370, 179, 468, 183, 404, -458, -289, -67, -276, -291, 330, -182, 304, -428, -456, 18, -274, 335, -94, 73, 24, -406, -419, -178, 445, 248, 132, 26, -94, -15, 109, 389, 16, 77, 72, -79, 472, -365, -294, 48, -156, -464, 366, 00, -392, 411, -482, -166, -402, 277, -241, 474, 371, -159, 148, -332, -411, 132, -453, 348, -383, 156, 237, 133, 86, 161, -94, 58, 296, 112, -394, -360, -500, 473, 140, -391, -264, 159, 295, 186, 288, -445, -488, -489, 248, 160, -321, 337, -208, -274, 185, 261, -265, 274, 246, 321, -65, -347, 231, -269, -383, 337, 223, -382, -338, -136, 79, -102, -125, -126, -64, -337, 281, -52, 26, 29, -392, 205, 219, 252, -216, 256, 365, 371, 31, 112, 192, 466, -383, -77, 50, -266, 112, -227, 204, 275, 137, -217, 25, -136, 158, 462, 27, 291, 262, -95, -179, -277, -389, -460, 475, 247, 296, 341, 470, 179, 305, 162, 146, -226, -63, 48, 08, -451, 321, 65, -324, 311, 348, 202, -325, 358, -484, -445, 150, 278, -40, 471, -499, 423, -137, -171, -478, 11, 22, 492, -309, -173, -494, -311, 453, -57, 237, -39, 345, 410, -122, -127, -427, -273, -73, -251, -415, -57, 156, -413, 74, -32, -90, 427, 244, 273, -244, 266, 137, -370, -389, 328, 309, -383, -131, 262, 413, -394, 76, -390, -132, 454, -17, -58, -319, 411, -457, 119, 206, 199, -442, 132, -333, -31, 60, -237, 94, -332, -470, -269, -201, -07, -89, -392, 110, 280, 371, 375, -262, -53, 485, 107, -99, 321, -451, 435, 232, -408, 406, 290, -357, 464, -77, 162, -67, -165, 426, -120, 03, -192, 111, 302, 301, -125, -237, -89, -345, -366, 139, 246, 433, 124, -147, -166, -55, 254, 121, 29, -302, 27, -180, -159, 344, -405, -497, 129, -70, -219, -491, 433, 89, 473, -412, -110, -152, -149, -346, 355, 337, 293, 101, 270, 269, -194, -396, -285, -440, -422, 244, -242, 105, -84, 451, 301, 363, -193, -69, -207, 88, -60, 79, -322, -87, -481, 420, 261, -130, -74, 117, 59, -281, 70, -171, -159, 377, 285, 56, 437, 363, 152, 48, 321, -79, -01, 122, -216, 306, -447, 430, 247, 346, 361, -223, -241, 380, -303, -127, 102, 476, -158, -339, 47, 412, 342, 388, 289, 127, 296, -421, 343, -51, 127, 164, -278, -22, 138, 358, 137, 192, 288, -116, 38, 149, -487, -351, 381, -290, 22, -17, -314, 364, 496, 234, 277, 338, 474, 418, -34, 271, 497, -191, 72, 476, -175, 294, 307, 463, 152, -56, -493, 293, -320, 397, 294, -307, -453, 176, 255, 69, -341, -206, 286, -344, -120, 415, -154, -146, 333, 312, -375, -317, -27, 197, -341, 298, -09, -182, -386, -04, 262, -379, -211, -206, -481, -417, -13, -434, -389, 95, 487, 123, 389, -375, 279, -231, -460, -23, 123, -274, -210, 249, -91, -385, 298, 420, -234, -210, -261, -120, -362, -147, 353, 279, 148, 372, -286, -13, -210, -174, -418, 130, 449, -177, 255, -420, 92, -352, 57, 68, -126, -301, 169, -365, -185, -33, -93, 433, -391, 498, -187, -253, -148, -334, -122, -148, -109, 93, -309, 181, 419, 126, 163, -280, 449, -81, 152, 394, 419, -291, 314, 145, 261, -17, 280, -424, -198, 39, -139, -88, 38, 174, -489, -258, -308, -110, 94, 435, -165, -363, 469, 106, 263, 132, 326, -435, -97, -22, -189, -178, -461, -375, 467, 300, 108, -401, -272, 410, 139, 89, 174, 29, 115, -462, 271, -340, 280, 217, -405, -385, 354, -436, 221, 470, 197, 399, -465, -400, 229, -154, 275, 268, -29, -406, 421, -69, -306, -351, 193, -315, -409, 220, 214, 206, 258, -15, 366, 38, -298, 462, 153, -92, -474, 226, -122, -425, 477, -87, 28, 206, -389, -197, 326, 434, -103, 247, -135, 443, -251, -89, -372, -160, -369, 342, -102, 389, 179, -235, 279, -267, 79, 284, 142, 457, 362, -480, -467, 339, 286, 61, 45, 397, -284, 223, -316, 465, -29, 49, 409, 220, -188, -111, -88, -57, 84, 310, 184, -237, -73, -37, 349, -494, 99, -09, -184, -39, 363, -151, -200, 149, -238, -303, 399, 330, 421, -417, 295, 244, 484, -444, 316, -203, 298, -272, -408, -118, -462, 277, 497, -34, 92, 346, 324, 44, -163, -360, -495, 53, 341, 158, -298, -45, 355, -47, 137, -372, 388, 285, 372, 373, 341, 188, 22, 139, -232, 114, -127, -193, 243, -129, -375, 188, -283, -199, -268, 407, 294, 89, -40, 487, -253, -486, -57, -45, 320, -68, 435, 208, -283, 308, 81, -441, 348, -397, -450, -383, -430, -76, 276, -335, 295, -247, 353, -136, 54, -63, 123, 200, -121, -417, 188, 126, -50, -369, -67, -230, 63, -131, 478, 281, 29, 412, -308, -123, -133, 94, 346, -63, -482, 474, 455, -335, -273, -340, 382, -366, 98, 05, 334, 477, 441, 22, 455, -109, -495, -111, -487, 421, -390, 491, -446, 139, 403, 98, -132, 123, -308, 67, -440, 63, 41, -133, 228, -379, 28, 462, -245, -374, -32, -59, -45, 261, 464, -90, -348, -179, -349, 17, -258, -239, 08, -204, -248, 264, 394, 121, -113, -61, -312, 299, -498, -419, 19, -418, -298, -453, -455, 309, 25, 13, -249, 480, -226, 67, 242, 278, 388, -254, -205, -17, 07, -345, -369, 260, -229, -474, 233, -490, 317, -227, 310, 319, -146, -171, 401, 57, 228, 446, -134, -247, 311, 469, -267, -63, 36, -173, 67, -75, 73, 362, -240, -67, -130, -109, -307, 141, 269, -222, 152, 86, 51, 314, -95, 405, -05, 159, 314, -277, 105, -319, -24, 269, 02, -439, -294, -461, 240, 274, 316, -186, 488, -424, 247, -142, -33, -208, -148, -263, 70, -496, 323, -27, -330, 81, -122, 165, -260, -307, -260, -303, 226, -432, 466, 80, -19, 25, 119, -279, 151, 287, 35, 139, 363, -218, -150, 183, 426, 202, 420, 348, -442, -405, -179, -272, -472, -448, 393, -232, -255, -15, 318, -177, 53, -364, 403, -466, 161, 375, -245, -188, 162, -357, -196, 378, 277, 154, 61, 204, -144, 333, 52, -86, -220, -274, 142, -191, -222, 387, 429, 375, 224, 247, -302, -223, 384, -47, 163, 397, -172, -230, -290, -157, -87, 14, -279, -309, 20, -366, -253, 376, -181, -349, 142, 99, -123, 136, -240, 155, 375, -310, 30, 99, -211, -420, 376, 25, 34, 391, -77, -286, -339, 485, 409, 75, 351, -18, -382, -129, 116, 217, 99, -213, 368, 93, 387, 98, -271, -01, -247, -396, 189, -364, 203, -169, -284, 431, 356, -398, 322, 131, 169, -165, 116, 78, -238, 319, -439, -120, -310, -471, -51, -359, -183, -182, 234, 56, -232, 463, -445, 373, -81, -403, -491, -26, 280, 78, -95, 136, -468, 79, 120, 201, 415, -264, 132, 29, -444, -455, -238, 98, -426, 211, 240, 243, -119, -26, 151, 149, 290, 207, 23, -291, -344, 32, 184, 436, -38, -59, 424, -05, -127, 44, 48, 140, -367, -320, -331, 41, -275, -69, -09, 152, -357, -269, -105, 24, -442, -101, 26, 348, -394, -451, -91, 114, 433, -407, 402, -104, 35, 326, -257, -240, 223, 291, 400, -292, 472, -431, 249, -303, 01, -260, -299, 496, 324, 449, 20, -266, -152, -454, -418, -46, -53, -09, -80, -119, 437, -178, -371, 324, -352, -128, -416, -277, -337, 484, -69, -13, -447, -320, -463, 406, 273, -262, 402, 449, -313, 275, -317, 35, 321, 117, -159, 121, -40, 261, -498, -103, -417, -17, -279, 84, 355, 157, 307, -130, 141, -261, 358, -453, 271, 395, 453, 396, -367, -292, 345, -179, 483, -120, -292, -344, -151, 50, 277, 310, -189, -369, 59, 247, 114, -367, -169, 321, 290, -10, -308, 284, 229, -98, 331, 353, -203, -364, 249, 282, -156, 447, -45, -173, 179, 164, -16, -471, 66, 113, -309, 377, 245, 250, 124, 211, 383, -193, 33, -474, 298, -423, 310, 379, 331, 493, 232, -20, -371, 334, -238, 326, -367, -430, -347, 312, -414, 489, -307, 152, 455, -116, 381, -448, -365, 358, 263, -130, -335, 148, 248, -185, 225, 58, 47, 408, 403, 131, -112, -467, -35, 151, -289, 450, -427, 216, 263, -341, 206, 456, -337, -487, -159, -456, -435, 328, 402, -320, 50, -80, 329, -201, 235, 406, -291, 134, 315, -387, -234, -297, -02, -417, -294, 209, -466, -221, -75, 297, 290, -17, -395, 453, -04, 298, 498, 413, 478, -248, -406, 29, 172, 423, -320, 260, 329, -111, -106, 496, 02, 160, -300, -148, -404, -94, -439, -370, -462, -13, -221, 328, 470, -116, -366, 319, 35, -368, 232, 13, -116, 326, -106, -91, 249, 74, -331, 431, -184, 415, 427, -330, 428, -21, 23, -476, -262, 84, -346, -224, -77, -67, -44, -106, -331, 90, 65, -444, -426, -203, 422, 311, -24, 168, -280, 77, 95, 241, 08, 411, 156, 288, -419, 84, -233, 456, 108, 05, 41, -386, -367, 464, 399, 442, 210, -79, 32, 127, -23, 107, 425, 251, 270, 253, -80, 490, -170, -485, -417, 339, -222, 239, 479, 211, 176, -254, 168, 136, -396, 61, -397, 89, 377, -498, 31, 440, 275, -436, 67, -247, -477, 344, -144, 293, 97, 276, -365, 428, -357, -282, -381, 273, -191, -402, -15, -163, 196, 05, -174, 300, -434, -71, 242, 443, -69, -227, 383, -293, 189, 303, 312, 212, 147, 20, 357, 97, 149, -156, 377, 292, 414, 496, 66, 76, -54, -97, 413, -358, 408, -261, -205, 474, 168, -463, -231, -48, 162, 05, -489, -148, -192, -325, -84, -193, 195, 126, -244, -156, 470, -367, -11, -263, -19, -93, 313, 427, 310, 226, -430, -430, -182, 217, -104, -162, 254, 165, -358, -84, 22, -347, -380, -318, 180, 37, -10, 228, -337, -402, -76, -15, -268, 413, 222, 213, 172, 35, 141, 334, 114, -437, 404, 432, 280, -200, -230, 386, -182, -87, -198, 340, 418, -77, -477, 99, -188, 365, 179, -25, 463, -397, -188, 47, -131, -465, -239, -459, 70, -246, 376, 36, -183, -368, -32, -403, 285, -409, -165, -397, 356, 489, -205, 274, 264, 170, 225, -424, 387, 256, 403, 351, 360, -284, 250, -271, -249, -489, -230, -327, -235, -02, 210, 434, 131, 30, -117, 268, 473, 218, 371, 329, 208, 18, 456, -28, 41, -467, 401, -72, 290, 304, 131, 150, -480, -118, 379, 123, 245, 01, -351, -137, -500, -289, -203, 483, -407, 181, 251, -433, 251, 474, 396, -41, 344, 352, -216, -115, 386, -315, 314, 176, 489, 297, 178, -138, -321, 57, -163, 425, -90, -14, -212, 262, -451, 437, 245, -357, 118, 348, -290, 222, -326, -42, 33, -129, 163, 317, 256, 49, -498, 422, 77, -156, 220, -245, -442, -249, -336, -105, -324, 74, -266, 316, -163, -217, 254, -66, 278, 224, 135, -160, 298, -339, 299, -168, 32, -38, -351, -211, -137, 04, 63, -208, -300, 135, 47, -242, 387, -437, 153, -85, 489, -261, 84, 178, 375, 190, -35, 153, -86, -400, -154, -287, -239, -03, 397, -354, 459, -454, -65, 174, 402, -150, 466, -398, 486, 365, -140, 373, 428, -134, 140, -231, 457, -276, 448, 332, 414, -87, 338, 181, 365, -316, -254, -22, 181, -357, 124, 492, -311, -89, 166, -56, 262, 484, 46, -400, -299, -241, 473, -19, 125, 465, 250, 82, -310, 198, 267, -44, -37, 105, -363, -172, -359, -117, 307, 322, 378, -69, -334, -80, 343, -316, 364, 457, -332, -90, -443, -131, 169, -118, 350, 146, -153, 452, 81, 389, 151, -152, -154, -34, 453, 335, 295, -54, -281, 454, -232, -51, -115, -66, 369, 80, 118, 233, 37, -362, -356, 94, 359, -335, -172, -439, 312, 176, -487, 245, 65, -484, -407, -237, -17, -102, -401, -222, 344, 170, -268, -36, -381, 469, -250, 489, 402, -280, 222, -61, -142, -282, -114, 69, -116, 214, 130, 48, 242, 143, -207, -192, 160, 238, 423, -357, -12, -478, 273, -168, 192, -143, -352, 312, -174, -102, 301, -272, 118, 375, -480, -172, -406, 258, 397, 330, 324, 27, -122, 67, 22, -477, -273, -318, 261, -350, 177, -251, -327, -50, 433, 365, 307, -419, -471, -14, 331, -318, -434, 301, -442, -414, -19, -348, -304, 230, 482, -479, -243, 212, 88, -369, 235, 315, -186, 348, 465, 491, -51, -10, -58, 234, -144, 101, -333, 237, -413, 498, 420, -346, -349, 478, 92, 132, -18, -359, -138, 316, -338, 471, 28, -398, -398, 115, 417, 268, 315, -266, 260, 116, 225, 54, -150, -67, 07, 17, -330, 447, 367, -410, -47, -482, -80, -455, -498, -246, 38, -136, -430, 200, -165, 450, 302, 289, 417, -429, 58, -416, -194, 170, 200, -117, 76, -450, 316, -65, 419, -162, -118, 286, 281, 335, -344, -299, -267, -342, 308, 271, 22, -270, 324, -291, 33, 126, 499, -50, -450, 409, 387, 208, 431, 87, -409, 07, 138, -241, 442, 409, 97, 177, 196, -122, 12, 352, 432, 245, -489, -408, 17, 385, -178, -159, -405, 355, -181, -54, 158, 221, 207, 45, -71, 138, -16, 372, -03, -26, -369, 291, -116, -419, -32, -420, 311, 481, -216, 243, -422, 147, 335, 447, 33, 10, 140, 480, -135, 460, -74, -125, -467, -15, -228, -37, -377, 257, -165, 120, -269, 319, -89, 467, 400, 380, -101, 211, -287, 184, 307, -209, -169, 494, -261, -284, 04, 379, -304, -278, -309, 474, 449, -275, -41, -278, -460, 82, -169, 227, 54, 414, 46, -182, 382, 298, -302, 133, 362, 263, -183, -479, -446, -499, -133, 145, -283, 372, 377, 266, -54, -432, -408, 247, 145, 404, -179, 185, 338, 152, 265, -107, 419, 163, 211, -347, -38, -239, 286, 176, -476, -44, -451, -70, -43, -84, -424, -474, 140, 453, -356, -414, -127, -263, -314, -129, -359, 07, -92, 479, 12, -327, 224, -69, 337, -65, 436, -201, 196, -426, -173, -428, 30, -124, 03, -161, 292, 431, -134, -67, -264, 10, 371, 109, -401, -443, -168, 92, 417, 241, 72, -71, 414, -204, -288, 251, -416, -352, -98, -368, -278, 229, 57, -395, -43, -440, -56, -250, -157, 310, -465, 79, 173, 406, 40, -376, -184, 373, 217, -267, 114, -211, 162, 28, 437, -274, 132, -127, -126, -466, 06, 448, -384, -437, -447, 73, -25, 350, -325, 318, 160, -290, 249, 185, -31, -211, 310, -363, 14, 27, -130, -20, -332, -116, -491, -43, 110, 141, 331, -164, -473, 189, 136, -357, 252, -458, -431, 79, 392, -256, 249, 52, 307, -02, 90, -224, -361, -100, -87, -494, -221, -365, -14, -53, 19, -05, -244, -19, -12, -413, 317, 368, 276, 305, -489, 380, 347, -68, -41, 239, 177, -292, 144, -16, -442, -266, -388, -302, 486, 377, -296, -235, -488, -458, -436, 383, 38, -180, -136, -122, 260, 33, 98, 388, -162, 462, 269, -314, -106, 80, 425, -429, 289, 421, 407, -301, -345, -129, 249, -359, -252, 453, 258, -240, -152, -326, -357, 386, 347, 359, 116, 107, 244, -285, -05, -417, -323, -236, 121, 71, 345, 398, 495, 486, 320, -246, -315, 475, 126, 435, -31, 374, -260, -273, -13, 88, 254, 130, 326, 101, 342, 295, -292, 86, -138, -445, -479, 39, -180, 142, -38, 17, 41, 309, 355, -139, -84, -108, 188, -458, 179, -343, -232, 420, 237, 255, 360, 343, 238, -461, -56, 80, 334, 152, 18, -304, -441, 40, -413, 231, -318, 401, -252, 223, -437, -45, -64, -21, 348, -23, 21, 27, 486, 289, 299, 223, 45, -488, 66, -217, -449, -138, -285, -263, -134, 233, 285, -74, -227, 372, -343, 308, -375, 258, 383, -312, -287, -180, 167, -87, 297, -312, -207, 283, -170, -408, 359, -273, -396, 277, 362, 07, -360, -423, 244, 358, -338, 29, -216, -64, 253, 294, -256, 379, 52, -373, -433, -383, 299, -413, 31, 448, 127, 324, -416, 457, -232, 443, -316, 225, -428, -454, -268, 64, -25, 477, -77, 138, 358, -441, -74, 112, 353, -478, 343, -95, 01, -238, 23, -199, -151, -94, 101, 477, 82, 185, 434, 350, 480, -29, 427, -447, 369, -340, 469, 197, -11, -108, -165, -153, 304, -387, -189, 157, -365, 06, -85, 136, 269, -210, -211, -30, 196, 391, -53, 130, 76, 234, 332, 57, 57, 260, 462, -74, 420, 431, -377, 261, 176, 310, -40, -20, 423, 272, -11, -442, 130, 404, -453, -101, -306, -164, 370, -258, -273, 169, 372, 304, -97, 205, 213, 460, 317, 175, 239, -411, 458, -286, 350, 486, -123, -190, 318, -200, -66, -192, 211, -435, -288, 258, 316, 259, -54, -462, -499, 174, 208, 374, 330, -37, 431, 43, 276, -400, 70, 15, -311, 28, -419, -461, 367, -42, -151, 185, -389, -364, 493, -326, -299, 58, -216, -483, -183, 230, -444, 170, -96, -384, 396, 86, 79, -321, -19, -145, -221, -449, -278, -32, 432, 156, 07, 299, -386, -291, 336, 77, -155, 330, 251, 46, 240, -465, 415, -91, 266, -177, -421, 22, -61, 476, -39, -481, -345, 442, 226, -65, 494, 449, 403, -222, 105, 263, -71, -429, 472, -235, 149, -183, -53, 252, -285, -313, 288, -370, 96, 406, 306, -472, 280, -255, -496, -259, -236, 11, -316, -157, -202, 30, -208, 54, -340, -251, -183, 89, -180, 141, -294, -179, -190, 154, -426, 25, 341, -286, -493, 290, -28, 313, 318, -248, -89, -326, 346, -473, -463, -118, -130, -164, -236, 162, -258, -76, -237, 59, -135, 436, -300, 71, -243, 10, -275, 183, -113, -81, 397, 246, 61, 221, 60, 231, 474, 471, 405, -328, 498, -206, 54, -131, 130, 318, -117, -276, 94, 147, 283, 459, 83, -165, 30, -308, -303, -392, 376, 436, 27, -375, 183, -412, 347, -257, 319, -327, 66, -424, 197, 416, -130, -249, 137, -147, -79, -479, 77, -133, -480, 213, -174, 455, -100, -292, -01, 98, 168, 227, 34, -305, 353, 69, 135, -448, -336, 306, 77, 230, -266, -226, 499, 457, 377, 136, 162, 150, -491, 91, -483, -119, 156, 195, 188, -443, -245, -312, -493, 424, 415, 393, -29, -380, -37, -41, 24, 127, 117, -47, 210, 352, -421, 209, -339, -192, -155, 323, 458, 207, -86, -173, -412, -77, -478, -371, -20, 130, -183, -13, 54, 84, -120, -123, 205, 343, 336, 81, 323, 306, -465, 33, 158, -34, -258, 319, 275, 439, 494, 233, 498, 260, -87, -413, -317, 287, -284, 163, -83, 385, 02, -177, -31, 383, -447, 26, -422, -259, -392, -247, -453, -05, 286, 205, 461, -120, 376, -412, -180, 370, -326, -182, 131, 87, 257, 314, -126, -175, 330, -356, 62, -168, -33, -468, 67, 372, 410, 498, -386, -130, -249, -339, -283, -110, -281, -321, 270, -405, -233, -410, -182, -59, 261, 449, -120, 370, -385, 255, 48, -203, -249, -390, 482, -430, -06, 401, 443, -95, 399, -443, -373, 03, -282, -155, 393, -63, 376, 163, 385, -05, -394, -297, -211, -281, 04, 169, -411, 471, 276, 489, -231, -473, -400, 103, -402, 94, 04, -107, -149, 256, -50, -21, -241, -480, -324, -348, 310, -448, -333, 195, 47, 125, -250, 336, 344, 254, 06, -214, 225, -218, -225, -154, 162, 227, 449, -388, 174, -46, 05, -475, -290, -193, 356, 321, -173, -468, -175, -11, -416, 344, 36, 484, -30, 286, 320, 166, 392, 178, -196, 470, -187, 80, -184, 475, 159, 118, -61, -167, -76, 444, -141, 486, -249, 67, 307, 430, 452, -16, -80, -112, -172, 456, -128, 298, -405, 45, 317, 487, -277, -379, 457, 36, -447, -226, 363, 213, -256, -198, -454, 168, 98, 257, 154, 349, -175, 313, 280, -223, -203, 52, 165, 125, 360, -110, 276, 455, 435, 445, 443, -342, -434, 400, -453, -380, 26, 410, -315, 270, 65, -269, -62, -337, -159, -56, -135, 166, 109, -03, -205, 406, -451, -188, 384, 409, 202, -488, 365, 137, 457, 308, -352, -477, -440, -305, -05, 87, -43, 180, 209, -478, -236, 00, 38, 105, 444, 403, 123, 406, -100, 418, 312, -51, 82, -452, 210, -215, -88, 75, -226, -131, 235, 274, 245, -352, 469, 92, -413, 279, -227, 296, -347, 389, -204, 191, -06, 93, 94, -383, -01, -154, -113, 163, -353, -179, -436, 358, 106, -24, 285, -267, 346, 373, -493, 443, -479, -171, 35, -392, -392, -340, -244, -239, -451, 53, -195, 395, -02, 399, -136, -151, 98, -397, -488, 245, -75, -424, 103, -117, 53, 241, 116, 251, 114, 476, 194, 487, 157, 81, -53, -383, -406, 203, 230, -05, 108, -465, -109, -394, -213, -393, -45, 385, -289, 320, 130, 136, 396, 86, -481, 301, -173, 488, 52, -207, -184, 98, -220, 473, -320, 227, -410, 126, -70, 320, -379, -109, -292, 12, -03, -05, 120, -195, -120, 331, -375, -138, 319, -127, -200, 338, -325, 479, 326, -421, -228, -06, 178, 52, -33, -290, 131, 409, 336, -86, 230, 457, 305, -210, 322, 154, 285, 294, 459, 17, 477, -64, -269, 296, 310, 32, 486, -163, 11, -335, -84, -364, 159, -54, 188, -373, -492, 172, -464, 344, -414, -382, -346, 391, -92, -172, 45, 45, -378, 357, -438, -401, 145, 146, -253, 307, -322, -267, -356, -459, -102, 413, -323, -442, -141, -282, 37, -132, 390, 425, 64, 476, -456, -430, -281, 304, -102, -384, 202, 20, -175, -384, 471, 471, 262, -282, 278, -208, -48, -225, -166, 350, -312, 363, -240, 399, -419, 297, -233, -177, 223, -316, -201, -381, -246, 370, -225, 153, 487, 477, 25, 164, -406, -03, 135, -292, 215, 266, 01, -333, -459, -313, -130, 81, -450, 482, -20, -16, 280, -400, 307, 355, -216, -41, -174, 390, 181, 101, 43, 168, 431, -431, 185, -123, 418, -180, 85, 133, -62, -414, -347, 331, 125, 375, -88, 176, 357, 393, 12, 137, -155, -181, 344, 129, -370, -330, 371, 312, -376, -85, 332, -445, 336, 17, -68, 254, -310, -131, 239, 128, 308, 392, -40, -67, 267, -276, -391, 125, -31, 473, 114, 314, -207, -41, 295, -77, 129, 167, 87, 253, -66, -80, -340, -230, 437, 444, -124, -21, -186, -385, -392, -378, -492, 420, 55, -373, -04, -483, 252, 466, 490, -133, 280, 135, -322, 428, -89, -341, 95, 498, -235, -471, 270, -75, 151, 208, -130, -473, -313, -464, -06, 147, -342, 354, 419, -435, 482, -84, -66, 234, -118, 277, -47, 14, -88, 483, -58, -325, -357, -111, -326, -92, -82, 444, -315, -79, -496, 407, 300, 44, 443, -205, 43, -47, -351, -37, 19, -369, -269, 453, -282, 465, -418, -477, 331, -05, -493, -226, 170, 02, 163, -304, -238, -66, -07, -53, 355, 349, -145, 156, -107, 150, 451, -211, -396, -48, -396, 475, 84, -165, -220, -346, 152, -137, -323, -17, -290, 36, -391, 380, -462, 273, -71, -200, 59, -226, -400, -86, -377, 307, -78, 369, -43, 225, -342, 413, -322, 114, 388, -386, -199, -331, -232, 453, 32, -55, 288, 242, -166, 398, 474, -128, -477, 255, -475, 82, -471, -23, -152, 05, -216, 271, 226, 241, -04, -264, 155, -474, 350, 395, -360, -349, -84, -92, -44, 448, -294, -256, -458, 40, -358, -131, -236, -335, -24, 141, -401, 358, -382, -52, -137, 254, 71, -411, -04, -81, -175, 03, -54, -325, 250, 86, 178, -333, -153, -366, -33, 405, -122, 10, 297, 373, -269, -87, -110, 207, -445, 342, 65, 25, -210, -220, -220, -287, -131, -372, 132, -454, 483, -70, 73, 233, -131, -249, 400, 216, 237, -132, 473, -32, -270, 270, -159, 313, -317, -417, 372, 90, 425, 290, -384, 67, -430, 248, 280, 292, -272, 265, -310, -289, -305, 264, 444, 64, -133, -303, 132, -395, 417, 105, 73, -01, -125, -234, -188, 411, 201, 36, 01, 127, -174, 469, 46, 249, 217, 179, 41, 445, -56, 231, 08, 139, -05, 305, 56, -285, -498, -312, -180, -229, 294, 393, 270, 21, 11, -66, -68, -288, 470, 434, -309, -203, -245, 238, -102, -175, -83, 439, 122, -287, -478, -369, -296, 370, 436, 260, -415, -210, -199, -95, 61, -405, 150, -169, 468, -339, 265, -99, 225, -413, 187, 417, 236, 442, 155, -366, -233, -76, -427, 390, 137, -52, -479, -307, -182, -191, 454, -97, 99, -245, -340, -340, 202, -338, -09, 170, 175, 108, -77, -100, 195, -390, -183, -68, -447, -176, 66, -180, 248, 492, -290, 237, -60, 83, 431, -390, 392, -263, 365, -09, 344, -475, 151, 46, -313, -06, 68, -286, -46, 492, 114, -350, -46, -216, 434, 07, 108, 352, -320, 209, -304, 242, 298, 488, -174, 229, -402, 70, -182, 463, -86, -338, -160, -83, -440, 379, 412, 481, -407, 218, 473, -440, 368, 279, -156, -346, -213, 452, -141, -33, 161, 55, 61, -40, 44, -261, 41, 494, 310, 360, -190, -276, -126, -498, 141, -65, -266, 405, -84, -173, 124, 241, 239, 344, 20, -417, -149, -341, -464, 210, 478, -451, 117, 40, 361, 13, 279, 255, 08, 89, 467, -330, -335, -159, -328, -341, -372, 258, -84, 44, -414, -460, 137, 325, -263, -342, -239, 88, 169, 149, 150, 148, 198, -233, -312, 412, 281, 467, -481, 141, 409, 486, -337, -74, -173, 187, 85, 308, -54, -498, -148, 384, -106, -158, -439, 131, 352, -178, 71, 21, 471, -279, -331, -478, 341, 209, 434, 474, 177, 453, 115, 438, -209, -370, 216, 470, 317, -198, 278, -237, 156, -17, -01, -98, 325, 61, -114, 177, 383, 457, 50, -293, 31, 220, -271, 224, -71, 15, 198, -42, 320, 165, 248, -389, 295, -35, -419, 112, -381, -288, -272, -373, 195, 227, 29, 372, -212, 415, 49, 24, -275, -49, 231, -392, -329, -188, 332, 453, 327, 30, 263, 499, -305, 12, -390, 490, -171, 43, 454, -52, -393, 34, 75, 302, -238, -44, 174, 402, 224, 75, 278, 449, -473, 09, -443, 50, 321, -259, 03, -500, 271, -233, 499, -182, -369, -39, 160, -40, -495, 114, -240, -36, 01, -313, -233, -385, 143, -207, -483, -133, -279, 296, 168, 100, 157, -423, -350, 331, -182, -494, 331, -59, 125, -317, 259, 256, 144, -81, 68, -499, -114, 328, -34, 387, -485, -415, -498, -490, -122, -129, 230, 99, -333, -102, -301, -323, 328, 202, -492, -354, 208, 339, 88, 185, -126, 199, -59, -481, -381, -491, -480, 05, -311, 338, 244, -296, 423, 246, -286, -198, -383, -204, -247, 137, 195, 305, 314, 375, 359, -326, -127, 67, -135, 461, -248, 240, -487, -455, 259, -368, -94, -369, 489, 95, -178, 233, 299, -255, 331, -135, 399, 448, 162, 05, 437, 209, -190, -397, 84, -331, -223, 457, -412, 495, -229, 192, 235, -216, 237, 346, 268, -357, -171, 257, -410, 151, -10, 389, -251, -179, 106, -352, 121, -232, -495, 411, -171, -185, -486, -235, 336, 144, -277, -224, 139, 346, 468, 226, -18, -443, 72, -250, 52, -247, -141, 142, -243, 349, 383, 06, 22, -10, -494, -05, -390, -488, -94, -60, 179, -79, 205, 16, -83, -220, 292, -92, -22, -387, -366, 460, -330, -442, 62, -425, -189, 421, 217, 68, -378, 101, -74, 144, -57, -67, -360, 405, -55, 398, -155, -376, 171, -97, 492, -412, -465, 285, -04, 366, -250, 482, -322, -80, -460, 241, -05, 204, -486, 65, 124, -363, 18, -449, -367, 461, 336, 125, 366, -219, 24, 64, 257, -305, -181, 250, 136, 206, 387, -16, 72, -363, -33, 251, 409, 359, 344, 257, 415, 358, -178, 392, 495, 340, -205, -19, -347, -369, -394, -481, 264, 130, 435, 373, -322, 106, 123, -334, -187, 362, 150, -263, -149, -31, -160, -239, 181, -316, -482, 448, -457, 192, 340, -110, 32, -365, 371, 185, 118, 478, -444, -118, 460, -156, -244, -362, 450, -269, -196, 115, -406, -193, -295, 297, 276, 45, -442, 309, 230, -72, 258, -375, -380, 98, 15, -496, -414, -113, 189, 204, -135, -402, -61, 177, 294, -453, 316, -404, -222, -28, 212, 224, -369, -231, 22, 408, 314, 432, -431, 396, -139, 327, -479, 333, 278, 389, 338, -284, -224, 379, 420, 493, 477, 211, 170, -377, 258, 338, -280, -111, 163, -216, -387, 294, 53, 487, -446, 219, -228, -376, 468, 133, -197, 489, 318, -419, 378, 156, -203, 06, 388, 70, -01, -283, 133, 22, -159, -108, -140, 61, 281, -477, 345, -254, -330, 250, 86, -276, -31, 358, 200, -63, 343, -496, 279, 161, -63, -491, 170, 235, 16, 410, 157, -133, -373, -210, 389, -32, -466, 102, -119, -333, 477, 78, 266, -353, -172, -148, 224, 298, -290, -76, 87, -95, 280, 218, -434, -282, 228, -412, -195, 96, 498, 462, 463, -374, 104, -295, 446, 139, 307, 180, -342, 284, -242, 424, -216, 87, -224, -140, 237, 338, -364, 176, -257, 417, -105, 162, -365, -377, -398, -60, 219, -399, 254, -466, 79, 210, -261, 377, 201, -454, 57, 360, -317, 316, 284, 319, 255, -87, -321, 344, 103, -185, 20, -301, 84, 415, 361, -429, -110, 463, 11, -39, -84, 117, -04, -153, -172, 235, -275, -471, -366, 282, -259, 169, 450, -474, -12, -443, 291, -481, 401, -106, 186, 274, 93, -229, -459, 306, -158, -68, -378, -294, 393, 38, -325, -111, 386, 355, -23, -37, -263, 111, 97, -22, -220, 400, 356, 268, 457, 499, -361, -289, -106, 325, 485, -161, -52, -474, -02, -357, 310, 120, -151, 204, 10, 376, -55, 248, 232, 422, -289, 469, 33, 309, 299, 313, 209, 156, 433, -482, 155, -428, -271, -99, -250, 66, -407, -450, 93, 91, -307, -97, 63, 394, -41, -427, 271, 405, -326, 03, 327, -115, 324, 213, 46, 123, 378, 107, 131, 312, 478, 139, -264, -293, -460, 338, -374, -15, 389, -429, -424, -418, 326, 139, 477, -214, -435, -400, 43, -261, 103, 222, 124, 279, -65, 23, -98, 166, -18, -114, 330, -40, -475, -434, -480, -83, -243, -354, 403, -354, -283, 479, 80, -105, 471, 409, 181, -464, -491, 76, -225, 464, -201, -249, 243, -414, 274, -02, -396, -243, 384, 434, -431, 409, -499, -411, 178, 110, -265, 81, 256, 304, 61, 188, -300, 32, 98, -267, 420, 459, 310, -305, 424, -39, 298, -481, 399, 425, 17, -496, -318, 253, 438, -249, -486, -209, 193, 193, 401, 428, -226, -491, -415, -313, -450, -215, -429, 148, 18, 491, 459, 180, 38, -265, -07, -163, -245, 245, -238, -376, 249, 296, 378, -461, -101, 392, 183, -408, 437, 436, -479, -288, -202, -394, -101, -152, 243, -29, -152, 113, 314, -193, 146, -147, 43, -361, -458, -350, 384, -196, -226, 485, -400, 04, -123, -01, 249, -440, 444, 186, -152, -183, 398, 146, 275, 150, 494, 18, -27, 194, -17, -213, -146, -371, 492, -251, -231, -466, -101, 05, -162, -475, -09, 290, 30, 368, 142, -221, -220, 86, 465, 480, 403, -284, 127, -470, 366, 473, 48, -161, -480, -469, 478, -126, 13, 471, 123, 282, -495, -478, 139, 196, -101, -18, 338, 429, -150, 332, 60, 482, -82, 26, 463, 173, 242, 442, 203, 460, -233, 103, 151, -213, 487, 129, 161, 00, 452, 136, 134, -190, 158, -227, -494, -442, 256, -304, -161, -42, -471, 400, 293, 299, 278, -392, -27, 372, -450, 28, 332, 169, -16, -17, 457, -29, -36, 470, 471, -83, 107, 457, 227, 117, -270, -415, -473, -162, 133, -133, 297, 162, 119, 90, -38, -103, -450, -213, -231, -48, -333, -47, -379, 151, -212, -70, -26, 252, 253, 297, 21, 212, 254, -252, -171, -163, 185, 209, 175, -181, -72, 324, -167, -453, -86, 295, 296, 316, -66, -435, -232, 102, 370, -110, 105, -342, -328, -68, 410, 425, -271, -68, 137, 484, -468, -181, 173, -430, -472, -152, -111, -44, -327, 222, 355, 439, 370, 151, 256, 156, -432, -476, 110, -210, 266, -284, -52, 439, 148, 210, -284, -271, -06, 354, 65, 379, 25, -262, 449, 53, 87, 190, -139, -388, -88, 68, -449, 134, 71, -341, -209, 491, 36, 401, -219, -198, -31, -419, 93, -31, 291, 310, 199, -214, -484, 116, 17, 41, 355, -34, -54, 294, -344, -341, 406, 420, 227, -191, 407, -202, 321, -302, 141, -143, -49, 422, -489, -227, -497, 105, 242, -354, 267, 293, -68, -365, -90, -199, 176, 117, 267, -26, -89, -225, 133, 169, -304, -140, -170, -397, -490, -349, 153, 151, 08, -396, 425, 20, 229, 428, -23, -28, -426, -256, 117, 359, -121, -121, 12, -93, -152, -220, 381, 259, 55, 14, 280, -397, -274, -389, -294, 88, -238, -289, -261, 271, 168, 16, 143, -103, 296, -380, -279, -278, 216, 339, -67, -405, 70, 446, 354, 419, -274, 235, -470, -367, 101, 311, -263, 327, 422, 295, -85, -316, -493, -494, -193, 175, 374, 450, -428, 170, -78, -206, 392, -362, -15, -174, 85, -445, -228, -61, -174, 350, 26, -143, 483, -373, -332, 72, -194, -58, -132, -427, 478, -125, -69, -214, -98, -195, 88, -26, 475, -489, -380, -280, -351, 105, 398, 235, -487, 22, 26, -161, -128, -447, -452, 207, -320, 68, -220, -13, -490, -500, 412, -159, 227, -156, 127, -371, 149, 67, 103, 477, 430, -424, -303, -68, 181, -405, 19, -454, 117, -455, 238, -159, -402, 286, -100, 131, -145, -468, -30, 217, -468, -118, -442, 259, -422, -463, 388, 228, 105, 344, 205, 387, 420, -246, -181, 453, 201, 338, -500, 170, 384, 238, -137, -166, 24, 263, -183, -269, 296