From 6912f05865f1ea77b8f6c7f4a096eb45d662f30d Mon Sep 17 00:00:00 2001 From: Masha Schneider Date: Fri, 23 Jun 2017 16:09:24 -0400 Subject: [PATCH] sql: Adding support for int2, int8, float4 and float8 to be in line with postgres support of numerical types. Before this change we didn't support any of the types mentioned above. After this change we'll support those types as alias and we will check for overflow on INSERT and UPDATE. We currently won't support type checking on mathematical operations, inline with how decimals are currently implemented. Support for those operations would require a change to Datums, which is outside of the scope for this change. Closes #12481 Closes #14493 --- pkg/sql/logictest/testdata/logic_test/scale | 58 +- pkg/sql/logictest/testdata/logic_test/table | 162 +- pkg/sql/parser/col_types.go | 21 +- pkg/sql/parser/col_types_test.go | 10 +- pkg/sql/parser/keywords.go | 4 + pkg/sql/parser/reserved_keywords.go | 4 + pkg/sql/parser/sql.go | 9595 ++++++++++--------- pkg/sql/parser/sql.y | 24 +- pkg/sql/sqlbase/structured.go | 4 +- pkg/sql/sqlbase/structured.pb.go | 328 +- pkg/sql/sqlbase/structured.proto | 6 + pkg/sql/sqlbase/table.go | 37 +- 12 files changed, 5207 insertions(+), 5046 deletions(-) diff --git a/pkg/sql/logictest/testdata/logic_test/scale b/pkg/sql/logictest/testdata/logic_test/scale index 33217e449641..a864fd69b96f 100644 --- a/pkg/sql/logictest/testdata/logic_test/scale +++ b/pkg/sql/logictest/testdata/logic_test/scale @@ -45,15 +45,69 @@ INSERT INTO tb VALUES (3) statement ok INSERT INTO tb VALUES (7) -statement error bit string too long for type BIT\(3\) \(column "b"\) +statement error integer out of range for type BIT \(column "b"\) INSERT INTO tb VALUES (15) statement ok UPDATE tb SET b = 2 WHERE b = 7 -statement error bit string too long for type BIT\(3\) \(column "b"\) +statement error integer out of range for type BIT \(column "b"\) UPDATE tb SET b = 16 WHERE b = 2 +statement ok +CREATE TABLE tc ( + b INT2, + UNIQUE INDEX a (b) +) + +statement ok +INSERT INTO tc VALUES (50) + +statement ok +INSERT INTO tc VALUES (-32768) + +statement ok +INSERT INTO tc VALUES (32767) + +statement error integer out of range for type INT2 \(column "b"\) +INSERT INTO tc VALUES (-32769) + +statement error integer out of range for type INT2 \(column "b"\) +INSERT INTO tc VALUES (32768) + +statement ok +UPDATE tc SET b = 80 WHERE b = 50 + +statement error integer out of range for type INT2 \(column "b"\) +UPDATE tc SET b = 32768 WHERE b = 32767 + +statement ok +CREATE TABLE tc1 ( + b INT4, + UNIQUE INDEX a (b) +) + +statement ok +INSERT INTO tc1 VALUES (50) + +statement ok +INSERT INTO tc1 VALUES (-2147483648) + +statement ok +INSERT INTO tc1 VALUES (2147483647) + +statement error integer out of range for type INT4 \(column "b"\) +INSERT INTO tc1 VALUES (-2147483649) + +statement error integer out of range for type INT4 \(column "b"\) +INSERT INTO tc1 VALUES (2147483648) + +statement ok +UPDATE tc1 SET b = 80 WHERE b = 50 + +statement error integer out of range for type INT4 \(column "b"\) +UPDATE tc1 SET b = 2147483648 WHERE b = 2147483647 + statement ok CREATE TABLE td ( d DECIMAL(3, 2), diff --git a/pkg/sql/logictest/testdata/logic_test/table b/pkg/sql/logictest/testdata/logic_test/table index 8075d883e504..25f12ddfdd51 100644 --- a/pkg/sql/logictest/testdata/logic_test/table +++ b/pkg/sql/logictest/testdata/logic_test/table @@ -306,88 +306,96 @@ CREATE TABLE test.dupe_named_constraints ( statement ok CREATE TABLE test.alltypes ( - a BOOL, - b INT, - c INT8, - d INT64, - e INTEGER, - f SMALLINT, - g BIGINT, - h SERIAL, - i SMALLSERIAL, - j BIGSERIAL, - k BIT, - l BIT(12), - m CHAR, - n CHAR(12), - o VARCHAR, - p VARCHAR(12), - q REAL, - r FLOAT, - s DOUBLE PRECISION, - t DEC, - u DEC(1), - v DEC(2,1), - w DECIMAL, - x DECIMAL(1), - y DECIMAL(2,1), - z NUMERIC, - aa NUMERIC(1), - ab NUMERIC(2,1), - ac DATE, - ad TIMESTAMP, - ae TIMESTAMP WITH TIME ZONE, - af STRING, - ag STRING(12), - ah TEXT, - ai BLOB, - aj BYTES, - ak BYTEA, - al INTERVAL + cbigint BIGINT, + cbigserial BIGSERIAL, + cbit BIT, + cbit12 BIT(12), + cblob BLOB, + cbool BOOL, + cbytea BYTEA, + cbytes BYTES, + cchar CHAR, + cchar12 CHAR(12), + cdate DATE, + cdec DEC, + cdec1 DEC(1), + cdec21 DEC(2,1), + cdecimal DECIMAL, + cdecimal1 DECIMAL(1), + cdecimal21 DECIMAL(2,1), + cdoubleprecision DOUBLE PRECISION, + cfloat FLOAT, + cfloat4 FLOAT4, + cfloat8 FLOAT8, + cint INT, + cint2 INT2, + cint4 INT4, + cint64 INT64, + cint8 INT8, + cinteger INTEGER, + cinterval INTERVAL, + cnumeric NUMERIC, + cnumeric1 NUMERIC(1), + cnumeric21 NUMERIC(2,1), + creal REAL, + cserial SERIAL, + csmallint SMALLINT, + csmallserial SMALLSERIAL, + cstring STRING, + cstring12 STRING(12), + ctext TEXT, + ctimestamp TIMESTAMP, + ctimestampwtz TIMESTAMP WITH TIME ZONE, + cvarchar VARCHAR, + cvarchar12 VARCHAR(12) ) query TTBTT colnames SHOW COLUMNS FROM test.alltypes ---- -Field Type Null Default Indices -a BOOL true NULL {} -b INT true NULL {} -c INT8 true NULL {} -d INT64 true NULL {} -e INT true NULL {} -f INT true NULL {} -g INT true NULL {} -h INT true unique_rowid() {} -i INT true unique_rowid() {} -j INT true unique_rowid() {} -k BIT(1) true NULL {} -l BIT(12) true NULL {} -m STRING true NULL {} -n STRING(12) true NULL {} -o STRING true NULL {} -p STRING(12) true NULL {} -q FLOAT true NULL {} -r FLOAT true NULL {} -s FLOAT true NULL {} -t DECIMAL true NULL {} -u DECIMAL(1) true NULL {} -v DECIMAL(2,1) true NULL {} -w DECIMAL true NULL {} -x DECIMAL(1) true NULL {} -y DECIMAL(2,1) true NULL {} -z DECIMAL true NULL {} -aa DECIMAL(1) true NULL {} -ab DECIMAL(2,1) true NULL {} -ac DATE true NULL {} -ad TIMESTAMP true NULL {} -ae TIMESTAMP WITH TIME ZONE true NULL {} -af STRING true NULL {} -ag STRING(12) true NULL {} -ah STRING true NULL {} -ai BYTES true NULL {} -aj BYTES true NULL {} -ak BYTES true NULL {} -al INTERVAL true NULL {} +Field Type Null Default Indices +cbigint INT true NULL {} +cbigserial INT true unique_rowid() {} +cbit BIT(1) true NULL {} +cbit12 BIT(12) true NULL {} +cblob BYTES true NULL {} +cbool BOOL true NULL {} +cbytea BYTES true NULL {} +cbytes BYTES true NULL {} +cchar STRING true NULL {} +cchar12 STRING(12) true NULL {} +cdate DATE true NULL {} +cdec DECIMAL true NULL {} +cdec1 DECIMAL(1) true NULL {} +cdec21 DECIMAL(2,1) true NULL {} +cdecimal DECIMAL true NULL {} +cdecimal1 DECIMAL(1) true NULL {} +cdecimal21 DECIMAL(2,1) true NULL {} +cdoubleprecision FLOAT true NULL {} +cfloat FLOAT true NULL {} +cfloat4 FLOAT4 true NULL {} +cfloat8 FLOAT8 true NULL {} +cint INT true NULL {} +cint2 INT2 true NULL {} +cint4 INT4 true NULL {} +cint64 INT64 true NULL {} +cint8 INT8 true NULL {} +cinteger INT true NULL {} +cinterval INTERVAL true NULL {} +cnumeric DECIMAL true NULL {} +cnumeric1 DECIMAL(1) true NULL {} +cnumeric21 DECIMAL(2,1) true NULL {} +creal FLOAT true NULL {} +cserial INT true unique_rowid() {} +csmallint SMALLINT true NULL {} +csmallserial INT true unique_rowid() {} +cstring STRING true NULL {} +cstring12 STRING(12) true NULL {} +ctext STRING true NULL {} +ctimestamp TIMESTAMP true NULL {} +ctimestampwtz TIMESTAMP WITH TIME ZONE true NULL {} +cvarchar STRING true NULL {} +cvarchar12 STRING(12) true NULL {} statement ok CREATE DATABASE IF NOT EXISTS smtng diff --git a/pkg/sql/parser/col_types.go b/pkg/sql/parser/col_types.go index 34c0c5cd0876..e5cdd78ab21a 100644 --- a/pkg/sql/parser/col_types.go +++ b/pkg/sql/parser/col_types.go @@ -94,12 +94,14 @@ func (node *BoolColType) Format(buf *bytes.Buffer, f FmtFlags) { // Pre-allocated immutable integer column types. var ( - intColTypeBit = &IntColType{Name: "BIT", N: 1, ImplicitWidth: true} + intColTypeBit = &IntColType{Name: "BIT", Width: 1, ImplicitWidth: true} intColTypeInt = &IntColType{Name: "INT"} + intColTypeInt2 = &IntColType{Name: "INT2", Width: 16, ImplicitWidth: true} + intColTypeInt4 = &IntColType{Name: "INT4", Width: 32, ImplicitWidth: true} intColTypeInt8 = &IntColType{Name: "INT8"} intColTypeInt64 = &IntColType{Name: "INT64"} intColTypeInteger = &IntColType{Name: "INTEGER"} - intColTypeSmallInt = &IntColType{Name: "SMALLINT"} + intColTypeSmallInt = &IntColType{Name: "SMALLINT", Width: 16, ImplicitWidth: true} intColTypeBigInt = &IntColType{Name: "BIGINT"} intColTypeSerial = &IntColType{Name: "SERIAL"} intColTypeSmallSerial = &IntColType{Name: "SMALLSERIAL"} @@ -108,25 +110,25 @@ var ( var errBitLengthNotPositive = errors.New("length for type bit must be at least 1") -func newIntBitType(n int) (*IntColType, error) { - if n < 1 { +func newIntBitType(width int) (*IntColType, error) { + if width < 1 { return nil, errBitLengthNotPositive } - return &IntColType{Name: "BIT", N: n}, nil + return &IntColType{Name: "BIT", Width: width}, nil } // IntColType represents an INT, INTEGER, SMALLINT or BIGINT type. type IntColType struct { Name string - N int + Width int ImplicitWidth bool } // Format implements the NodeFormatter interface. func (node *IntColType) Format(buf *bytes.Buffer, f FmtFlags) { buf.WriteString(node.Name) - if node.N > 0 && !node.ImplicitWidth { - fmt.Fprintf(buf, "(%d)", node.N) + if node.Width > 0 && !node.ImplicitWidth { + fmt.Fprintf(buf, "(%d)", node.Width) } } @@ -141,6 +143,8 @@ func (node *IntColType) IsSerial() bool { var ( floatColTypeReal = &FloatColType{Name: "REAL"} floatColTypeFloat = &FloatColType{Name: "FLOAT"} + floatColTypeFloat4 = &FloatColType{Name: "FLOAT4", Width: 16} + floatColTypeFloat8 = &FloatColType{Name: "FLOAT8", Width: 32} floatColTypeDouble = &FloatColType{Name: "DOUBLE PRECISION"} ) @@ -148,6 +152,7 @@ var ( type FloatColType struct { Name string Prec int + Width int PrecSpecified bool // true if the value of Prec is not the default } diff --git a/pkg/sql/parser/col_types_test.go b/pkg/sql/parser/col_types_test.go index c75c01ce8e67..e5a97c559652 100644 --- a/pkg/sql/parser/col_types_test.go +++ b/pkg/sql/parser/col_types_test.go @@ -27,19 +27,23 @@ func TestParseColumnType(t *testing.T) { str string expectedType ColumnType }{ - {"BIT", &IntColType{Name: "BIT", N: 1, ImplicitWidth: true}}, - {"BIT(2)", &IntColType{Name: "BIT", N: 2}}, + {"BIT", &IntColType{Name: "BIT", Width: 1, ImplicitWidth: true}}, + {"BIT(2)", &IntColType{Name: "BIT", Width: 2}}, {"BOOL", &BoolColType{Name: "BOOL"}}, {"BOOLEAN", &BoolColType{Name: "BOOLEAN"}}, - {"SMALLINT", &IntColType{Name: "SMALLINT"}}, + {"SMALLINT", &IntColType{Name: "SMALLINT", Width: 16, ImplicitWidth: true}}, {"BIGINT", &IntColType{Name: "BIGINT"}}, {"INTEGER", &IntColType{Name: "INTEGER"}}, {"INT", &IntColType{Name: "INT"}}, + {"INT2", &IntColType{Name: "INT2", Width: 16, ImplicitWidth: true}}, + {"INT4", &IntColType{Name: "INT4", Width: 32, ImplicitWidth: true}}, {"INT8", &IntColType{Name: "INT8"}}, {"INT64", &IntColType{Name: "INT64"}}, {"REAL", &FloatColType{Name: "REAL"}}, {"DOUBLE PRECISION", &FloatColType{Name: "DOUBLE PRECISION"}}, {"FLOAT", &FloatColType{Name: "FLOAT"}}, + {"FLOAT4", &FloatColType{Name: "FLOAT4", Width: 16}}, + {"FLOAT8", &FloatColType{Name: "FLOAT8", Width: 32}}, {"FLOAT(4)", &FloatColType{Name: "FLOAT", Prec: 4, PrecSpecified: true}}, {"DEC", &DecimalColType{Name: "DEC"}}, {"DECIMAL", &DecimalColType{Name: "DECIMAL"}}, diff --git a/pkg/sql/parser/keywords.go b/pkg/sql/parser/keywords.go index efb63dde1d8b..309fb5db70a4 100644 --- a/pkg/sql/parser/keywords.go +++ b/pkg/sql/parser/keywords.go @@ -94,6 +94,8 @@ var keywords = map[string]int{ "FILTER": FILTER, "FIRST": FIRST, "FLOAT": FLOAT, + "FLOAT4": FLOAT4, + "FLOAT8": FLOAT8, "FOLLOWING": FOLLOWING, "FOR": FOR, "FORCE_INDEX": FORCE_INDEX, @@ -120,7 +122,9 @@ var keywords = map[string]int{ "INNER": INNER, "INSERT": INSERT, "INT": INT, + "INT2": INT2, "INT2VECTOR": INT2VECTOR, + "INT4": INT4, "INT64": INT64, "INT8": INT8, "INTEGER": INTEGER, diff --git a/pkg/sql/parser/reserved_keywords.go b/pkg/sql/parser/reserved_keywords.go index 3582196dc9b6..0b2c2c648b46 100644 --- a/pkg/sql/parser/reserved_keywords.go +++ b/pkg/sql/parser/reserved_keywords.go @@ -59,6 +59,8 @@ var reservedKeywords = map[string]struct{}{ "FAMILY": {}, "FETCH": {}, "FLOAT": {}, + "FLOAT4": {}, + "FLOAT8": {}, "FOR": {}, "FOREIGN": {}, "FROM": {}, @@ -76,6 +78,8 @@ var reservedKeywords = map[string]struct{}{ "INITIALLY": {}, "INNER": {}, "INT": {}, + "INT2": {}, + "INT4": {}, "INT64": {}, "INT8": {}, "INTEGER": {}, diff --git a/pkg/sql/parser/sql.go b/pkg/sql/parser/sql.go index 074c8469e0ec..65d300bd9f96 100644 --- a/pkg/sql/parser/sql.go +++ b/pkg/sql/parser/sql.go @@ -456,218 +456,222 @@ const FETCH = 57451 const FILTER = 57452 const FIRST = 57453 const FLOAT = 57454 -const FLOORDIV = 57455 -const FOLLOWING = 57456 -const FOR = 57457 -const FORCE_INDEX = 57458 -const FOREIGN = 57459 -const FROM = 57460 -const FULL = 57461 -const GRANT = 57462 -const GRANTS = 57463 -const GREATEST = 57464 -const GROUP = 57465 -const GROUPING = 57466 -const HAVING = 57467 -const HELP = 57468 -const HIGH = 57469 -const HOUR = 57470 -const INCREMENTAL = 57471 -const IF = 57472 -const IFNULL = 57473 -const ILIKE = 57474 -const IN = 57475 -const INTERLEAVE = 57476 -const INDEX = 57477 -const INDEXES = 57478 -const INITIALLY = 57479 -const INNER = 57480 -const INSERT = 57481 -const INT = 57482 -const INT2VECTOR = 57483 -const INT8 = 57484 -const INT64 = 57485 -const INTEGER = 57486 -const INTERSECT = 57487 -const INTERVAL = 57488 -const INTO = 57489 -const IS = 57490 -const ISOLATION = 57491 -const JOB = 57492 -const JOIN = 57493 -const KEY = 57494 -const KEYS = 57495 -const KV = 57496 -const LATERAL = 57497 -const LC_CTYPE = 57498 -const LC_COLLATE = 57499 -const LEADING = 57500 -const LEAST = 57501 -const LEFT = 57502 -const LEVEL = 57503 -const LIKE = 57504 -const LIMIT = 57505 -const LOCAL = 57506 -const LOCALTIME = 57507 -const LOCALTIMESTAMP = 57508 -const LOW = 57509 -const LSHIFT = 57510 -const MATCH = 57511 -const MINUTE = 57512 -const MONTH = 57513 -const NAN = 57514 -const NAME = 57515 -const NAMES = 57516 -const NATURAL = 57517 -const NEXT = 57518 -const NO = 57519 -const NO_INDEX_JOIN = 57520 -const NORMAL = 57521 -const NOT = 57522 -const NOTHING = 57523 -const NULL = 57524 -const NULLIF = 57525 -const NULLS = 57526 -const NUMERIC = 57527 -const OF = 57528 -const OFF = 57529 -const OFFSET = 57530 -const OID = 57531 -const ON = 57532 -const ONLY = 57533 -const OPTIONS = 57534 -const OR = 57535 -const ORDER = 57536 -const ORDINALITY = 57537 -const OUT = 57538 -const OUTER = 57539 -const OVER = 57540 -const OVERLAPS = 57541 -const OVERLAY = 57542 -const PARENT = 57543 -const PARTIAL = 57544 -const PARTITION = 57545 -const PASSWORD = 57546 -const PAUSE = 57547 -const PLACING = 57548 -const POSITION = 57549 -const PRECEDING = 57550 -const PRECISION = 57551 -const PREPARE = 57552 -const PRIMARY = 57553 -const PRIORITY = 57554 -const QUERIES = 57555 -const QUERY = 57556 -const RANGE = 57557 -const READ = 57558 -const REAL = 57559 -const RECURSIVE = 57560 -const REF = 57561 -const REFERENCES = 57562 -const REGCLASS = 57563 -const REGPROC = 57564 -const REGPROCEDURE = 57565 -const REGNAMESPACE = 57566 -const REGTYPE = 57567 -const RENAME = 57568 -const REPEATABLE = 57569 -const RELEASE = 57570 -const RESET = 57571 -const RESTORE = 57572 -const RESTRICT = 57573 -const RESUME = 57574 -const RETURNING = 57575 -const REVOKE = 57576 -const RIGHT = 57577 -const ROLLBACK = 57578 -const ROLLUP = 57579 -const ROW = 57580 -const ROWS = 57581 -const RSHIFT = 57582 -const SAVEPOINT = 57583 -const SCATTER = 57584 -const SEARCH = 57585 -const SECOND = 57586 -const SELECT = 57587 -const SERIAL = 57588 -const SERIALIZABLE = 57589 -const SESSION = 57590 -const SESSIONS = 57591 -const SESSION_USER = 57592 -const SET = 57593 -const SETTING = 57594 -const SETTINGS = 57595 -const SHOW = 57596 -const SIMILAR = 57597 -const SIMPLE = 57598 -const SMALLINT = 57599 -const SMALLSERIAL = 57600 -const SNAPSHOT = 57601 -const SOME = 57602 -const SPLIT = 57603 -const SQL = 57604 -const START = 57605 -const STATUS = 57606 -const STDIN = 57607 -const STRICT = 57608 -const STRING = 57609 -const STORING = 57610 -const SUBSTRING = 57611 -const SYMMETRIC = 57612 -const SYSTEM = 57613 -const TABLE = 57614 -const TABLES = 57615 -const TEMPLATE = 57616 -const TESTING_RANGES = 57617 -const TESTING_RELOCATE = 57618 -const TEXT = 57619 -const THEN = 57620 -const TIME = 57621 -const TIMESTAMP = 57622 -const TIMESTAMPTZ = 57623 -const TO = 57624 -const TRAILING = 57625 -const TRACE = 57626 -const TRANSACTION = 57627 -const TREAT = 57628 -const TRIM = 57629 -const TRUE = 57630 -const TRUNCATE = 57631 -const TYPE = 57632 -const UNBOUNDED = 57633 -const UNCOMMITTED = 57634 -const UNION = 57635 -const UNIQUE = 57636 -const UNKNOWN = 57637 -const UPDATE = 57638 -const UPSERT = 57639 -const USE = 57640 -const USER = 57641 -const USERS = 57642 -const USING = 57643 -const UUID = 57644 -const VALID = 57645 -const VALIDATE = 57646 -const VALUE = 57647 -const VALUES = 57648 -const VARCHAR = 57649 -const VARIADIC = 57650 -const VIEW = 57651 -const VARYING = 57652 -const WHEN = 57653 -const WHERE = 57654 -const WINDOW = 57655 -const WITH = 57656 -const WITHIN = 57657 -const WITHOUT = 57658 -const WRITE = 57659 -const YEAR = 57660 -const ZONE = 57661 -const NOT_LA = 57662 -const WITH_LA = 57663 -const AS_LA = 57664 -const POSTFIXOP = 57665 -const UMINUS = 57666 +const FLOAT4 = 57455 +const FLOAT8 = 57456 +const FLOORDIV = 57457 +const FOLLOWING = 57458 +const FOR = 57459 +const FORCE_INDEX = 57460 +const FOREIGN = 57461 +const FROM = 57462 +const FULL = 57463 +const GRANT = 57464 +const GRANTS = 57465 +const GREATEST = 57466 +const GROUP = 57467 +const GROUPING = 57468 +const HAVING = 57469 +const HELP = 57470 +const HIGH = 57471 +const HOUR = 57472 +const INCREMENTAL = 57473 +const IF = 57474 +const IFNULL = 57475 +const ILIKE = 57476 +const IN = 57477 +const INTERLEAVE = 57478 +const INDEX = 57479 +const INDEXES = 57480 +const INITIALLY = 57481 +const INNER = 57482 +const INSERT = 57483 +const INT = 57484 +const INT2VECTOR = 57485 +const INT2 = 57486 +const INT4 = 57487 +const INT8 = 57488 +const INT64 = 57489 +const INTEGER = 57490 +const INTERSECT = 57491 +const INTERVAL = 57492 +const INTO = 57493 +const IS = 57494 +const ISOLATION = 57495 +const JOB = 57496 +const JOIN = 57497 +const KEY = 57498 +const KEYS = 57499 +const KV = 57500 +const LATERAL = 57501 +const LC_CTYPE = 57502 +const LC_COLLATE = 57503 +const LEADING = 57504 +const LEAST = 57505 +const LEFT = 57506 +const LEVEL = 57507 +const LIKE = 57508 +const LIMIT = 57509 +const LOCAL = 57510 +const LOCALTIME = 57511 +const LOCALTIMESTAMP = 57512 +const LOW = 57513 +const LSHIFT = 57514 +const MATCH = 57515 +const MINUTE = 57516 +const MONTH = 57517 +const NAN = 57518 +const NAME = 57519 +const NAMES = 57520 +const NATURAL = 57521 +const NEXT = 57522 +const NO = 57523 +const NO_INDEX_JOIN = 57524 +const NORMAL = 57525 +const NOT = 57526 +const NOTHING = 57527 +const NULL = 57528 +const NULLIF = 57529 +const NULLS = 57530 +const NUMERIC = 57531 +const OF = 57532 +const OFF = 57533 +const OFFSET = 57534 +const OID = 57535 +const ON = 57536 +const ONLY = 57537 +const OPTIONS = 57538 +const OR = 57539 +const ORDER = 57540 +const ORDINALITY = 57541 +const OUT = 57542 +const OUTER = 57543 +const OVER = 57544 +const OVERLAPS = 57545 +const OVERLAY = 57546 +const PARENT = 57547 +const PARTIAL = 57548 +const PARTITION = 57549 +const PASSWORD = 57550 +const PAUSE = 57551 +const PLACING = 57552 +const POSITION = 57553 +const PRECEDING = 57554 +const PRECISION = 57555 +const PREPARE = 57556 +const PRIMARY = 57557 +const PRIORITY = 57558 +const QUERIES = 57559 +const QUERY = 57560 +const RANGE = 57561 +const READ = 57562 +const REAL = 57563 +const RECURSIVE = 57564 +const REF = 57565 +const REFERENCES = 57566 +const REGCLASS = 57567 +const REGPROC = 57568 +const REGPROCEDURE = 57569 +const REGNAMESPACE = 57570 +const REGTYPE = 57571 +const RENAME = 57572 +const REPEATABLE = 57573 +const RELEASE = 57574 +const RESET = 57575 +const RESTORE = 57576 +const RESTRICT = 57577 +const RESUME = 57578 +const RETURNING = 57579 +const REVOKE = 57580 +const RIGHT = 57581 +const ROLLBACK = 57582 +const ROLLUP = 57583 +const ROW = 57584 +const ROWS = 57585 +const RSHIFT = 57586 +const SAVEPOINT = 57587 +const SCATTER = 57588 +const SEARCH = 57589 +const SECOND = 57590 +const SELECT = 57591 +const SERIAL = 57592 +const SERIALIZABLE = 57593 +const SESSION = 57594 +const SESSIONS = 57595 +const SESSION_USER = 57596 +const SET = 57597 +const SETTING = 57598 +const SETTINGS = 57599 +const SHOW = 57600 +const SIMILAR = 57601 +const SIMPLE = 57602 +const SMALLINT = 57603 +const SMALLSERIAL = 57604 +const SNAPSHOT = 57605 +const SOME = 57606 +const SPLIT = 57607 +const SQL = 57608 +const START = 57609 +const STATUS = 57610 +const STDIN = 57611 +const STRICT = 57612 +const STRING = 57613 +const STORING = 57614 +const SUBSTRING = 57615 +const SYMMETRIC = 57616 +const SYSTEM = 57617 +const TABLE = 57618 +const TABLES = 57619 +const TEMPLATE = 57620 +const TESTING_RANGES = 57621 +const TESTING_RELOCATE = 57622 +const TEXT = 57623 +const THEN = 57624 +const TIME = 57625 +const TIMESTAMP = 57626 +const TIMESTAMPTZ = 57627 +const TO = 57628 +const TRAILING = 57629 +const TRACE = 57630 +const TRANSACTION = 57631 +const TREAT = 57632 +const TRIM = 57633 +const TRUE = 57634 +const TRUNCATE = 57635 +const TYPE = 57636 +const UNBOUNDED = 57637 +const UNCOMMITTED = 57638 +const UNION = 57639 +const UNIQUE = 57640 +const UNKNOWN = 57641 +const UPDATE = 57642 +const UPSERT = 57643 +const USE = 57644 +const USER = 57645 +const USERS = 57646 +const USING = 57647 +const UUID = 57648 +const VALID = 57649 +const VALIDATE = 57650 +const VALUE = 57651 +const VALUES = 57652 +const VARCHAR = 57653 +const VARIADIC = 57654 +const VIEW = 57655 +const VARYING = 57656 +const WHEN = 57657 +const WHERE = 57658 +const WINDOW = 57659 +const WITH = 57660 +const WITHIN = 57661 +const WITHOUT = 57662 +const WRITE = 57663 +const YEAR = 57664 +const ZONE = 57665 +const NOT_LA = 57666 +const WITH_LA = 57667 +const AS_LA = 57668 +const POSTFIXOP = 57669 +const UMINUS = 57670 var sqlToknames = [...]string{ "$end", @@ -782,6 +786,8 @@ var sqlToknames = [...]string{ "FILTER", "FIRST", "FLOAT", + "FLOAT4", + "FLOAT8", "FLOORDIV", "FOLLOWING", "FOR", @@ -811,6 +817,8 @@ var sqlToknames = [...]string{ "INSERT", "INT", "INT2VECTOR", + "INT2", + "INT4", "INT8", "INT64", "INTEGER", @@ -1025,2214 +1033,2256 @@ const sqlEofCode = 1 const sqlErrCode = 2 const sqlInitialStackSize = 16 -//line sql.y:5632 +//line sql.y:5652 //line yacctab:1 var sqlExca = [...]int{ -1, 0, 1, 35, - 343, 35, + 347, 35, -2, 455, -1, 1, 1, -1, -2, 0, -1, 59, 1, 428, - 190, 428, - 233, 428, - 339, 428, - 341, 428, + 194, 428, + 237, 428, 343, 428, + 345, 428, + 347, 428, -2, 438, -1, 74, 1, 431, - 190, 431, - 233, 431, - 339, 431, - 341, 431, + 194, 431, + 237, 431, 343, 431, + 345, 431, + 347, 431, -2, 437, -1, 83, 1, 35, - 343, 35, + 347, 35, -2, 455, - -1, 463, + -1, 467, 1, 180, - 343, 180, - -2, 1031, - -1, 533, + 347, 180, + -2, 1035, + -1, 537, 109, 465, - 163, 465, - 188, 465, + 167, 465, + 192, 465, -2, 434, - -1, 536, + -1, 540, 109, 464, - 163, 464, - 188, 464, + 167, 464, + 192, 464, -2, 432, - -1, 616, - 340, 960, - -2, 953, - -1, 617, - 340, 961, - -2, 954, - -1, 623, - 5, 629, - 340, 629, - -2, 1148, - -1, 647, - 5, 590, - -2, 1122, - -1, 648, - 5, 623, - 340, 623, - -2, 1124, - -1, 649, - 5, 598, - -2, 1125, - -1, 650, - 5, 597, - -2, 1126, + -1, 620, + 344, 964, + -2, 957, + -1, 621, + 344, 965, + -2, 958, + -1, 627, + 5, 633, + 344, 633, + -2, 1156, -1, 651, - 5, 623, - 340, 623, - -2, 1129, + 5, 592, + -2, 1126, -1, 652, - 5, 623, - 340, 623, - -2, 1130, + 5, 627, + 344, 627, + -2, 1128, -1, 653, - 5, 624, - -2, 1133, + 5, 602, + -2, 1129, -1, 654, - 5, 584, - -2, 1134, + 5, 601, + -2, 1130, -1, 655, - 5, 584, - -2, 1135, + 5, 627, + 344, 627, + -2, 1133, -1, 656, - 5, 605, - -2, 1139, + 5, 627, + 344, 627, + -2, 1134, -1, 657, - 5, 585, - -2, 1144, + 5, 628, + -2, 1137, -1, 658, - 5, 586, - -2, 1145, + 5, 584, + -2, 1138, -1, 659, - 5, 587, - -2, 1146, + 5, 584, + -2, 1139, -1, 660, - 5, 588, - -2, 1147, + 5, 609, + -2, 1143, -1, 661, - 5, 584, - -2, 1152, + 5, 594, + -2, 1144, -1, 662, - 5, 591, - -2, 1157, + 5, 595, + -2, 1145, -1, 663, - 5, 589, - -2, 1160, + 5, 585, + -2, 1150, -1, 664, - 5, 621, - 340, 621, - -2, 1162, + 5, 586, + -2, 1151, -1, 665, - 5, 625, - -2, 1165, + 5, 587, + -2, 1152, -1, 666, - 5, 627, - -2, 1166, + 5, 588, + -2, 1153, -1, 667, - 5, 620, - 340, 620, - -2, 1171, - -1, 785, + 5, 589, + -2, 1154, + -1, 668, + 5, 590, + -2, 1155, + -1, 669, + 5, 584, + -2, 1160, + -1, 670, + 5, 593, + -2, 1165, + -1, 671, + 5, 591, + -2, 1168, + -1, 672, + 5, 625, + 344, 625, + -2, 1170, + -1, 673, + 5, 629, + -2, 1173, + -1, 674, + 5, 631, + -2, 1174, + -1, 675, + 5, 624, + 344, 624, + -2, 1179, + -1, 793, 109, 464, - 163, 464, - 188, 464, + 167, 464, + 192, 464, -2, 435, - -1, 894, + -1, 902, 100, 438, 109, 438, - 145, 438, - 163, 438, - 188, 438, - 194, 438, - 293, 438, - -2, 748, - -1, 903, - 340, 937, - -2, 925, - -1, 1177, + 149, 438, + 167, 438, + 192, 438, + 198, 438, + 297, 438, + -2, 752, + -1, 911, + 344, 941, + -2, 929, + -1, 1189, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 664, - -1, 1178, + 327, 0, + 328, 0, + 329, 0, + -2, 668, + -1, 1190, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 665, - -1, 1179, + 327, 0, + 328, 0, + 329, 0, + -2, 669, + -1, 1191, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 666, - -1, 1183, + 327, 0, + 328, 0, + 329, 0, + -2, 670, + -1, 1195, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 670, - -1, 1184, + 327, 0, + 328, 0, + 329, 0, + -2, 674, + -1, 1196, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 671, - -1, 1185, + 327, 0, + 328, 0, + 329, 0, + -2, 675, + -1, 1197, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 672, - -1, 1188, + 327, 0, + 328, 0, + 329, 0, + -2, 676, + -1, 1200, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 677, - -1, 1194, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 681, + -1, 1206, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 679, - -1, 1196, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 683, + -1, 1208, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 683, - -1, 1197, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 687, + -1, 1209, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 684, - -1, 1198, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 688, + -1, 1210, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 685, - -1, 1199, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 689, + -1, 1211, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 686, - -1, 1225, - 199, 819, - -2, 822, - -1, 1261, - 118, 859, - 340, 960, - -2, 953, - -1, 1262, - 118, 860, - -2, 1118, - -1, 1263, - 118, 861, - -2, 1030, - -1, 1264, - 118, 862, - -2, 996, - -1, 1265, - 118, 863, - -2, 1012, - -1, 1266, - 118, 864, - -2, 1029, - -1, 1267, - 118, 865, - -2, 1080, - -1, 1448, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 690, + -1, 1237, + 203, 823, + -2, 826, + -1, 1273, + 120, 863, + 344, 964, + -2, 957, + -1, 1274, + 120, 864, + -2, 1122, + -1, 1275, + 120, 865, + -2, 1034, + -1, 1276, + 120, 866, + -2, 1000, + -1, 1277, + 120, 867, + -2, 1016, + -1, 1278, + 120, 868, + -2, 1033, + -1, 1279, + 120, 869, + -2, 1084, + -1, 1460, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 678, - -1, 1449, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 682, + -1, 1461, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 680, - -1, 1454, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 684, + -1, 1466, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 681, - -1, 1472, - 199, 818, - -2, 821, - -1, 1637, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 685, + -1, 1484, + 203, 822, + -2, 825, + -1, 1649, 100, 438, 109, 438, - 145, 438, - 163, 438, - 188, 438, - 194, 438, - 293, 438, + 149, 438, + 167, 438, + 192, 438, + 198, 438, + 297, 438, -2, 519, - -1, 1679, + -1, 1691, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 682, - -1, 1684, - 148, 0, - -2, 698, - -1, 1694, - 199, 820, - -2, 823, - -1, 1736, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 686, + -1, 1696, + 152, 0, + -2, 702, + -1, 1706, + 203, 824, + -2, 827, + -1, 1748, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 725, - -1, 1737, + 327, 0, + 328, 0, + 329, 0, + -2, 729, + -1, 1749, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 726, - -1, 1738, + 327, 0, + 328, 0, + 329, 0, + -2, 730, + -1, 1750, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 727, - -1, 1742, + 327, 0, + 328, 0, + 329, 0, + -2, 731, + -1, 1754, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 731, - -1, 1743, + 327, 0, + 328, 0, + 329, 0, + -2, 735, + -1, 1755, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 732, - -1, 1744, + 327, 0, + 328, 0, + 329, 0, + -2, 736, + -1, 1756, 13, 0, 14, 0, 15, 0, - 323, 0, - 324, 0, - 325, 0, - -2, 733, - -1, 1826, + 327, 0, + 328, 0, + 329, 0, + -2, 737, + -1, 1838, 1, 520, 70, 520, 100, 520, 109, 520, - 119, 520, - 123, 520, + 121, 520, 125, 520, - 138, 520, - 145, 520, - 151, 520, - 160, 520, - 163, 520, - 175, 520, - 188, 520, - 190, 520, + 127, 520, + 140, 520, + 149, 520, + 155, 520, + 164, 520, + 167, 520, + 179, 520, + 192, 520, 194, 520, - 233, 520, - 235, 520, - 293, 520, - 301, 520, - 312, 520, - 313, 520, - 322, 520, - 339, 520, - 341, 520, + 198, 520, + 237, 520, + 239, 520, + 297, 520, + 305, 520, + 316, 520, + 317, 520, + 326, 520, 343, 520, - 344, 520, + 345, 520, + 347, 520, + 348, 520, -2, 519, - -1, 1876, - 148, 0, - -2, 699, - -1, 1879, + -1, 1888, + 152, 0, + -2, 703, + -1, 1891, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 702, - -1, 1880, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 706, + -1, 1892, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 704, - -1, 1996, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 708, + -1, 2008, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 703, - -1, 1997, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 707, + -1, 2009, 16, 0, 17, 0, 18, 0, 36, 0, - 132, 0, - 133, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 705, - -1, 2004, - 148, 0, - -2, 734, - -1, 2071, - 148, 0, - -2, 735, - -1, 2152, + 134, 0, + 135, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 709, + -1, 2016, + 152, 0, + -2, 738, + -1, 2083, + 152, 0, + -2, 739, + -1, 2164, 36, 0, - 132, 0, - 162, 0, - 255, 0, - 320, 0, - 326, 0, - -2, 1121, + 134, 0, + 166, 0, + 259, 0, + 324, 0, + 330, 0, + -2, 1125, } const sqlPrivate = 57344 -const sqlLast = 31798 +const sqlLast = 31581 var sqlAct = [...]int{ - 617, 1782, 2180, 2135, 2151, 1968, 2100, 2136, 1077, 1314, - 2137, 2028, 537, 607, 2150, 1822, 1713, 1306, 1994, 1792, - 328, 1925, 972, 1389, 1949, 1635, 1848, 1821, 615, 58, - 1083, 678, 1649, 1538, 1632, 1834, 1936, 96, 96, 558, - 96, 314, 23, 593, 1609, 1650, 973, 1800, 843, 1930, - 330, 96, 96, 96, 1611, 97, 1378, 1359, 96, 1623, - 1363, 96, 815, 1364, 1809, 515, 1079, 818, 1537, 96, - 1396, 805, 524, 1315, 1483, 1360, 1564, 1248, 96, 96, - 1156, 955, 96, 899, 1119, 96, 96, 96, 96, 1223, - 1444, 96, 96, 1151, 544, 73, 1128, 1618, 1397, 944, - 1402, 614, 1103, 1385, 1037, 331, 542, 1399, 312, 1287, - 1233, 1352, 587, 723, 1208, 1211, 844, 820, 806, 462, - 518, 1242, 519, 722, 691, 23, 929, 525, 699, 1258, - 586, 890, 1108, 688, 1308, 690, 1367, 547, 788, 787, - 789, 510, 933, 73, 448, 609, 74, 459, 1035, 437, - 536, 458, 75, 948, 684, 92, 1849, 768, 545, 793, - 769, 2039, 88, 1471, 2040, 451, 2178, 573, 1633, 840, - 1245, 1307, 327, 957, 1311, 957, 508, 2160, 73, 957, - 1847, 1630, 834, 2147, 2146, 541, 1339, 1339, 2143, 555, - 2133, 840, 561, 840, 1339, 568, 2130, 327, 2119, 840, - 297, 1333, 2097, 1575, 2081, 840, 592, 1847, 2077, 2073, - 2087, 840, 1333, 501, 1246, 541, 2065, 1576, 72, 2064, - 534, 564, 2035, 1475, 2022, 2036, 533, 1847, 1476, 2019, - 1508, 1509, 840, 1526, 1527, 1528, 1474, 549, 845, 846, - 1155, 1339, 2017, 72, 47, 1847, 300, 1998, 1979, 1978, - 1333, 840, 1847, 48, 1621, 1952, 1247, 1244, 1339, 1903, - 79, 848, 1339, 1881, 1878, 1868, 1339, 1333, 1339, 47, - 1867, 1110, 1109, 1339, 1290, 49, 1846, 1776, 48, 1847, - 1305, 845, 846, 1523, 1152, 847, 1771, 81, 556, 1305, - 1688, 563, 566, 1339, 556, 1598, 1555, 1595, 840, 1556, - 49, 1749, 1553, 1152, 848, 1339, 1621, 96, 96, 96, - 96, 96, 96, 1552, 524, 1691, 1339, 845, 846, 1551, - 1472, 82, 1339, 1339, 1393, 1155, 1117, 840, 847, 77, - 1249, 1599, 79, 1514, 862, 1339, 78, 840, 1388, 1343, - 848, 853, 1339, 542, 845, 846, 1350, 865, 866, 867, - 875, 876, 877, 1530, 1338, 76, 958, 1339, 958, 81, - 868, 1227, 958, 1332, 847, 1482, 1333, 848, 1529, 525, - 879, 1304, 1116, 966, 1305, 1115, 967, 801, 1027, 571, - 711, 554, 83, 521, 853, 577, 1850, 696, 1524, 1944, - 79, 847, 1636, 82, 79, 1049, 863, 862, 737, 2170, - 2149, 77, 2142, 62, 1243, 2105, 2068, 2020, 78, 845, - 846, 1908, 800, 1904, 685, 1911, 1896, 81, 1895, 79, - 853, 81, 1894, 1890, 1889, 1888, 1337, 1310, 62, 693, - 693, 1887, 848, 96, 1826, 694, 700, 1799, 1780, 863, - 1219, 1764, 1759, 1575, 1758, 1757, 81, 853, 1699, 1597, - 96, 82, 811, 96, 96, 82, 847, 1560, 677, 1634, - 1525, 1557, 1545, 77, 524, 1536, 872, 880, 864, 961, - 78, 956, 524, 1601, 1507, 1075, 1504, 1503, 1501, 1488, - 82, 1487, 878, 1508, 1509, 76, 907, 1406, 77, 76, - 675, 1255, 1254, 800, 1082, 78, 870, 1109, 900, 610, - 76, 96, 863, 799, 1715, 2122, 2084, 96, 2063, 2062, - 2061, 864, 853, 556, 76, 566, 2053, 2051, 2043, 525, - 2031, 2015, 2006, 1965, 1954, 1919, 1901, 525, 96, 96, - 96, 1873, 96, 1853, 1814, 1790, 1788, 741, 1787, 1785, - 1683, 1658, 1220, 1520, 1521, 1522, 786, 96, 1519, 1517, - 1518, 1510, 1511, 1512, 1513, 1515, 1516, 1657, 96, 849, - 850, 851, 852, 854, 855, 1910, 1535, 1497, 733, 1496, - 1778, 524, 96, 1493, 864, 1468, 1463, 1213, 330, 524, - 1435, 1433, 1420, 1419, 1392, 934, 1514, 937, 740, 873, - 1297, 1253, 1076, 559, 810, 941, 927, 926, 841, 858, - 856, 857, 849, 850, 851, 852, 854, 855, 785, 925, - 924, 811, 923, 922, 774, 921, 920, 721, 716, 718, - 919, 542, 918, 809, 917, 916, 525, 845, 846, 915, - 914, 913, 912, 331, 525, 911, 741, 904, 849, 850, - 851, 852, 854, 855, 741, 772, 893, 778, 76, 781, - 848, 804, 720, 770, 871, 707, 705, 859, 860, 861, - 874, 2161, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 577, 2038, 900, 847, 1941, 1916, 96, 1420, 1915, - 1883, 1815, 96, 96, 96, 1585, 96, 838, 1508, 1509, - 1584, 534, 891, 729, 2067, 2041, 1612, 533, 731, 796, - 797, 1152, 1914, 96, 96, 802, 828, 522, 1384, 946, - 327, 96, 676, 556, 1577, 96, 1383, 939, 1636, 1559, - 96, 1558, 940, 1942, 1447, 826, 760, 839, 732, 909, - 524, 524, 851, 852, 854, 855, 730, 1080, 330, 1033, - 827, 1445, 1931, 531, 96, 1307, 1716, 96, 1234, 96, - 96, 96, 96, 96, 96, 1479, 72, 1245, 1050, 903, - 96, 930, 764, 1571, 812, 96, 96, 2108, 1645, 303, - 2167, 2168, 96, 960, 1861, 1592, 963, 1342, 931, 932, - 2076, 500, 47, 96, 499, 525, 525, 494, 307, 685, - 1081, 48, 757, 331, 495, 1064, 758, 811, 935, 765, - 1989, 1246, 96, 86, 938, 96, 1512, 1513, 1515, 1516, - 968, 1988, 1987, 49, 96, 1986, 1673, 821, 304, 822, - 1672, 906, 96, 1129, 1121, 540, 96, 1642, 1641, 1492, - 1669, 1491, 1490, 73, 96, 96, 947, 950, 96, 970, - 1489, 96, 308, 1247, 1244, 1121, 1450, 1051, 330, 1340, - 1086, 1120, 1195, 1149, 1148, 1074, 1145, 85, 771, 570, - 1872, 1021, 729, 1053, 1301, 1034, 896, 1025, 1165, 1140, - 539, 1024, 1143, 1020, 1045, 1300, 1166, 1022, 1044, 1038, - 1107, 1379, 1072, 945, 507, 1122, 1132, 1071, 556, 949, - 949, 823, 1157, 1164, 1055, 2075, 1676, 1059, 1060, 1061, - 1062, 1063, 1777, 331, 821, 730, 822, 1133, 1135, 563, - 566, 1058, 1068, 1069, 703, 1766, 1073, 1249, 1561, 541, - 942, 670, 756, 1210, 1210, 821, 1088, 822, 1090, 1089, - 1508, 1509, 79, 1138, 527, 946, 435, 1154, 1052, 1105, - 534, 62, 1113, 534, 534, 1150, 1099, 1970, 719, 1100, - 1101, 2120, 96, 855, 96, 96, 532, 96, 1125, 81, - 96, 528, 96, 96, 1249, 96, 96, 1660, 524, 1146, - 1234, 529, 951, 761, 1709, 306, 305, 2167, 823, 309, - 1131, 831, 1018, 438, 1231, 2174, 1346, 502, 1565, 754, - 1309, 1243, 1309, 82, 84, 1026, 2139, 1348, 1217, 823, - 829, 77, 2189, 1215, 443, 1591, 311, 1440, 78, 439, - 832, 1437, 845, 846, 1516, 830, 310, 1349, 538, 1218, - 1114, 1221, 1431, 525, 1070, 755, 831, 313, 1206, 1347, - 2116, 87, 556, 1514, 440, 848, 762, 1508, 1509, 836, - 566, 1327, 835, 1204, 556, 829, 1268, 1667, 1249, 1622, - 330, 702, 2056, 442, 2117, 1706, 1192, 1593, 96, 847, - 830, 73, 928, 1130, 503, 957, 73, 1374, 1118, 2002, - 1351, 96, 96, 96, 744, 1328, 96, 96, 2173, 2140, - 1331, 1324, 693, 96, 693, 1313, 1569, 1325, 763, 1326, - 700, 669, 1322, 1323, 1386, 1387, 1329, 1707, 1626, 2016, - 824, 1336, 888, 1043, 1042, 331, 521, 516, 1200, 819, - 745, 96, 330, 743, 1495, 853, 1201, 1629, 1202, 96, - 96, 96, 1207, 1661, 1825, 96, 1394, 1810, 96, 1565, - 1624, 1405, 1404, 2141, 96, 96, 96, 96, 96, 1627, - 1514, 932, 931, 935, 541, 938, 96, 1971, 298, 96, - 96, 1344, 1190, 1193, 1625, 1677, 524, 505, 1318, 441, - 73, 1452, 1209, 566, 2183, 1797, 566, 331, 1224, 1938, - 863, 1249, 2172, 1417, 1354, 1228, 2138, 2166, 1407, 1236, - 2164, 1432, 1189, 1358, 1434, 2190, 1046, 824, 1413, 1924, - 1260, 1260, 1271, 1376, 1282, 1524, 438, 726, 748, 714, - 1294, 1295, 1296, 710, 791, 979, 1430, 1356, 824, 792, - 444, 525, 299, 1622, 1628, 1382, 1745, 443, 1508, 1509, - 1899, 741, 439, 1443, 1203, 1460, 1981, 2194, 1395, 1980, - 1860, 1205, 1048, 504, 1963, 1408, 1216, 1859, 2048, 1644, - 1458, 1416, 864, 542, 1032, 1012, 1857, 440, 958, 1481, - 1412, 1510, 1511, 1512, 1513, 1515, 1516, 1377, 790, 1087, - 727, 1078, 1626, 1047, 728, 1705, 442, 1525, 1067, 2101, - 791, 1028, 1446, 1964, 1926, 1191, 1793, 1355, 566, 1357, - 1937, 1629, 556, 792, 1030, 1939, 1950, 1095, 1422, 1421, - 1805, 726, 1804, 2181, 1624, 446, 1031, 445, 683, 682, - 539, 782, 1783, 1627, 1746, 1455, 96, 1451, 542, 1453, - 1747, 96, 1917, 96, 1900, 1456, 1442, 1400, 1625, 1461, - 96, 1514, 2193, 1801, 790, 1409, 1619, 1467, 1252, 2005, - 1858, 96, 857, 849, 850, 851, 852, 854, 855, 1856, - 542, 96, 96, 1478, 1961, 979, 979, 2182, 1951, 1898, - 622, 524, 1096, 1539, 1540, 1682, 1439, 1518, 1510, 1511, - 1512, 1513, 1515, 1516, 1675, 1562, 1962, 2184, 1502, 96, - 1462, 96, 441, 96, 1341, 1303, 1524, 96, 1628, 1144, - 1583, 96, 1141, 1019, 1626, 1567, 767, 766, 1273, 602, - 1573, 759, 753, 752, 1542, 1543, 1544, 751, 750, 1600, - 749, 1602, 746, 1629, 96, 1579, 525, 1580, 1581, 1417, - 1570, 681, 578, 1603, 1065, 1057, 1808, 1606, 910, 1578, - 738, 1457, 1251, 444, 2134, 1627, 93, 93, 1459, 301, - 522, 517, 2098, 542, 1656, 1831, 1665, 1663, 1582, 1643, - 429, 430, 431, 1608, 1380, 1372, 1330, 450, 1525, 1655, - 464, 1596, 1588, 1589, 965, 1594, 1590, 964, 450, 962, - 959, 954, 837, 833, 825, 1696, 1610, 548, 548, 680, - 2010, 301, 679, 1842, 301, 301, 567, 301, 794, 552, - 93, 574, 89, 2168, 1040, 1614, 1685, 73, 1466, 2012, - 1620, 1616, 1604, 73, 1390, 1469, 96, 1701, 1702, 1703, - 1628, 1617, 1639, 1640, 1638, 1121, 1843, 1631, 1664, 3, - 1666, 1136, 1563, 1485, 1486, 1647, 1668, 945, 493, 319, - 33, 739, 1654, 1121, 325, 28, 945, 324, 27, 1134, - 323, 26, 1674, 321, 25, 318, 17, 556, 1137, 1510, - 1511, 1512, 1513, 1515, 1516, 1770, 1157, 1720, 795, 553, - 2058, 322, 12, 1534, 1391, 1157, 1725, 1850, 845, 846, - 1695, 1692, 2070, 575, 1547, 1802, 576, 434, 1708, 1710, - 1711, 1752, 1717, 572, 1722, 798, 96, 96, 326, 11, - 1719, 848, 1142, 1607, 496, 497, 1139, 672, 1756, 1724, - 2088, 668, 1772, 560, 316, 10, 96, 320, 9, 1838, - 96, 1839, 96, 33, 1922, 847, 1375, 1753, 28, 96, - 1400, 27, 524, 1789, 26, 1371, 1312, 25, 1106, 17, - 315, 8, 96, 1023, 447, 96, 979, 1006, 317, 4, - 1841, 971, 1786, 1335, 330, 12, 96, 1767, 2187, 1844, - 1775, 332, 96, 96, 96, 1769, 2192, 1774, 1885, 1773, - 1430, 1508, 1509, 2132, 1817, 845, 846, 2091, 1816, 96, - 1784, 1947, 11, 526, 96, 1794, 96, 525, 96, 96, - 96, 1656, 671, 96, 96, 1779, 524, 1795, 10, 1851, - 1796, 9, 579, 674, 1765, 1807, 1655, 1712, 1827, 331, - 1854, 2114, 1811, 1812, 845, 846, 301, 686, 301, 464, - 464, 574, 847, 776, 8, 1586, 1877, 1830, 1670, 1554, - 1671, 1302, 4, 1840, 776, 775, 96, 1299, 1298, 1241, - 1803, 897, 777, 1806, 1871, 1995, 1704, 1605, 907, 905, - 506, 525, 1969, 436, 1855, 1056, 747, 1943, 1813, 2115, - 1891, 741, 1494, 1689, 2027, 2001, 1250, 908, 46, 1652, - 596, 1832, 1646, 1366, 1365, 333, 1897, 1041, 618, 1654, - 509, 1259, 1158, 673, 620, 976, 621, 1006, 1006, 977, - 936, 608, 974, 698, 1316, 1214, 1232, 1477, 901, 588, - 600, 599, 1318, 1400, 1229, 704, 1948, 461, 96, 96, - 61, 457, 1568, 1909, 1094, 524, 1381, 1005, 1091, 1656, - 1662, 530, 1505, 706, 1656, 96, 96, 1280, 1272, 96, - 1750, 1269, 773, 1912, 1655, 814, 889, 96, 1918, 1655, - 1317, 1760, 708, 1923, 96, 736, 1574, 619, 1400, 712, - 713, 1400, 96, 979, 96, 1334, 330, 96, 803, 715, - 1102, 1945, 464, 464, 1946, 96, 1921, 551, 1927, 1913, - 525, 330, 1955, 1929, 550, 1361, 1959, 734, 1029, 1345, - 1928, 1656, 979, 1920, 882, 881, 498, 2050, 725, 724, - 1373, 1974, 1973, 1415, 1864, 1975, 1655, 1956, 2188, 2057, - 1870, 946, 1659, 2107, 80, 2066, 1991, 1654, 1993, 1441, - 450, 331, 1654, 1972, 34, 1957, 301, 32, 29, 2000, - 24, 22, 21, 1934, 1935, 526, 331, 1940, 1983, 1820, - 20, 96, 31, 19, 30, 18, 1990, 464, 780, 464, - 16, 783, 15, 14, 2007, 96, 13, 45, 524, 44, - 43, 42, 96, 1656, 807, 807, 548, 1005, 1005, 580, - 96, 41, 40, 816, 1984, 1985, 96, 301, 1655, 1654, - 7, 6, 2018, 5, 2013, 96, 96, 2, 1, 0, - 0, 93, 96, 979, 2021, 883, 884, 885, 886, 887, - 2052, 2045, 2030, 2037, 2026, 895, 2034, 0, 2042, 0, - 0, 2024, 0, 525, 0, 902, 2011, 96, 96, 0, - 2055, 0, 2047, 2025, 2046, 0, 0, 0, 0, 979, - 979, 0, 0, 2054, 0, 0, 0, 0, 979, 979, - 0, 1400, 1400, 96, 2069, 1400, 0, 96, 0, 0, - 0, 1654, 2082, 2080, 0, 524, 0, 0, 2083, 2072, - 2044, 0, 96, 0, 0, 0, 0, 0, 2033, 0, - 0, 979, 330, 96, 96, 542, 2086, 0, 1006, 0, - 0, 1967, 96, 0, 96, 526, 978, 96, 0, 330, - 2090, 0, 2093, 526, 2092, 0, 301, 0, 0, 0, - 2095, 301, 301, 301, 0, 952, 0, 1933, 2104, 2109, - 525, 0, 2123, 2113, 0, 2125, 0, 2124, 96, 0, - 2085, 96, 301, 301, 0, 2121, 0, 331, 1656, 2128, - 93, 0, 0, 0, 93, 2129, 2131, 2089, 2127, 464, - 0, 0, 0, 1655, 331, 2144, 0, 2126, 0, 2096, - 0, 96, 0, 96, 0, 2148, 2159, 0, 1977, 2103, - 2157, 2023, 2156, 464, 0, 96, 464, 0, 93, 464, - 464, 464, 464, 464, 0, 2165, 1400, 2163, 0, 1066, - 0, 2169, 0, 0, 464, 464, 0, 2171, 0, 0, - 0, 450, 526, 0, 0, 0, 2179, 0, 0, 332, - 526, 2185, 1085, 2186, 1092, 2177, 1097, 0, 0, 0, - 0, 2191, 1104, 979, 0, 0, 1654, 0, 0, 0, - 0, 548, 2195, 0, 574, 0, 978, 978, 2158, 0, - 0, 0, 0, 301, 0, 0, 0, 0, 0, 0, - 0, 1126, 0, 0, 0, 301, 0, 0, 1005, 0, - 0, 0, 0, 301, 1147, 1508, 1509, 301, 0, 0, - 1153, 0, 0, 1167, 1168, 1169, 1170, 1171, 1172, 1173, - 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, - 1184, 1185, 1186, 1187, 1188, 1006, 1194, 0, 1196, 1197, - 1198, 1199, 1842, 2106, 0, 1835, 0, 0, 0, 0, - 0, 0, 0, 1833, 0, 1222, 0, 1837, 1523, 0, - 0, 0, 597, 59, 1006, 0, 0, 0, 0, 0, - 0, 0, 0, 1008, 0, 1843, 0, 1256, 1257, 0, - 0, 1270, 0, 1281, 1283, 1288, 1291, 1292, 1293, 0, - 0, 0, 0, 0, 0, 0, 1836, 0, 0, 0, - 0, 526, 526, 0, 845, 846, 0, 1318, 1514, 332, - 0, 59, 0, 0, 0, 0, 2110, 2111, 2112, 0, - 0, 301, 0, 1320, 1321, 2118, 301, 848, 0, 301, - 0, 464, 464, 0, 464, 574, 535, 0, 0, 543, - 0, 979, 0, 0, 0, 0, 59, 0, 0, 0, - 0, 847, 0, 0, 0, 0, 0, 0, 1007, 0, - 0, 0, 0, 1524, 0, 1006, 0, 0, 1838, 0, - 1839, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 979, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1841, - 0, 1006, 1006, 0, 0, 1005, 0, 853, 1844, 0, - 1006, 1006, 0, 1008, 1008, 0, 0, 0, 0, 332, - 0, 0, 0, 0, 0, 0, 0, 1353, 0, 0, - 0, 0, 0, 0, 1005, 1525, 0, 0, 0, 0, - 301, 301, 301, 1006, 0, 301, 1362, 0, 0, 0, - 0, 0, 574, 0, 0, 0, 0, 978, 0, 0, - 0, 0, 863, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 807, 0, 0, 0, 0, 0, 816, - 301, 0, 1840, 0, 0, 0, 979, 0, 301, 1410, - 1411, 0, 0, 0, 1126, 0, 0, 1418, 1007, 1007, - 0, 0, 0, 1423, 1424, 1426, 1428, 1429, 0, 0, - 0, 0, 0, 975, 0, 1436, 0, 0, 1438, 301, - 0, 0, 0, 1519, 1517, 1518, 1510, 1511, 1512, 1513, - 1515, 1516, 0, 0, 864, 1005, 0, 0, 0, 526, + 621, 2163, 1794, 2147, 1318, 2192, 2112, 1326, 1980, 1089, + 2148, 1725, 2149, 2162, 1834, 2040, 541, 1661, 1961, 332, + 1937, 611, 1804, 1846, 2006, 1647, 597, 584, 1860, 619, + 618, 1833, 1644, 1621, 686, 1942, 1948, 96, 96, 1401, + 96, 1662, 1376, 562, 1095, 1550, 1623, 1390, 58, 980, + 334, 96, 96, 96, 851, 519, 1821, 1371, 96, 1327, + 1408, 96, 1812, 1635, 813, 1375, 963, 826, 1549, 96, + 823, 1168, 528, 1260, 1495, 1131, 1091, 1456, 96, 96, + 1372, 1630, 96, 907, 1414, 96, 96, 96, 96, 318, + 23, 96, 96, 1576, 1115, 1235, 1409, 1140, 1364, 1245, + 1397, 1163, 466, 591, 1049, 731, 952, 1223, 852, 1299, + 828, 814, 548, 73, 1220, 522, 316, 698, 1254, 730, + 1320, 523, 707, 590, 1270, 546, 937, 898, 699, 1120, + 551, 1379, 696, 74, 796, 795, 797, 452, 514, 613, + 441, 463, 941, 1047, 956, 462, 1861, 88, 692, 92, + 540, 549, 801, 776, 777, 2051, 455, 1483, 2052, 97, + 1319, 73, 1645, 965, 1642, 965, 1588, 2190, 2172, 965, + 848, 1859, 577, 23, 545, 1411, 512, 75, 2159, 2158, + 331, 1351, 1351, 2155, 2145, 301, 848, 848, 2142, 853, + 854, 848, 1587, 1122, 2131, 2109, 73, 1345, 848, 2093, + 331, 2089, 1859, 568, 848, 2085, 505, 538, 1345, 335, + 1257, 2077, 856, 1164, 2076, 853, 854, 545, 2047, 2034, + 2031, 2048, 1859, 848, 1351, 2029, 72, 79, 1859, 2010, + 553, 529, 1345, 1323, 1991, 1633, 855, 848, 856, 1990, + 1964, 1915, 1859, 1351, 1351, 2099, 72, 1893, 981, 842, + 1351, 537, 47, 1167, 81, 1890, 1258, 559, 1345, 1633, + 565, 48, 855, 572, 1880, 1121, 1879, 1351, 870, 1351, + 1520, 1521, 47, 1538, 1539, 1540, 1858, 1788, 1302, 1859, + 1317, 48, 1607, 1761, 1783, 49, 1887, 1317, 82, 1700, + 1610, 1703, 1351, 848, 861, 1567, 77, 1164, 1568, 1565, + 1259, 1256, 1351, 78, 1564, 49, 1563, 1351, 1129, 1351, + 1611, 96, 96, 96, 96, 96, 96, 848, 528, 1167, + 861, 1400, 76, 1535, 1351, 1487, 1486, 1362, 1239, 1484, + 1488, 1351, 1351, 1405, 809, 1039, 848, 853, 854, 575, + 873, 874, 875, 883, 884, 885, 1355, 719, 558, 1351, + 966, 871, 966, 876, 1350, 1344, 966, 1351, 1345, 1316, + 856, 1128, 1317, 887, 1127, 974, 546, 1494, 975, 676, + 83, 581, 1648, 1061, 1261, 1526, 745, 871, 853, 854, + 1862, 2182, 2161, 2154, 855, 2117, 79, 853, 854, 1956, + 870, 2173, 808, 525, 1587, 79, 704, 2080, 2032, 1920, + 1923, 856, 1916, 1908, 1907, 1906, 79, 1902, 1901, 1900, + 856, 1899, 1541, 81, 1838, 62, 701, 701, 1613, 336, + 1811, 1121, 81, 872, 1792, 855, 79, 1776, 1771, 1770, + 1769, 1711, 1536, 81, 855, 62, 1609, 96, 819, 708, + 1572, 530, 861, 702, 1569, 1646, 1231, 82, 1255, 872, + 1557, 1548, 685, 81, 96, 1519, 82, 96, 96, 1520, + 1521, 880, 888, 969, 77, 964, 915, 82, 528, 1087, + 1349, 78, 1516, 1515, 1513, 77, 528, 529, 1500, 886, + 1499, 76, 78, 861, 1418, 1267, 693, 82, 1266, 808, + 1322, 1094, 861, 878, 908, 77, 76, 1790, 807, 871, + 683, 76, 78, 1727, 1537, 96, 2134, 2096, 2075, 2074, + 2073, 96, 864, 865, 857, 858, 859, 860, 862, 863, + 614, 76, 2065, 2050, 877, 2063, 2055, 2043, 2027, 2018, + 1977, 749, 96, 96, 96, 1966, 96, 866, 864, 865, + 857, 858, 859, 860, 862, 863, 1931, 1913, 1232, 908, + 1922, 96, 1885, 1865, 794, 1826, 1802, 1800, 1799, 1797, + 1695, 1670, 96, 1669, 1526, 1547, 1509, 1508, 1505, 1480, + 1475, 872, 741, 1225, 1447, 528, 96, 1445, 1432, 1431, + 1404, 942, 334, 528, 748, 945, 881, 1532, 1533, 1534, + 1309, 1265, 1531, 1529, 1530, 1522, 1523, 1524, 1525, 1527, + 1528, 849, 818, 1088, 917, 563, 949, 935, 934, 933, + 932, 931, 793, 724, 726, 729, 930, 929, 928, 927, + 817, 1536, 926, 925, 924, 1432, 923, 529, 1520, 1521, + 749, 922, 921, 920, 786, 529, 789, 919, 749, 912, + 901, 76, 780, 812, 546, 728, 715, 713, 1953, 1928, + 1927, 879, 1895, 778, 867, 868, 869, 882, 1827, 866, + 864, 865, 857, 858, 859, 860, 862, 863, 1597, 581, + 1520, 1521, 1520, 1521, 1596, 1917, 899, 819, 739, 2079, + 2053, 1624, 538, 846, 1926, 96, 782, 530, 737, 1589, + 96, 96, 96, 1537, 96, 1164, 804, 805, 1648, 1571, + 1045, 1570, 810, 857, 858, 859, 860, 862, 863, 853, + 854, 96, 96, 947, 859, 860, 862, 863, 948, 96, + 954, 526, 1396, 96, 684, 847, 537, 1954, 96, 1459, + 1395, 738, 856, 1526, 529, 768, 740, 1092, 528, 528, + 1457, 335, 529, 1943, 836, 1319, 334, 853, 854, 1257, + 1728, 1246, 96, 911, 938, 96, 855, 96, 96, 96, + 96, 96, 96, 834, 772, 1062, 968, 1491, 96, 971, + 856, 535, 1583, 96, 96, 1526, 1657, 829, 835, 830, + 96, 2120, 939, 940, 1522, 1523, 1524, 1525, 1527, 1528, + 1604, 96, 2179, 2088, 855, 1258, 311, 1873, 2180, 1093, + 504, 773, 943, 503, 1354, 914, 498, 829, 499, 830, + 96, 86, 946, 96, 861, 765, 1076, 829, 678, 830, + 766, 2001, 96, 2000, 1141, 1999, 1046, 1998, 1110, 978, + 96, 1685, 1684, 1789, 96, 819, 958, 530, 955, 1259, + 1256, 307, 96, 96, 737, 530, 96, 1654, 1086, 96, + 1653, 831, 312, 1504, 1065, 1503, 334, 1502, 1501, 73, + 1033, 1462, 1352, 1063, 1207, 693, 1032, 85, 1098, 1037, + 1034, 871, 1134, 1036, 904, 1177, 1161, 544, 1133, 1057, + 1056, 831, 1050, 1160, 1681, 1157, 976, 738, 779, 1144, + 574, 831, 308, 1119, 1884, 1313, 1067, 529, 529, 1071, + 1072, 1073, 1074, 1075, 1070, 335, 1145, 1147, 2087, 1312, + 1178, 1391, 1133, 1261, 1080, 1081, 1083, 1085, 1132, 711, + 1084, 511, 1688, 1222, 1778, 1152, 543, 769, 1155, 1064, + 1100, 727, 1102, 1101, 1261, 538, 677, 1982, 538, 538, + 1117, 1222, 1573, 872, 530, 764, 954, 1125, 950, 1672, + 2132, 336, 530, 1166, 1286, 1524, 1525, 1527, 1528, 1158, + 96, 1137, 96, 96, 959, 96, 531, 1229, 96, 1218, + 96, 96, 1227, 96, 96, 545, 528, 762, 752, 1111, + 1398, 1399, 1112, 1113, 1216, 1143, 1246, 1255, 536, 2186, + 770, 313, 1243, 532, 1030, 1522, 1523, 1524, 1525, 1527, + 1528, 1452, 1528, 533, 1721, 2151, 84, 1038, 2179, 1150, + 839, 1449, 1577, 763, 753, 335, 1443, 751, 315, 844, + 1230, 1162, 843, 1581, 1603, 1233, 827, 2068, 314, 837, + 1605, 866, 864, 865, 857, 858, 859, 860, 862, 863, + 2201, 965, 771, 87, 838, 2195, 1321, 331, 1321, 1280, + 1386, 310, 309, 1212, 1339, 1082, 2128, 302, 710, 936, + 2185, 1213, 334, 1214, 832, 1204, 1577, 1219, 1142, 2014, + 96, 2028, 1336, 701, 542, 701, 896, 863, 1261, 1325, + 2129, 1363, 1334, 96, 96, 96, 1822, 73, 96, 96, + 2152, 1340, 73, 72, 832, 96, 1343, 708, 1341, 1337, + 1335, 1338, 1169, 1176, 832, 1679, 1348, 530, 530, 1673, + 840, 1837, 506, 1055, 1054, 336, 525, 520, 1507, 47, + 439, 303, 1634, 96, 334, 1406, 839, 545, 48, 1689, + 1417, 96, 96, 96, 1809, 529, 2150, 96, 1854, 1130, + 96, 1983, 2178, 1416, 2153, 837, 96, 96, 96, 96, + 96, 2176, 49, 940, 939, 943, 2184, 946, 96, 1356, + 838, 96, 96, 1202, 1205, 1464, 1472, 442, 528, 1215, + 1936, 1855, 1388, 1638, 756, 1718, 1217, 722, 2193, 1425, + 1236, 1470, 718, 1221, 442, 1455, 1358, 1240, 447, 507, + 73, 1248, 1641, 443, 1366, 1201, 1058, 1360, 1419, 800, + 1993, 1368, 1272, 1272, 1283, 447, 1294, 1636, 734, 1228, + 443, 1634, 1306, 1307, 1308, 2206, 1639, 1361, 1442, 1719, + 444, 335, 1394, 749, 1992, 336, 799, 2202, 966, 1359, + 1757, 1637, 2194, 1407, 987, 1911, 1975, 444, 1869, 446, + 1420, 1444, 626, 2060, 1446, 1656, 1950, 1872, 1286, 1286, + 1467, 1428, 2196, 1044, 1871, 1424, 446, 1389, 2113, 1024, + 1468, 1060, 1638, 1370, 1473, 1493, 1099, 1090, 1850, 1107, + 1851, 735, 1962, 79, 546, 736, 1458, 1059, 1638, 1717, + 1805, 1641, 62, 335, 798, 1079, 509, 1040, 1203, 1938, + 1976, 1640, 799, 1261, 1951, 1042, 1636, 1641, 1434, 1853, + 81, 1433, 1817, 1816, 450, 1639, 449, 1043, 1856, 800, + 691, 690, 1820, 1465, 2205, 1286, 1286, 1286, 96, 1463, + 1637, 1639, 1758, 96, 734, 96, 543, 529, 1759, 790, + 1479, 1795, 96, 1912, 82, 1868, 1963, 1929, 1108, 546, + 1454, 1973, 77, 96, 1490, 530, 1813, 445, 680, 78, + 798, 1870, 1631, 96, 96, 1264, 2017, 1949, 1910, 1551, + 1694, 1687, 508, 528, 445, 1974, 1469, 1574, 317, 1514, + 1474, 546, 1353, 1471, 987, 987, 1315, 1156, 1153, 775, + 1640, 96, 1852, 96, 774, 96, 767, 1429, 1285, 96, + 761, 1031, 760, 96, 759, 758, 1640, 606, 448, 757, + 754, 689, 1591, 582, 1592, 1593, 1554, 1555, 1556, 1552, + 1077, 1520, 1521, 1069, 1579, 448, 96, 918, 746, 1585, + 1263, 2146, 2110, 1843, 1677, 1612, 1675, 1614, 1655, 1582, + 1620, 336, 1392, 1384, 93, 93, 1342, 305, 1590, 973, + 972, 970, 967, 962, 526, 521, 845, 841, 433, 434, + 435, 1600, 1601, 833, 1668, 454, 1708, 1622, 468, 2022, + 1602, 679, 1667, 1666, 546, 802, 454, 1606, 556, 1520, + 1521, 1608, 2180, 1615, 1052, 552, 552, 1618, 2024, 305, + 1402, 688, 305, 305, 571, 305, 1149, 1616, 93, 578, + 89, 1286, 1286, 336, 1626, 1628, 1782, 1133, 3, 1652, + 1650, 2070, 687, 1148, 1478, 1676, 747, 1678, 96, 1862, + 1632, 1481, 1651, 1713, 1714, 1715, 1526, 73, 1594, 1680, + 1133, 1629, 529, 73, 2082, 1697, 1146, 1643, 1659, 1497, + 1498, 1686, 1018, 1814, 623, 803, 438, 530, 557, 806, + 1403, 323, 33, 329, 28, 328, 27, 1154, 327, 26, + 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, + 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1546, + 1286, 1151, 1707, 1536, 1526, 579, 1720, 1722, 1723, 1704, + 1559, 576, 564, 1731, 1729, 497, 1734, 1854, 96, 96, + 1847, 1784, 1736, 451, 1595, 1764, 580, 2100, 1845, 325, + 25, 1934, 1849, 1387, 1383, 322, 17, 1324, 96, 1118, + 853, 854, 96, 1035, 96, 979, 1347, 2199, 2204, 1765, + 1855, 96, 2144, 1429, 528, 33, 1801, 28, 2103, 27, + 1959, 1536, 26, 856, 96, 1520, 1521, 96, 326, 12, + 1791, 1848, 1779, 330, 11, 1537, 334, 1785, 96, 1786, + 1017, 500, 501, 1777, 96, 96, 96, 855, 1798, 987, + 1787, 1724, 1442, 320, 10, 1829, 324, 9, 784, 1806, + 1828, 96, 1018, 1018, 1781, 1598, 96, 1796, 96, 1807, + 96, 96, 96, 25, 1566, 96, 96, 1866, 528, 17, + 1314, 1668, 1311, 1863, 583, 682, 1823, 1824, 1842, 1667, + 1666, 1819, 1808, 1537, 319, 8, 853, 854, 305, 694, + 305, 468, 468, 578, 1310, 1839, 1253, 1850, 905, 1851, + 321, 4, 12, 785, 1682, 1897, 1683, 11, 96, 2126, + 1815, 2007, 530, 1818, 1529, 1530, 1522, 1523, 1524, 1525, + 1527, 1528, 1883, 749, 1716, 1889, 1617, 10, 1853, 510, + 9, 1867, 915, 855, 853, 854, 913, 1856, 1981, 1701, + 1169, 1732, 784, 783, 440, 1068, 755, 1955, 1825, 1169, + 1737, 2127, 1903, 1506, 2039, 2013, 1262, 916, 46, 1664, + 1909, 600, 1844, 529, 1658, 1378, 1377, 337, 8, 1053, + 1017, 1017, 622, 1530, 1522, 1523, 1524, 1525, 1527, 1528, + 96, 96, 1768, 513, 4, 335, 1271, 528, 1170, 681, + 624, 984, 625, 985, 944, 1930, 612, 96, 96, 1668, + 1935, 96, 982, 706, 1668, 1328, 1762, 1667, 1666, 96, + 1226, 1852, 1667, 1666, 716, 1244, 96, 1772, 1489, 909, + 592, 720, 721, 604, 96, 603, 96, 529, 334, 96, + 1241, 723, 1939, 1957, 468, 468, 1941, 96, 1933, 712, + 1958, 1960, 1940, 334, 1967, 465, 987, 1971, 61, 461, + 1580, 1921, 1106, 1924, 1393, 1968, 1103, 1674, 1925, 534, + 1932, 1668, 1986, 1286, 1517, 714, 1969, 1292, 1284, 1667, + 1666, 1281, 781, 822, 897, 987, 954, 1329, 744, 1586, + 1985, 1984, 454, 1987, 1346, 811, 2003, 1114, 305, 555, + 554, 2002, 1373, 1946, 1947, 2012, 742, 1952, 1041, 1357, + 890, 889, 502, 96, 2062, 1832, 733, 732, 1385, 468, + 788, 468, 1427, 791, 2200, 2069, 1671, 96, 1286, 2119, + 528, 1996, 1997, 80, 96, 2078, 815, 815, 552, 2030, + 2005, 1453, 96, 1668, 34, 824, 986, 1018, 96, 305, + 32, 1667, 1666, 2019, 29, 24, 529, 96, 96, 22, + 2025, 21, 20, 93, 96, 2038, 31, 891, 892, 893, + 894, 895, 2057, 2064, 2042, 2036, 2046, 903, 19, 2049, + 2054, 30, 18, 530, 2058, 2037, 987, 910, 16, 96, + 96, 15, 14, 2023, 13, 45, 2067, 335, 44, 43, + 42, 41, 40, 7, 6, 336, 5, 2066, 2059, 2, + 1, 0, 335, 0, 2033, 96, 0, 0, 0, 96, + 2081, 0, 987, 987, 0, 2094, 0, 528, 2092, 0, + 0, 987, 987, 2095, 96, 1286, 0, 2056, 2045, 0, + 0, 0, 0, 0, 334, 96, 96, 530, 0, 0, + 0, 2098, 1020, 0, 96, 0, 96, 0, 2084, 96, + 2104, 334, 2102, 2105, 987, 1017, 546, 0, 0, 0, + 0, 0, 305, 0, 0, 0, 2107, 305, 305, 305, + 2121, 960, 2097, 1945, 2133, 2135, 986, 986, 2137, 529, + 96, 2125, 2136, 96, 0, 0, 2116, 0, 305, 305, + 0, 0, 2141, 0, 2138, 2140, 93, 2143, 1668, 2139, + 93, 0, 1995, 0, 2101, 468, 1667, 1666, 2156, 0, + 0, 0, 0, 96, 0, 96, 2108, 0, 0, 2171, + 2169, 2160, 0, 2168, 1989, 0, 2115, 96, 0, 468, + 0, 0, 468, 0, 93, 468, 468, 468, 468, 468, + 2177, 2175, 0, 2181, 1018, 1078, 2183, 0, 0, 0, + 468, 468, 0, 0, 2189, 1019, 530, 454, 0, 0, + 0, 2191, 1520, 1521, 0, 2198, 2197, 0, 1097, 0, + 1104, 0, 1109, 1018, 2203, 0, 529, 0, 1116, 0, + 0, 2207, 1020, 1020, 0, 0, 0, 552, 0, 0, + 578, 0, 0, 335, 0, 2170, 987, 336, 0, 305, + 0, 0, 0, 0, 601, 59, 0, 1138, 0, 0, + 335, 305, 336, 0, 0, 1535, 0, 0, 0, 305, + 1159, 1520, 1521, 305, 0, 0, 1165, 0, 983, 1179, + 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, + 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, + 1200, 0, 1206, 59, 1208, 1209, 1210, 1211, 0, 0, + 0, 0, 1017, 0, 0, 0, 0, 1526, 0, 0, + 0, 1234, 0, 0, 1018, 0, 0, 0, 539, 0, + 0, 547, 0, 0, 0, 596, 0, 0, 59, 530, + 0, 1017, 0, 1268, 1269, 1019, 1019, 1282, 0, 1293, + 1295, 1300, 1303, 1304, 1305, 0, 853, 854, 0, 0, + 1018, 1018, 0, 0, 0, 0, 0, 0, 0, 1018, + 1018, 0, 0, 0, 1536, 304, 1526, 0, 0, 856, + 0, 0, 2122, 2123, 2124, 0, 0, 305, 0, 1332, + 1333, 2130, 305, 0, 0, 305, 0, 468, 468, 0, + 468, 578, 1018, 855, 0, 0, 0, 0, 0, 1520, + 1521, 986, 1538, 1539, 1540, 0, 0, 560, 983, 983, + 567, 570, 0, 560, 987, 1886, 0, 0, 0, 0, + 0, 0, 0, 1536, 0, 0, 530, 0, 0, 0, + 0, 0, 1017, 0, 0, 0, 1537, 0, 0, 0, + 0, 0, 0, 336, 0, 0, 0, 0, 0, 0, + 0, 861, 1535, 0, 987, 0, 0, 0, 0, 0, + 336, 0, 0, 0, 0, 0, 0, 0, 1017, 1017, + 0, 0, 0, 0, 0, 0, 0, 1017, 1017, 0, + 0, 0, 0, 0, 0, 0, 0, 1365, 0, 0, + 0, 0, 0, 0, 0, 1537, 0, 0, 0, 0, + 305, 305, 305, 0, 1526, 305, 1374, 1020, 871, 0, + 1017, 0, 578, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1531, 1529, 1530, 1522, 1523, 1524, + 1525, 1527, 1528, 815, 1018, 0, 0, 0, 0, 824, + 305, 1541, 0, 0, 0, 0, 0, 0, 305, 1422, + 1423, 0, 0, 0, 1138, 0, 0, 1430, 0, 987, + 0, 1536, 547, 1435, 1436, 1438, 1440, 1441, 0, 0, + 0, 0, 0, 0, 0, 1448, 0, 0, 1450, 305, + 872, 0, 0, 1531, 1529, 1530, 1522, 1523, 1524, 1525, + 1527, 1528, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 986, 0, + 0, 0, 0, 1460, 1461, 0, 0, 0, 0, 1466, + 1019, 0, 0, 0, 0, 0, 0, 0, 0, 1476, + 1477, 0, 0, 1537, 0, 0, 560, 986, 570, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1448, 1449, 0, 0, 0, 0, 1454, + 0, 1485, 1017, 0, 0, 0, 0, 0, 1492, 0, + 0, 1496, 0, 0, 0, 0, 0, 0, 0, 0, + 865, 857, 858, 859, 860, 862, 863, 1510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1005, 1005, 0, 0, 0, 543, 1464, 1465, 0, - 1005, 1005, 0, 0, 0, 1006, 0, 0, 0, 0, - 0, 1473, 0, 0, 0, 0, 0, 0, 1480, 0, - 0, 1484, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1005, 0, 0, 0, 1498, 0, 0, - 0, 332, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 0, 0, 0, 1508, 1509, 0, 1526, 1527, 1528, - 0, 0, 895, 0, 1531, 1532, 1533, 0, 1288, 1288, - 1288, 0, 0, 975, 975, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 978, 0, 0, 0, 0, 0, - 0, 1566, 0, 0, 0, 301, 0, 0, 0, 0, - 301, 0, 1572, 332, 0, 0, 0, 1523, 0, 301, - 0, 0, 0, 978, 1008, 0, 0, 0, 0, 0, - 301, 0, 0, 1587, 0, 0, 0, 0, 0, 0, - 1353, 1353, 1098, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 526, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1514, 1085, 0, - 1085, 0, 464, 0, 0, 0, 301, 1615, 0, 0, - 1613, 0, 1104, 0, 0, 1005, 0, 0, 0, 0, - 0, 0, 0, 1006, 0, 0, 0, 0, 0, 0, - 0, 0, 1529, 301, 0, 0, 0, 0, 0, 1007, - 0, 0, 0, 1648, 0, 0, 0, 0, 0, 0, - 1651, 0, 1524, 0, 978, 0, 0, 0, 0, 0, - 0, 0, 0, 1006, 0, 0, 0, 535, 0, 0, - 0, 1678, 0, 0, 1679, 0, 0, 0, 0, 0, - 1680, 1681, 0, 0, 0, 0, 1684, 0, 0, 0, - 978, 978, 0, 0, 0, 1693, 0, 0, 1274, 978, - 978, 0, 0, 1697, 0, 0, 1587, 0, 0, 0, - 0, 0, 892, 0, 894, 0, 0, 0, 0, 0, - 0, 898, 0, 0, 1525, 1714, 1721, 0, 0, 0, - 1723, 0, 978, 0, 0, 0, 0, 0, 0, 1726, - 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, - 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 0, 1748, - 0, 1008, 0, 1754, 1755, 0, 0, 0, 1006, 0, - 0, 0, 1761, 1762, 1763, 0, 0, 0, 0, 0, - 0, 0, 526, 0, 0, 0, 0, 0, 0, 807, - 1008, 0, 0, 1005, 975, 0, 0, 0, 845, 846, - 0, 816, 0, 0, 0, 301, 301, 1520, 1521, 1522, - 0, 0, 1519, 1517, 1518, 1510, 1511, 1512, 1513, 1515, - 1516, 848, 0, 0, 0, 1781, 0, 0, 0, 1126, - 0, 1085, 0, 1005, 0, 0, 0, 0, 1791, 0, - 0, 0, 0, 0, 0, 847, 1007, 0, 0, 0, - 0, 301, 0, 0, 301, 0, 0, 0, 0, 0, - 0, 59, 0, 0, 0, 1824, 0, 0, 0, 0, - 0, 1828, 1829, 1126, 978, 1007, 0, 1852, 0, 0, - 0, 0, 1508, 1509, 0, 0, 0, 1651, 574, 0, - 0, 1008, 0, 1862, 0, 1863, 0, 301, 1865, 1866, - 0, 853, 1869, 301, 0, 0, 1876, 0, 0, 0, - 1879, 1880, 0, 0, 0, 1882, 535, 0, 0, 535, - 535, 0, 1884, 0, 1886, 0, 0, 1008, 1008, 0, - 1508, 1509, 0, 1526, 1527, 1528, 1008, 1008, 1005, 0, - 1893, 0, 0, 0, 0, 1892, 1875, 0, 0, 0, - 59, 0, 0, 59, 0, 0, 863, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1008, - 0, 0, 0, 1902, 0, 0, 1007, 0, 0, 0, - 0, 0, 0, 1523, 0, 1514, 0, 0, 1274, 1274, + 0, 0, 0, 983, 0, 0, 1543, 1544, 1545, 0, + 0, 0, 903, 0, 0, 0, 0, 0, 1300, 1300, + 1300, 0, 1018, 0, 1020, 0, 1532, 1533, 1534, 0, + 0, 1531, 1529, 1530, 1522, 1523, 1524, 1525, 1527, 1528, + 0, 1578, 853, 854, 0, 305, 0, 0, 986, 0, + 305, 0, 1584, 1020, 0, 0, 0, 0, 0, 305, + 0, 0, 1018, 0, 0, 856, 0, 0, 0, 0, + 305, 0, 0, 1599, 0, 0, 0, 0, 0, 0, + 1365, 1365, 0, 0, 986, 986, 0, 0, 0, 855, + 0, 0, 0, 986, 986, 0, 0, 0, 0, 0, + 0, 0, 0, 539, 0, 0, 0, 0, 1097, 0, + 1097, 0, 468, 0, 0, 0, 305, 1627, 0, 0, + 1625, 0, 1116, 0, 0, 0, 986, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1019, 0, 0, + 1017, 0, 0, 305, 0, 0, 560, 861, 900, 0, + 902, 0, 0, 1660, 1020, 0, 0, 906, 0, 0, + 1663, 0, 0, 0, 0, 0, 1019, 1018, 0, 0, + 0, 0, 1520, 1521, 0, 1538, 1539, 1540, 0, 0, + 1017, 1690, 1692, 1693, 1691, 0, 0, 0, 1699, 0, + 1020, 1020, 0, 0, 0, 0, 1696, 820, 0, 1020, + 1020, 0, 0, 0, 871, 1705, 0, 0, 0, 0, + 983, 0, 0, 1709, 0, 0, 1599, 0, 0, 0, + 0, 0, 0, 0, 0, 1535, 0, 0, 0, 0, + 0, 0, 1020, 0, 0, 1726, 1733, 0, 0, 983, + 1735, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, + 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1756, + 0, 1760, 0, 0, 0, 0, 0, 1019, 986, 0, + 0, 0, 0, 1766, 1767, 0, 872, 1526, 0, 0, + 0, 0, 1773, 1774, 1775, 1017, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 815, + 0, 59, 0, 1019, 1019, 0, 0, 0, 0, 0, + 0, 824, 1019, 1019, 1541, 305, 305, 0, 0, 0, + 953, 0, 0, 0, 0, 560, 957, 957, 0, 0, + 0, 0, 0, 0, 1536, 1793, 0, 0, 0, 1138, + 983, 1097, 0, 0, 0, 1019, 567, 570, 1803, 0, + 0, 0, 0, 0, 0, 0, 539, 0, 0, 539, + 539, 305, 0, 0, 305, 0, 0, 857, 858, 859, + 860, 862, 863, 0, 1020, 1836, 983, 983, 0, 0, + 0, 1840, 1841, 1138, 0, 983, 983, 1864, 0, 0, + 59, 0, 0, 59, 0, 0, 0, 1663, 578, 0, + 0, 0, 0, 1874, 0, 1875, 1537, 305, 1877, 1878, + 0, 0, 1881, 305, 0, 0, 1888, 0, 983, 0, + 1891, 1892, 0, 0, 0, 1894, 0, 0, 0, 0, + 0, 0, 1896, 0, 1898, 0, 0, 0, 0, 0, + 0, 0, 0, 1224, 0, 0, 986, 0, 0, 0, + 1905, 0, 0, 0, 0, 1904, 0, 1126, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 560, + 0, 0, 0, 0, 0, 0, 0, 570, 0, 0, + 0, 560, 0, 1914, 0, 0, 986, 1019, 0, 1532, + 1533, 1534, 0, 0, 1531, 1529, 1530, 1522, 1523, 1524, + 1525, 1527, 1528, 0, 0, 0, 0, 0, 0, 0, + 0, 59, 0, 59, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1663, 0, 578, 1374, 59, + 1663, 0, 0, 0, 59, 1944, 0, 0, 0, 0, + 0, 0, 0, 0, 305, 305, 0, 0, 305, 0, + 0, 0, 1020, 0, 0, 0, 1836, 0, 0, 0, + 983, 0, 0, 1965, 0, 0, 0, 0, 0, 0, + 0, 1138, 0, 1970, 1978, 0, 1972, 0, 0, 0, + 0, 0, 0, 0, 305, 0, 0, 1663, 0, 0, + 0, 986, 1020, 1994, 0, 1330, 0, 0, 0, 0, + 570, 0, 0, 570, 0, 0, 0, 0, 2008, 2009, + 0, 0, 2004, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2016, + 0, 0, 59, 0, 0, 0, 0, 0, 0, 2021, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 975, 0, 1212, 0, 0, 0, 0, 0, 0, - 0, 0, 1007, 1007, 0, 1651, 0, 574, 1362, 0, - 1651, 1007, 1007, 0, 0, 1932, 0, 0, 864, 0, - 975, 0, 0, 1514, 301, 301, 0, 0, 301, 0, - 1524, 0, 0, 526, 0, 0, 1824, 0, 0, 0, - 0, 0, 978, 1953, 1007, 1274, 1274, 1274, 0, 0, - 0, 1126, 0, 1958, 0, 332, 1960, 0, 1529, 0, - 0, 59, 1966, 59, 301, 0, 0, 1651, 0, 0, - 0, 0, 0, 1982, 0, 0, 0, 0, 1524, 59, - 0, 0, 978, 0, 59, 0, 0, 0, 1996, 1997, - 0, 0, 1992, 0, 0, 0, 0, 526, 0, 0, - 0, 1008, 1525, 0, 0, 0, 0, 856, 857, 849, - 850, 851, 852, 854, 855, 0, 0, 2004, 0, 2009, - 0, 975, 0, 0, 0, 0, 0, 0, 0, 0, - 574, 0, 0, 0, 0, 0, 0, 0, 0, 1651, - 0, 0, 0, 0, 301, 0, 0, 0, 0, 0, - 1525, 2029, 2032, 0, 0, 0, 0, 975, 975, 301, - 0, 0, 0, 0, 0, 1824, 975, 975, 0, 0, - 0, 0, 0, 0, 574, 1824, 0, 0, 59, 2049, - 0, 1085, 0, 0, 0, 0, 1007, 978, 0, 0, - 1519, 1517, 1518, 1510, 1511, 1512, 1513, 1515, 1516, 975, - 0, 0, 0, 0, 0, 0, 2059, 2060, 0, 0, - 0, 0, 0, 0, 0, 0, 526, 0, 0, 0, - 0, 1274, 1274, 1401, 2071, 0, 0, 0, 0, 816, - 0, 0, 2078, 1520, 1521, 1522, 2079, 0, 1519, 1517, - 1518, 1510, 1511, 1512, 1513, 1515, 1516, 0, 0, 0, - 0, 574, 59, 0, 0, 59, 0, 332, 0, 0, - 1508, 1509, 1824, 574, 0, 0, 0, 0, 0, 0, - 0, 2102, 332, 574, 0, 0, 301, 0, 0, 1008, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 0, - 1274, 0, 0, 0, 1651, 0, 1212, 2029, 0, 0, - 1824, 0, 0, 0, 0, 0, 0, 0, 0, 1008, - 0, 0, 2145, 0, 0, 0, 894, 0, 0, 0, - 2155, 2155, 0, 0, 0, 0, 0, 0, 0, 0, - 301, 975, 574, 0, 0, 0, 0, 0, 0, 526, - 0, 0, 0, 0, 2162, 0, 0, 0, 0, 0, - 0, 0, 0, 1514, 1007, 0, 2155, 0, 0, 0, - 0, 0, 845, 846, 0, 865, 866, 867, 875, 876, - 877, 0, 0, 0, 0, 0, 0, 0, 868, 0, - 0, 894, 0, 0, 0, 848, 0, 0, 879, 0, - 0, 2155, 0, 0, 1007, 845, 846, 0, 865, 866, - 867, 875, 876, 877, 0, 0, 0, 0, 1524, 847, - 0, 868, 0, 543, 1008, 862, 0, 0, 848, 0, - 0, 879, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 526, 0, 0, 0, - 0, 0, 847, 0, 0, 0, 0, 0, 862, 0, - 0, 0, 0, 332, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 853, 0, 0, 0, 0, - 332, 0, 0, 0, 59, 0, 0, 0, 59, 0, - 1525, 0, 0, 0, 872, 880, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 59, 0, 0, 853, 1007, - 878, 59, 0, 0, 0, 0, 1637, 0, 0, 975, - 0, 0, 0, 0, 870, 845, 846, 872, 880, 0, - 863, 875, 876, 877, 0, 0, 0, 0, 0, 0, - 0, 1508, 1509, 878, 1526, 1527, 1528, 0, 848, 0, - 0, 879, 0, 0, 0, 869, 0, 870, 0, 975, - 0, 0, 0, 863, 0, 0, 0, 0, 0, 0, - 0, 0, 847, 0, 0, 0, 0, 0, 862, 1517, - 1518, 1510, 1511, 1512, 1513, 1515, 1516, 0, 869, 0, - 0, 0, 0, 0, 1523, 0, 0, 0, 0, 0, - 0, 0, 864, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1274, 0, 0, 0, 873, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 853, 0, - 0, 0, 0, 0, 0, 864, 0, 0, 0, 0, - 0, 0, 0, 0, 1514, 0, 0, 872, 880, 0, - 873, 0, 0, 0, 0, 845, 846, 0, 865, 866, - 867, 875, 876, 877, 975, 0, 0, 0, 1274, 0, - 0, 868, 0, 0, 0, 0, 0, 870, 848, 0, - 0, 879, 871, 863, 0, 859, 860, 861, 874, 1401, - 858, 856, 857, 849, 850, 851, 852, 854, 855, 1524, - 0, 0, 847, 0, 0, 0, 1905, 0, 862, 0, - 0, 0, 0, 0, 0, 871, 0, 0, 859, 860, - 861, 874, 0, 858, 856, 857, 849, 850, 851, 852, - 854, 855, 0, 0, 1401, 0, 0, 1401, 0, 1550, + 578, 0, 0, 0, 0, 0, 0, 0, 0, 1663, + 0, 0, 0, 0, 305, 1019, 0, 0, 0, 0, + 0, 2041, 2044, 0, 0, 0, 0, 1413, 0, 305, + 0, 0, 0, 0, 0, 1836, 0, 0, 0, 0, + 0, 0, 0, 0, 578, 1836, 0, 1020, 0, 2061, + 0, 1097, 0, 0, 0, 1019, 59, 0, 0, 59, + 0, 0, 0, 0, 0, 0, 0, 0, 1367, 570, + 1369, 0, 0, 560, 0, 0, 2071, 2072, 0, 0, + 0, 0, 0, 0, 0, 0, 2083, 0, 983, 853, + 854, 0, 873, 874, 875, 883, 884, 885, 0, 824, + 0, 0, 2090, 0, 0, 876, 2091, 0, 1412, 0, + 1224, 0, 856, 0, 0, 887, 1421, 0, 0, 0, + 0, 578, 0, 0, 0, 0, 0, 0, 983, 0, + 902, 0, 1836, 578, 0, 0, 855, 0, 0, 0, + 0, 2114, 870, 578, 0, 0, 305, 1451, 0, 853, + 854, 0, 873, 874, 875, 883, 884, 885, 0, 0, + 1019, 0, 0, 0, 0, 876, 0, 0, 0, 0, + 0, 0, 856, 0, 1663, 887, 0, 2041, 0, 0, + 1836, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2157, 0, 861, 902, 855, 0, 0, 0, + 2167, 2167, 870, 0, 0, 0, 0, 0, 0, 0, + 305, 0, 578, 880, 888, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2174, 0, 0, 547, 0, 0, + 0, 886, 0, 983, 0, 0, 2167, 0, 0, 0, + 0, 0, 0, 0, 0, 878, 0, 0, 0, 0, + 0, 871, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 864, 0, 0, 853, 0, + 0, 2167, 0, 880, 888, 0, 877, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, + 0, 886, 59, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1575, 0, 878, 0, 0, 953, 59, + 0, 871, 0, 0, 0, 59, 0, 953, 0, 0, + 1649, 0, 0, 872, 0, 0, 0, 0, 560, 0, + 0, 0, 0, 0, 0, 0, 877, 0, 881, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 873, 1525, 0, 0, 0, 1274, 0, 872, 880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 878, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 870, 0, 0, - 0, 0, 0, 863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 871, 0, 0, 869, 0, - 0, 874, 0, 858, 856, 857, 849, 850, 851, 852, - 854, 855, 0, 0, 1520, 1521, 1522, 0, 0, 1519, - 1517, 1518, 1510, 1511, 1512, 1513, 1515, 1516, 0, 0, + 0, 0, 0, 0, 1619, 0, 0, 0, 0, 0, + 0, 0, 0, 872, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 881, 0, + 0, 1412, 0, 879, 0, 0, 867, 868, 869, 882, + 0, 866, 864, 865, 857, 858, 859, 860, 862, 863, + 0, 0, 0, 0, 0, 0, 0, 1562, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 853, 854, + 0, 873, 874, 875, 883, 884, 885, 0, 0, 0, + 0, 0, 0, 0, 876, 0, 0, 0, 0, 0, + 0, 856, 0, 879, 887, 0, 867, 868, 869, 882, + 0, 866, 864, 865, 857, 858, 859, 860, 862, 863, + 0, 0, 0, 0, 0, 855, 0, 1561, 0, 0, + 0, 870, 0, 1413, 0, 0, 0, 0, 0, 853, + 854, 0, 873, 874, 875, 883, 884, 885, 0, 0, + 0, 0, 0, 0, 0, 876, 0, 0, 0, 0, + 0, 0, 856, 0, 0, 887, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1413, 0, + 0, 1413, 0, 861, 0, 0, 855, 0, 0, 0, + 0, 0, 870, 0, 0, 0, 0, 0, 853, 854, + 0, 0, 880, 888, 883, 884, 885, 0, 0, 0, + 0, 0, 0, 1330, 1412, 0, 0, 0, 0, 0, + 886, 856, 0, 0, 887, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 878, 0, 0, 0, 0, 0, + 871, 0, 0, 0, 861, 855, 0, 0, 0, 0, + 0, 870, 0, 0, 0, 0, 0, 0, 0, 1412, + 0, 0, 1412, 880, 888, 877, 853, 854, 0, 873, + 874, 875, 883, 884, 885, 0, 0, 0, 0, 0, + 0, 886, 0, 0, 0, 0, 0, 0, 0, 856, + 0, 0, 887, 0, 0, 878, 0, 0, 0, 0, + 0, 871, 0, 861, 0, 1876, 0, 0, 0, 0, + 0, 1882, 872, 855, 0, 0, 0, 0, 0, 870, + 0, 0, 880, 888, 0, 0, 877, 881, 59, 0, + 853, 854, 0, 873, 874, 875, 883, 884, 885, 0, + 0, 0, 0, 0, 0, 0, 876, 0, 0, 0, + 0, 0, 0, 856, 878, 0, 887, 0, 0, 0, + 871, 1413, 1413, 0, 0, 1413, 0, 0, 0, 0, + 0, 861, 0, 872, 0, 0, 0, 855, 0, 0, + 0, 0, 0, 870, 0, 0, 0, 0, 881, 0, + 880, 888, 879, 0, 0, 867, 868, 869, 882, 0, + 866, 864, 865, 857, 858, 859, 860, 862, 863, 0, + 0, 0, 0, 0, 0, 0, 1560, 0, 0, 0, + 0, 0, 878, 0, 0, 0, 0, 0, 871, 0, + 0, 0, 872, 0, 0, 861, 0, 0, 0, 0, + 0, 0, 1412, 1412, 0, 0, 1412, 881, 0, 0, + 0, 0, 0, 879, 880, 888, 867, 868, 869, 882, + 0, 866, 864, 865, 857, 858, 859, 860, 862, 863, + 0, 2026, 886, 0, 0, 0, 0, 1512, 0, 59, + 0, 0, 1979, 0, 0, 0, 878, 0, 0, 0, + 0, 0, 871, 0, 0, 0, 1413, 0, 0, 0, + 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 879, 0, 0, 881, 0, 877, 882, 0, + 866, 864, 865, 857, 858, 859, 860, 862, 863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 59, 864, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1401, 1401, 0, - 0, 1401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2035, 0, 872, 0, 0, 0, 0, 0, + 0, 0, 902, 0, 0, 0, 0, 1412, 0, 881, + 879, 0, 0, 867, 868, 869, 882, 0, 866, 864, + 865, 857, 858, 859, 860, 862, 863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 871, 0, 0, 859, 860, - 861, 874, 0, 858, 856, 857, 849, 850, 851, 852, - 854, 855, 0, 0, 0, 0, 0, 0, 0, 1549, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 879, 0, 0, 867, 868, 869, + 882, 0, 866, 864, 865, 857, 858, 859, 860, 862, + 863, 0, 0, 0, 0, 2111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2014, 0, 0, - 0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1401, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 329, + 0, 0, 0, 0, 2118, 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 98, 99, 348, 100, 349, - 350, 351, 352, 245, 353, 354, 355, 356, 101, 102, - 103, 246, 247, 248, 249, 104, 250, 251, 357, 105, - 252, 253, 106, 107, 358, 359, 254, 255, 256, 360, - 108, 257, 361, 334, 362, 109, 110, 111, 894, 112, - 363, 113, 114, 115, 364, 335, 116, 117, 365, 366, - 367, 368, 369, 370, 118, 119, 302, 120, 258, 121, - 259, 260, 371, 122, 372, 123, 373, 374, 375, 124, - 125, 376, 126, 377, 0, 378, 261, 127, 128, 129, - 262, 263, 379, 380, 381, 130, 131, 264, 0, 132, - 382, 133, 383, 384, 336, 385, 134, 265, 386, 266, - 387, 135, 136, 137, 138, 267, 268, 338, 388, 142, - 389, 139, 390, 337, 140, 269, 141, 270, 271, 272, - 391, 273, 392, 339, 143, 144, 340, 145, 146, 147, - 393, 149, 148, 394, 274, 341, 150, 342, 395, 151, - 396, 397, 152, 0, 153, 154, 155, 157, 275, 156, - 343, 158, 159, 161, 160, 398, 399, 400, 276, 162, - 277, 163, 164, 401, 165, 402, 403, 166, 404, 405, - 167, 278, 344, 168, 345, 279, 169, 170, 171, 172, - 173, 406, 280, 174, 281, 175, 407, 176, 177, 178, - 179, 180, 282, 181, 182, 408, 183, 184, 185, 186, - 187, 189, 190, 188, 191, 192, 193, 194, 409, 195, - 346, 196, 197, 283, 198, 0, 202, 203, 204, 205, - 410, 284, 206, 207, 208, 411, 209, 199, 200, 210, - 347, 211, 285, 286, 212, 412, 218, 213, 214, 201, - 215, 217, 287, 216, 288, 413, 219, 414, 220, 221, - 222, 223, 224, 415, 289, 290, 291, 416, 417, 225, - 226, 292, 293, 418, 227, 228, 229, 230, 419, 420, - 231, 232, 233, 234, 421, 235, 422, 294, 236, 237, - 238, 295, 296, 423, 424, 239, 425, 426, 427, 428, - 240, 241, 242, 243, 244, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 329, 0, 0, 0, - 0, 0, 0, 1818, 0, 0, 0, 0, 0, 0, - 0, 1819, 98, 99, 348, 100, 349, 350, 351, 352, - 245, 353, 354, 355, 356, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 357, 105, 252, 253, 106, - 107, 358, 359, 254, 255, 256, 360, 108, 257, 361, - 334, 362, 109, 110, 111, 0, 112, 363, 113, 114, - 115, 364, 335, 116, 117, 365, 366, 367, 368, 369, - 370, 118, 119, 302, 120, 258, 121, 259, 260, 371, - 122, 372, 123, 373, 374, 375, 124, 125, 376, 126, - 377, 0, 378, 261, 127, 128, 129, 262, 263, 379, - 380, 381, 130, 131, 264, 0, 132, 382, 133, 383, - 384, 336, 385, 134, 265, 386, 266, 387, 135, 136, - 137, 138, 267, 268, 338, 388, 142, 389, 139, 390, - 337, 140, 269, 141, 270, 271, 272, 391, 273, 392, - 339, 143, 144, 340, 145, 146, 147, 393, 149, 148, - 394, 274, 341, 150, 342, 395, 151, 396, 397, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 398, 399, 400, 276, 162, 277, 163, 164, - 401, 165, 402, 403, 166, 404, 405, 167, 278, 344, - 168, 345, 279, 169, 170, 171, 172, 173, 406, 280, - 174, 281, 175, 407, 176, 177, 178, 179, 180, 282, - 181, 182, 408, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 409, 195, 346, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 410, 284, 206, - 207, 208, 411, 209, 199, 200, 210, 347, 211, 285, - 286, 212, 412, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 413, 219, 414, 220, 221, 222, 223, 224, - 415, 289, 290, 291, 416, 417, 225, 226, 292, 293, - 418, 227, 228, 229, 230, 419, 420, 231, 232, 233, - 234, 421, 235, 422, 294, 236, 237, 238, 295, 296, - 423, 424, 239, 425, 426, 427, 428, 240, 241, 242, - 243, 244, 0, 0, 0, 329, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 98, 99, 352, 100, 353, + 354, 355, 356, 245, 357, 358, 359, 360, 101, 102, + 103, 246, 247, 248, 249, 104, 250, 251, 361, 105, + 252, 253, 106, 107, 362, 363, 254, 255, 256, 364, + 108, 257, 365, 338, 366, 109, 110, 111, 1330, 112, + 367, 113, 114, 115, 368, 339, 116, 117, 369, 370, + 371, 372, 373, 374, 118, 119, 306, 120, 258, 121, + 259, 260, 375, 122, 376, 123, 377, 378, 379, 124, + 125, 380, 126, 381, 0, 382, 261, 127, 128, 129, + 262, 263, 383, 384, 385, 130, 131, 264, 265, 266, + 0, 132, 386, 133, 387, 388, 340, 389, 134, 267, + 390, 268, 391, 135, 136, 137, 138, 269, 270, 342, + 392, 142, 393, 139, 394, 341, 140, 271, 141, 272, + 273, 274, 275, 276, 395, 277, 396, 343, 143, 144, + 344, 145, 146, 147, 397, 149, 148, 398, 278, 345, + 150, 346, 399, 151, 400, 401, 152, 0, 153, 154, + 155, 157, 279, 156, 347, 158, 159, 161, 160, 402, + 403, 404, 280, 162, 281, 163, 164, 405, 165, 406, + 407, 166, 408, 409, 167, 282, 348, 168, 349, 283, + 169, 170, 171, 172, 173, 410, 284, 174, 285, 175, + 411, 176, 177, 178, 179, 180, 286, 181, 182, 412, + 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, + 193, 194, 413, 195, 350, 196, 197, 287, 198, 0, + 202, 203, 204, 205, 414, 288, 206, 207, 208, 415, + 209, 199, 200, 210, 351, 211, 289, 290, 212, 416, + 218, 213, 214, 201, 215, 217, 291, 216, 292, 417, + 219, 418, 220, 221, 222, 223, 224, 419, 293, 294, + 295, 420, 421, 225, 226, 296, 297, 422, 227, 228, + 229, 230, 423, 424, 231, 232, 233, 234, 425, 235, + 426, 298, 236, 237, 238, 299, 300, 427, 428, 239, + 429, 430, 431, 432, 240, 241, 242, 243, 244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2094, 98, 99, 348, 100, 349, 350, 351, 352, 245, - 353, 354, 355, 356, 101, 102, 103, 246, 247, 248, - 249, 104, 250, 251, 357, 105, 252, 253, 106, 107, - 358, 359, 254, 255, 256, 360, 108, 257, 361, 334, - 362, 109, 110, 111, 0, 112, 363, 113, 114, 115, - 364, 335, 116, 117, 365, 366, 367, 368, 369, 370, - 118, 119, 302, 120, 258, 121, 259, 260, 371, 122, - 372, 123, 373, 374, 375, 124, 125, 376, 126, 377, - 0, 378, 261, 127, 128, 129, 262, 263, 379, 380, - 381, 130, 131, 264, 0, 132, 382, 133, 383, 384, - 336, 385, 134, 265, 386, 266, 387, 135, 136, 137, - 138, 267, 268, 338, 388, 142, 389, 139, 390, 337, - 140, 269, 141, 270, 271, 272, 391, 273, 392, 339, - 143, 144, 340, 145, 146, 147, 393, 149, 148, 394, - 274, 341, 150, 342, 395, 151, 396, 397, 152, 0, - 153, 154, 155, 157, 275, 156, 343, 158, 159, 161, - 160, 398, 399, 400, 276, 162, 277, 163, 164, 401, - 165, 402, 403, 166, 404, 405, 167, 278, 344, 168, - 345, 279, 169, 170, 171, 172, 173, 406, 280, 174, - 281, 175, 407, 176, 177, 178, 179, 180, 282, 181, - 182, 408, 183, 184, 185, 186, 187, 189, 190, 188, - 191, 192, 193, 194, 409, 195, 346, 196, 197, 283, - 198, 0, 202, 203, 204, 205, 410, 284, 206, 207, - 208, 411, 209, 199, 200, 210, 347, 211, 285, 286, - 212, 412, 218, 213, 214, 201, 215, 217, 287, 216, - 288, 413, 219, 414, 220, 221, 222, 223, 224, 415, - 289, 290, 291, 416, 417, 225, 226, 292, 293, 418, - 227, 228, 229, 230, 419, 420, 231, 232, 233, 234, - 421, 235, 422, 294, 236, 237, 238, 295, 296, 423, - 424, 239, 425, 426, 427, 428, 240, 241, 242, 243, - 244, 329, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 842, 0, 0, 98, 99, 348, - 100, 349, 350, 351, 352, 245, 353, 354, 355, 356, - 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, - 357, 105, 252, 253, 106, 107, 358, 359, 254, 255, - 256, 360, 108, 257, 361, 334, 362, 109, 110, 111, - 0, 112, 363, 113, 114, 115, 364, 335, 116, 117, - 365, 366, 367, 368, 369, 370, 118, 119, 302, 120, - 258, 121, 259, 260, 371, 122, 372, 123, 373, 374, - 375, 124, 125, 376, 126, 377, 0, 378, 261, 127, - 128, 129, 262, 263, 379, 380, 381, 130, 131, 264, - 0, 132, 382, 133, 383, 384, 336, 385, 134, 265, - 386, 266, 387, 135, 136, 137, 138, 267, 268, 338, - 388, 142, 389, 139, 390, 337, 140, 269, 141, 270, - 271, 272, 391, 273, 392, 339, 143, 144, 340, 145, - 146, 147, 393, 149, 148, 394, 274, 341, 150, 342, - 395, 151, 396, 397, 152, 0, 153, 154, 155, 157, - 275, 156, 343, 158, 159, 161, 160, 398, 399, 400, - 276, 162, 277, 163, 164, 401, 165, 402, 403, 166, - 404, 405, 167, 278, 344, 168, 345, 279, 169, 170, - 171, 172, 173, 406, 280, 174, 281, 175, 407, 176, - 177, 178, 179, 180, 282, 181, 182, 408, 183, 184, - 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, - 409, 195, 346, 196, 197, 283, 198, 0, 202, 203, - 204, 205, 410, 284, 206, 207, 208, 411, 209, 199, - 200, 210, 347, 211, 285, 286, 212, 412, 218, 213, - 214, 201, 215, 217, 287, 216, 288, 413, 219, 414, - 220, 221, 222, 223, 224, 415, 289, 290, 291, 416, - 417, 225, 226, 292, 293, 418, 227, 228, 229, 230, - 419, 420, 231, 232, 233, 234, 421, 235, 422, 294, - 236, 237, 238, 295, 296, 423, 424, 239, 425, 426, - 427, 428, 240, 241, 242, 243, 244, 616, 605, 606, - 603, 604, 595, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, - 0, 632, 598, 0, 0, 0, 101, 102, 103, 246, - 647, 248, 648, 104, 649, 650, 0, 105, 252, 253, - 106, 107, 601, 631, 651, 652, 256, 0, 108, 643, - 0, 624, 0, 109, 110, 111, 0, 112, 0, 113, - 114, 115, 0, 335, 116, 117, 0, 625, 627, 0, - 626, 628, 118, 119, 302, 120, 653, 121, 654, 655, - 817, 122, 0, 123, 0, 0, 0, 646, 125, 0, - 126, 0, 0, 0, 589, 127, 128, 129, 633, 634, - 612, 0, 0, 130, 131, 656, 0, 132, 0, 133, - 0, 0, 336, 0, 134, 644, 0, 266, 0, 135, - 136, 137, 138, 640, 642, 338, 0, 142, 0, 139, - 0, 337, 140, 657, 141, 658, 659, 660, 0, 623, - 0, 339, 143, 144, 340, 145, 146, 147, 0, 149, - 148, 0, 645, 341, 150, 342, 0, 151, 0, 0, - 152, 0, 153, 154, 155, 157, 275, 156, 343, 158, - 159, 161, 160, 584, 0, 613, 641, 162, 661, 163, - 164, 0, 165, 0, 0, 166, 0, 0, 167, 278, - 344, 168, 345, 635, 169, 170, 171, 172, 173, 0, - 636, 174, 281, 175, 0, 176, 177, 178, 179, 180, - 662, 181, 182, 0, 183, 184, 185, 186, 187, 189, - 190, 188, 191, 192, 193, 194, 0, 195, 346, 196, - 197, 590, 198, 0, 202, 203, 204, 205, 79, 284, - 206, 207, 208, 629, 209, 199, 200, 210, 347, 211, - 663, 286, 212, 0, 218, 213, 214, 201, 215, 217, - 664, 216, 637, 0, 219, 81, 220, 221, 222, 223, - 224, 0, 289, 665, 666, 0, 0, 225, 226, 638, - 639, 611, 227, 228, 229, 230, 0, 0, 231, 232, - 233, 234, 630, 235, 0, 294, 236, 237, 238, 701, - 667, 0, 0, 239, 0, 0, 0, 77, 240, 241, - 242, 243, 244, 585, 78, 0, 0, 0, 0, 583, - 0, 0, 0, 0, 581, 582, 616, 605, 606, 603, - 604, 595, 0, 591, 0, 0, 0, 0, 594, 0, - 0, 0, 98, 99, 1238, 100, 0, 0, 0, 0, - 632, 598, 0, 0, 0, 101, 102, 103, 246, 647, - 248, 648, 104, 649, 650, 0, 105, 252, 253, 106, - 107, 601, 631, 651, 652, 256, 0, 108, 643, 0, - 624, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 625, 627, 0, 626, - 628, 118, 119, 302, 120, 653, 121, 654, 655, 0, - 122, 0, 123, 0, 1239, 0, 646, 125, 0, 126, - 0, 0, 0, 589, 127, 128, 129, 633, 634, 612, - 0, 0, 130, 131, 656, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 644, 0, 266, 0, 135, 136, - 137, 138, 640, 642, 338, 0, 142, 0, 139, 0, - 337, 140, 657, 141, 658, 659, 660, 0, 623, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 645, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 584, 0, 613, 641, 162, 661, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 635, 169, 170, 171, 172, 173, 0, 636, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 662, - 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 590, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 629, 209, 199, 200, 210, 347, 211, 663, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 664, - 216, 637, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 665, 666, 0, 0, 225, 226, 638, 639, - 611, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 630, 235, 0, 294, 236, 237, 238, 295, 667, - 1237, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 585, 0, 0, 0, 0, 0, 583, 0, - 0, 0, 0, 581, 582, 1240, 616, 605, 606, 603, - 604, 595, 591, 1235, 0, 0, 0, 594, 0, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 632, 598, 0, 0, 0, 101, 102, 103, 246, 647, - 248, 648, 104, 649, 650, 0, 105, 252, 253, 106, - 107, 601, 631, 651, 652, 256, 0, 108, 643, 0, - 624, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 625, 627, 0, 626, - 628, 118, 119, 302, 120, 653, 121, 654, 655, 0, - 122, 0, 123, 0, 0, 0, 646, 125, 0, 126, - 0, 0, 0, 589, 127, 128, 129, 633, 634, 612, - 0, 0, 130, 131, 656, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 644, 0, 266, 0, 135, 136, - 137, 138, 640, 642, 338, 0, 142, 0, 139, 0, - 337, 140, 657, 141, 658, 659, 660, 0, 623, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 645, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 584, 0, 613, 641, 162, 661, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 635, 169, 170, 171, 172, 173, 0, 636, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 662, - 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 590, 198, 0, 202, 203, 204, 205, 79, 284, 206, - 207, 208, 629, 209, 199, 200, 210, 347, 211, 663, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 664, - 216, 637, 0, 219, 81, 220, 221, 222, 223, 224, - 0, 289, 665, 666, 0, 0, 225, 226, 638, 639, - 611, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 630, 235, 0, 294, 236, 237, 238, 701, 667, - 0, 0, 239, 0, 0, 0, 77, 240, 241, 242, - 243, 244, 585, 78, 0, 0, 0, 0, 583, 0, - 0, 0, 0, 581, 582, 616, 605, 606, 603, 604, - 595, 0, 591, 0, 0, 0, 0, 594, 0, 0, - 0, 98, 99, 0, 100, 0, 0, 0, 0, 632, - 598, 0, 0, 0, 101, 102, 103, 246, 647, 248, - 648, 104, 649, 650, 1284, 105, 252, 253, 106, 107, - 601, 631, 651, 652, 256, 0, 108, 643, 0, 624, - 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, - 0, 335, 116, 117, 0, 625, 627, 0, 626, 628, - 118, 119, 302, 120, 653, 121, 654, 655, 0, 122, - 0, 123, 0, 0, 0, 646, 125, 0, 126, 0, - 0, 0, 589, 127, 128, 129, 633, 634, 612, 0, - 0, 130, 131, 656, 0, 132, 0, 133, 0, 1289, - 336, 0, 134, 644, 0, 266, 0, 135, 136, 137, - 138, 640, 642, 338, 0, 142, 0, 139, 0, 337, - 140, 657, 141, 658, 659, 660, 0, 623, 0, 339, - 143, 144, 340, 145, 146, 147, 0, 149, 148, 1285, - 645, 341, 150, 342, 0, 151, 0, 0, 152, 0, - 153, 154, 155, 157, 275, 156, 343, 158, 159, 161, - 160, 584, 0, 613, 641, 162, 661, 163, 164, 0, - 165, 0, 0, 166, 0, 0, 167, 278, 344, 168, - 345, 635, 169, 170, 171, 172, 173, 0, 636, 174, - 281, 175, 0, 176, 177, 178, 179, 180, 662, 181, - 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, - 191, 192, 193, 194, 0, 195, 346, 196, 197, 590, - 198, 0, 202, 203, 204, 205, 0, 284, 206, 207, - 208, 629, 209, 199, 200, 210, 347, 211, 663, 286, - 212, 0, 218, 213, 214, 201, 215, 217, 664, 216, - 637, 0, 219, 0, 220, 221, 222, 223, 224, 0, - 289, 665, 666, 0, 1286, 225, 226, 638, 639, 611, - 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, - 630, 235, 0, 294, 236, 237, 238, 295, 667, 0, - 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, - 244, 585, 0, 0, 0, 0, 0, 583, 0, 0, - 0, 0, 581, 582, 616, 605, 606, 603, 604, 595, - 0, 591, 0, 0, 0, 0, 594, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 632, 598, - 0, 0, 0, 101, 102, 103, 246, 647, 248, 648, - 104, 649, 650, 0, 105, 252, 253, 106, 107, 601, - 631, 651, 652, 256, 0, 108, 643, 0, 624, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 625, 627, 0, 626, 628, 118, - 119, 302, 120, 653, 121, 654, 655, 0, 122, 0, - 123, 0, 0, 0, 646, 125, 0, 126, 0, 0, - 0, 589, 127, 128, 129, 633, 634, 612, 0, 0, - 130, 131, 656, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 644, 0, 266, 0, 135, 136, 137, 138, - 640, 642, 338, 0, 142, 0, 139, 0, 337, 140, - 657, 141, 658, 659, 660, 0, 623, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 645, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 584, 1768, 613, 641, 162, 661, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 635, 169, 170, 171, 172, 173, 0, 636, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 662, 181, 182, + 333, 0, 0, 0, 0, 0, 0, 1830, 0, 0, + 0, 0, 0, 0, 0, 1831, 98, 99, 352, 100, + 353, 354, 355, 356, 245, 357, 358, 359, 360, 101, + 102, 103, 246, 247, 248, 249, 104, 250, 251, 361, + 105, 252, 253, 106, 107, 362, 363, 254, 255, 256, + 364, 108, 257, 365, 338, 366, 109, 110, 111, 0, + 112, 367, 113, 114, 115, 368, 339, 116, 117, 369, + 370, 371, 372, 373, 374, 118, 119, 306, 120, 258, + 121, 259, 260, 375, 122, 376, 123, 377, 378, 379, + 124, 125, 380, 126, 381, 0, 382, 261, 127, 128, + 129, 262, 263, 383, 384, 385, 130, 131, 264, 265, + 266, 0, 132, 386, 133, 387, 388, 340, 389, 134, + 267, 390, 268, 391, 135, 136, 137, 138, 269, 270, + 342, 392, 142, 393, 139, 394, 341, 140, 271, 141, + 272, 273, 274, 275, 276, 395, 277, 396, 343, 143, + 144, 344, 145, 146, 147, 397, 149, 148, 398, 278, + 345, 150, 346, 399, 151, 400, 401, 152, 0, 153, + 154, 155, 157, 279, 156, 347, 158, 159, 161, 160, + 402, 403, 404, 280, 162, 281, 163, 164, 405, 165, + 406, 407, 166, 408, 409, 167, 282, 348, 168, 349, + 283, 169, 170, 171, 172, 173, 410, 284, 174, 285, + 175, 411, 176, 177, 178, 179, 180, 286, 181, 182, + 412, 183, 184, 185, 186, 187, 189, 190, 188, 191, + 192, 193, 194, 413, 195, 350, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 414, 288, 206, 207, 208, + 415, 209, 199, 200, 210, 351, 211, 289, 290, 212, + 416, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 417, 219, 418, 220, 221, 222, 223, 224, 419, 293, + 294, 295, 420, 421, 225, 226, 296, 297, 422, 227, + 228, 229, 230, 423, 424, 231, 232, 233, 234, 425, + 235, 426, 298, 236, 237, 238, 299, 300, 427, 428, + 239, 429, 430, 431, 432, 240, 241, 242, 243, 244, + 0, 0, 0, 333, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2106, 98, + 99, 352, 100, 353, 354, 355, 356, 245, 357, 358, + 359, 360, 101, 102, 103, 246, 247, 248, 249, 104, + 250, 251, 361, 105, 252, 253, 106, 107, 362, 363, + 254, 255, 256, 364, 108, 257, 365, 338, 366, 109, + 110, 111, 0, 112, 367, 113, 114, 115, 368, 339, + 116, 117, 369, 370, 371, 372, 373, 374, 118, 119, + 306, 120, 258, 121, 259, 260, 375, 122, 376, 123, + 377, 378, 379, 124, 125, 380, 126, 381, 0, 382, + 261, 127, 128, 129, 262, 263, 383, 384, 385, 130, + 131, 264, 265, 266, 0, 132, 386, 133, 387, 388, + 340, 389, 134, 267, 390, 268, 391, 135, 136, 137, + 138, 269, 270, 342, 392, 142, 393, 139, 394, 341, + 140, 271, 141, 272, 273, 274, 275, 276, 395, 277, + 396, 343, 143, 144, 344, 145, 146, 147, 397, 149, + 148, 398, 278, 345, 150, 346, 399, 151, 400, 401, + 152, 0, 153, 154, 155, 157, 279, 156, 347, 158, + 159, 161, 160, 402, 403, 404, 280, 162, 281, 163, + 164, 405, 165, 406, 407, 166, 408, 409, 167, 282, + 348, 168, 349, 283, 169, 170, 171, 172, 173, 410, + 284, 174, 285, 175, 411, 176, 177, 178, 179, 180, + 286, 181, 182, 412, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 413, 195, 350, 196, + 197, 287, 198, 0, 202, 203, 204, 205, 414, 288, + 206, 207, 208, 415, 209, 199, 200, 210, 351, 211, + 289, 290, 212, 416, 218, 213, 214, 201, 215, 217, + 291, 216, 292, 417, 219, 418, 220, 221, 222, 223, + 224, 419, 293, 294, 295, 420, 421, 225, 226, 296, + 297, 422, 227, 228, 229, 230, 423, 424, 231, 232, + 233, 234, 425, 235, 426, 298, 236, 237, 238, 299, + 300, 427, 428, 239, 429, 430, 431, 432, 240, 241, + 242, 243, 244, 333, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 850, 0, 0, 98, + 99, 352, 100, 353, 354, 355, 356, 245, 357, 358, + 359, 360, 101, 102, 103, 246, 247, 248, 249, 104, + 250, 251, 361, 105, 252, 253, 106, 107, 362, 363, + 254, 255, 256, 364, 108, 257, 365, 338, 366, 109, + 110, 111, 0, 112, 367, 113, 114, 115, 368, 339, + 116, 117, 369, 370, 371, 372, 373, 374, 118, 119, + 306, 120, 258, 121, 259, 260, 375, 122, 376, 123, + 377, 378, 379, 124, 125, 380, 126, 381, 0, 382, + 261, 127, 128, 129, 262, 263, 383, 384, 385, 130, + 131, 264, 265, 266, 0, 132, 386, 133, 387, 388, + 340, 389, 134, 267, 390, 268, 391, 135, 136, 137, + 138, 269, 270, 342, 392, 142, 393, 139, 394, 341, + 140, 271, 141, 272, 273, 274, 275, 276, 395, 277, + 396, 343, 143, 144, 344, 145, 146, 147, 397, 149, + 148, 398, 278, 345, 150, 346, 399, 151, 400, 401, + 152, 0, 153, 154, 155, 157, 279, 156, 347, 158, + 159, 161, 160, 402, 403, 404, 280, 162, 281, 163, + 164, 405, 165, 406, 407, 166, 408, 409, 167, 282, + 348, 168, 349, 283, 169, 170, 171, 172, 173, 410, + 284, 174, 285, 175, 411, 176, 177, 178, 179, 180, + 286, 181, 182, 412, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 413, 195, 350, 196, + 197, 287, 198, 0, 202, 203, 204, 205, 414, 288, + 206, 207, 208, 415, 209, 199, 200, 210, 351, 211, + 289, 290, 212, 416, 218, 213, 214, 201, 215, 217, + 291, 216, 292, 417, 219, 418, 220, 221, 222, 223, + 224, 419, 293, 294, 295, 420, 421, 225, 226, 296, + 297, 422, 227, 228, 229, 230, 423, 424, 231, 232, + 233, 234, 425, 235, 426, 298, 236, 237, 238, 299, + 300, 427, 428, 239, 429, 430, 431, 432, 240, 241, + 242, 243, 244, 620, 609, 610, 607, 608, 599, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, + 99, 0, 100, 0, 0, 0, 0, 636, 602, 0, + 0, 0, 101, 102, 103, 246, 651, 248, 652, 104, + 653, 654, 0, 105, 252, 253, 106, 107, 605, 635, + 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, + 110, 111, 0, 112, 0, 113, 114, 115, 0, 339, + 116, 117, 0, 629, 631, 0, 630, 632, 118, 119, + 306, 120, 657, 121, 658, 659, 825, 122, 0, 123, + 0, 0, 0, 650, 125, 0, 126, 0, 0, 0, + 593, 127, 128, 129, 637, 638, 616, 0, 0, 130, + 131, 660, 661, 662, 0, 132, 0, 133, 0, 0, + 340, 0, 134, 648, 0, 268, 0, 135, 136, 137, + 138, 644, 646, 342, 0, 142, 0, 139, 0, 341, + 140, 663, 141, 664, 665, 666, 667, 668, 0, 627, + 0, 343, 143, 144, 344, 145, 146, 147, 0, 149, + 148, 0, 649, 345, 150, 346, 0, 151, 0, 0, + 152, 0, 153, 154, 155, 157, 279, 156, 347, 158, + 159, 161, 160, 588, 0, 617, 645, 162, 669, 163, + 164, 0, 165, 0, 0, 166, 0, 0, 167, 282, + 348, 168, 349, 639, 169, 170, 171, 172, 173, 0, + 640, 174, 285, 175, 0, 176, 177, 178, 179, 180, + 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 0, 195, 350, 196, + 197, 594, 198, 0, 202, 203, 204, 205, 79, 288, + 206, 207, 208, 633, 209, 199, 200, 210, 351, 211, + 671, 290, 212, 0, 218, 213, 214, 201, 215, 217, + 672, 216, 641, 0, 219, 81, 220, 221, 222, 223, + 224, 0, 293, 673, 674, 0, 0, 225, 226, 642, + 643, 615, 227, 228, 229, 230, 0, 0, 231, 232, + 233, 234, 634, 235, 0, 298, 236, 237, 238, 709, + 675, 0, 0, 239, 0, 0, 0, 77, 240, 241, + 242, 243, 244, 589, 78, 0, 0, 0, 0, 587, + 0, 0, 0, 0, 585, 586, 620, 609, 610, 607, + 608, 599, 0, 595, 0, 0, 0, 0, 598, 0, + 0, 0, 98, 99, 1250, 100, 0, 0, 0, 0, + 636, 602, 0, 0, 0, 101, 102, 103, 246, 651, + 248, 652, 104, 653, 654, 0, 105, 252, 253, 106, + 107, 605, 635, 655, 656, 256, 0, 108, 647, 0, + 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 339, 116, 117, 0, 629, 631, 0, 630, + 632, 118, 119, 306, 120, 657, 121, 658, 659, 0, + 122, 0, 123, 0, 1251, 0, 650, 125, 0, 126, + 0, 0, 0, 593, 127, 128, 129, 637, 638, 616, + 0, 0, 130, 131, 660, 661, 662, 0, 132, 0, + 133, 0, 0, 340, 0, 134, 648, 0, 268, 0, + 135, 136, 137, 138, 644, 646, 342, 0, 142, 0, + 139, 0, 341, 140, 663, 141, 664, 665, 666, 667, + 668, 0, 627, 0, 343, 143, 144, 344, 145, 146, + 147, 0, 149, 148, 0, 649, 345, 150, 346, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 347, 158, 159, 161, 160, 588, 0, 617, 645, + 162, 669, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 348, 168, 349, 639, 169, 170, 171, + 172, 173, 0, 640, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 350, 196, 197, 594, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 633, 209, 199, 200, + 210, 351, 211, 671, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 672, 216, 641, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 673, 674, 0, 0, + 225, 226, 642, 643, 615, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 634, 235, 0, 298, 236, + 237, 238, 299, 675, 1249, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 589, 0, 0, 0, + 0, 0, 587, 0, 0, 0, 0, 585, 586, 1252, + 620, 609, 610, 607, 608, 599, 595, 1247, 0, 0, + 0, 598, 0, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 636, 602, 0, 0, 0, 101, + 102, 103, 246, 651, 248, 652, 104, 653, 654, 0, + 105, 252, 253, 106, 107, 605, 635, 655, 656, 256, + 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 339, 116, 117, 0, + 629, 631, 0, 630, 632, 118, 119, 306, 120, 657, + 121, 658, 659, 0, 122, 0, 123, 0, 0, 0, + 650, 125, 0, 126, 0, 0, 0, 593, 127, 128, + 129, 637, 638, 616, 0, 0, 130, 131, 660, 661, + 662, 0, 132, 0, 133, 0, 0, 340, 0, 134, + 648, 0, 268, 0, 135, 136, 137, 138, 644, 646, + 342, 0, 142, 0, 139, 0, 341, 140, 663, 141, + 664, 665, 666, 667, 668, 0, 627, 0, 343, 143, + 144, 344, 145, 146, 147, 0, 149, 148, 0, 649, + 345, 150, 346, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 347, 158, 159, 161, 160, + 588, 0, 617, 645, 162, 669, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 348, 168, 349, + 639, 169, 170, 171, 172, 173, 0, 640, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 590, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 629, 209, 199, 200, 210, 347, 211, 663, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 664, 216, 637, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 665, 666, 0, 0, 225, 226, 638, 639, 611, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 630, - 235, 0, 294, 236, 237, 238, 295, 667, 0, 0, - 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 585, 0, 0, 0, 0, 0, 583, 0, 0, 0, - 0, 581, 582, 808, 616, 605, 606, 603, 604, 595, - 591, 0, 0, 0, 0, 594, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 632, 598, - 0, 0, 0, 101, 102, 103, 246, 647, 248, 648, - 104, 649, 650, 0, 105, 252, 253, 106, 107, 601, - 631, 651, 652, 256, 0, 108, 643, 0, 624, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 625, 627, 0, 626, 628, 118, - 119, 302, 120, 653, 121, 654, 655, 0, 122, 0, - 123, 0, 0, 0, 646, 125, 0, 126, 0, 0, - 0, 589, 127, 128, 129, 633, 634, 612, 0, 0, - 130, 131, 656, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 644, 0, 266, 0, 135, 136, 137, 138, - 640, 642, 338, 0, 142, 0, 139, 0, 337, 140, - 657, 141, 658, 659, 660, 0, 623, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 645, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 584, 0, 613, 641, 162, 661, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 635, 169, 170, 171, 172, 173, 0, 636, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 662, 181, 182, + 192, 193, 194, 0, 195, 350, 196, 197, 594, 198, + 0, 202, 203, 204, 205, 79, 288, 206, 207, 208, + 633, 209, 199, 200, 210, 351, 211, 671, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 672, 216, 641, + 0, 219, 81, 220, 221, 222, 223, 224, 0, 293, + 673, 674, 0, 0, 225, 226, 642, 643, 615, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 634, + 235, 0, 298, 236, 237, 238, 709, 675, 0, 0, + 239, 0, 0, 0, 77, 240, 241, 242, 243, 244, + 589, 78, 0, 0, 0, 0, 587, 0, 0, 0, + 0, 585, 586, 620, 609, 610, 607, 608, 599, 0, + 595, 0, 0, 0, 0, 598, 0, 0, 0, 98, + 99, 0, 100, 0, 0, 0, 0, 636, 602, 0, + 0, 0, 101, 102, 103, 246, 651, 248, 652, 104, + 653, 654, 1296, 105, 252, 253, 106, 107, 605, 635, + 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, + 110, 111, 0, 112, 0, 113, 114, 115, 0, 339, + 116, 117, 0, 629, 631, 0, 630, 632, 118, 119, + 306, 120, 657, 121, 658, 659, 0, 122, 0, 123, + 0, 0, 0, 650, 125, 0, 126, 0, 0, 0, + 593, 127, 128, 129, 637, 638, 616, 0, 0, 130, + 131, 660, 661, 662, 0, 132, 0, 133, 0, 1301, + 340, 0, 134, 648, 0, 268, 0, 135, 136, 137, + 138, 644, 646, 342, 0, 142, 0, 139, 0, 341, + 140, 663, 141, 664, 665, 666, 667, 668, 0, 627, + 0, 343, 143, 144, 344, 145, 146, 147, 0, 149, + 148, 1297, 649, 345, 150, 346, 0, 151, 0, 0, + 152, 0, 153, 154, 155, 157, 279, 156, 347, 158, + 159, 161, 160, 588, 0, 617, 645, 162, 669, 163, + 164, 0, 165, 0, 0, 166, 0, 0, 167, 282, + 348, 168, 349, 639, 169, 170, 171, 172, 173, 0, + 640, 174, 285, 175, 0, 176, 177, 178, 179, 180, + 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 0, 195, 350, 196, + 197, 594, 198, 0, 202, 203, 204, 205, 0, 288, + 206, 207, 208, 633, 209, 199, 200, 210, 351, 211, + 671, 290, 212, 0, 218, 213, 214, 201, 215, 217, + 672, 216, 641, 0, 219, 0, 220, 221, 222, 223, + 224, 0, 293, 673, 674, 0, 1298, 225, 226, 642, + 643, 615, 227, 228, 229, 230, 0, 0, 231, 232, + 233, 234, 634, 235, 0, 298, 236, 237, 238, 299, + 675, 0, 0, 239, 0, 0, 0, 0, 240, 241, + 242, 243, 244, 589, 0, 0, 0, 0, 0, 587, + 0, 0, 0, 0, 585, 586, 620, 609, 610, 607, + 608, 599, 0, 595, 0, 0, 0, 0, 598, 0, + 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, + 636, 602, 0, 0, 0, 101, 102, 103, 246, 651, + 248, 652, 104, 653, 654, 0, 105, 252, 253, 106, + 107, 605, 635, 655, 656, 256, 0, 108, 647, 0, + 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 339, 116, 117, 0, 629, 631, 0, 630, + 632, 118, 119, 306, 120, 657, 121, 658, 659, 0, + 122, 0, 123, 0, 0, 0, 650, 125, 0, 126, + 0, 0, 0, 593, 127, 128, 129, 637, 638, 616, + 0, 0, 130, 131, 660, 661, 662, 0, 132, 0, + 133, 0, 0, 340, 0, 134, 648, 0, 268, 0, + 135, 136, 137, 138, 644, 646, 342, 0, 142, 0, + 139, 0, 341, 140, 663, 141, 664, 665, 666, 667, + 668, 0, 627, 0, 343, 143, 144, 344, 145, 146, + 147, 0, 149, 148, 0, 649, 345, 150, 346, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 347, 158, 159, 161, 160, 588, 1780, 617, 645, + 162, 669, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 348, 168, 349, 639, 169, 170, 171, + 172, 173, 0, 640, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 350, 196, 197, 594, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 633, 209, 199, 200, + 210, 351, 211, 671, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 672, 216, 641, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 673, 674, 0, 0, + 225, 226, 642, 643, 615, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 634, 235, 0, 298, 236, + 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 589, 0, 0, 0, + 0, 0, 587, 0, 0, 0, 0, 585, 586, 816, + 620, 609, 610, 607, 608, 599, 595, 0, 0, 0, + 0, 598, 0, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 636, 602, 0, 0, 0, 101, + 102, 103, 246, 651, 248, 652, 104, 653, 654, 0, + 105, 252, 253, 106, 107, 605, 635, 655, 656, 256, + 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 339, 116, 117, 0, + 629, 631, 0, 630, 632, 118, 119, 306, 120, 657, + 121, 658, 659, 0, 122, 0, 123, 0, 0, 0, + 650, 125, 0, 126, 0, 0, 0, 593, 127, 128, + 129, 637, 638, 616, 0, 0, 130, 131, 660, 661, + 662, 0, 132, 0, 133, 0, 0, 340, 0, 134, + 648, 0, 268, 0, 135, 136, 137, 138, 644, 646, + 342, 0, 142, 0, 139, 0, 341, 140, 663, 141, + 664, 665, 666, 667, 668, 0, 627, 0, 343, 143, + 144, 344, 145, 146, 147, 0, 149, 148, 0, 649, + 345, 150, 346, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 347, 158, 159, 161, 160, + 588, 0, 617, 645, 162, 669, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 348, 168, 349, + 639, 169, 170, 171, 172, 173, 0, 640, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 590, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 629, 209, 199, 200, 210, 347, 211, 663, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 664, 216, 637, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 665, 666, 0, 0, 225, 226, 638, 639, 611, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 630, - 235, 0, 294, 236, 237, 238, 295, 667, 0, 0, + 192, 193, 194, 0, 195, 350, 196, 197, 594, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 633, 209, 199, 200, 210, 351, 211, 671, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 672, 216, 641, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 673, 674, 0, 0, 225, 226, 642, 643, 615, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 634, + 235, 0, 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 585, 0, 0, 0, 0, 0, 583, 0, 0, 0, - 0, 581, 582, 0, 0, 0, 0, 0, 900, 1230, - 591, 0, 0, 0, 0, 594, 616, 605, 606, 603, - 604, 595, 0, 0, 0, 0, 0, 0, 0, 0, + 589, 0, 0, 0, 0, 0, 587, 0, 0, 0, + 0, 585, 586, 0, 0, 0, 0, 0, 908, 1242, + 595, 0, 0, 0, 0, 598, 620, 609, 610, 607, + 608, 599, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 632, 598, 0, 0, 0, 101, 102, 103, 246, 647, - 248, 648, 104, 649, 650, 0, 105, 252, 253, 106, - 107, 601, 631, 651, 652, 256, 0, 108, 643, 0, - 624, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 625, 627, 0, 626, - 628, 118, 119, 302, 120, 653, 121, 654, 655, 817, - 122, 0, 123, 0, 0, 0, 646, 125, 0, 126, - 0, 0, 0, 589, 127, 128, 129, 633, 634, 612, - 0, 0, 130, 131, 656, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 644, 0, 266, 0, 135, 136, - 137, 138, 640, 642, 338, 0, 142, 0, 139, 0, - 337, 140, 657, 141, 658, 659, 660, 0, 623, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 645, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 584, 0, 613, 641, 162, 661, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 635, 169, 170, 171, 172, 173, 0, 636, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 662, + 636, 602, 0, 0, 0, 101, 102, 103, 246, 651, + 248, 652, 104, 653, 654, 0, 105, 252, 253, 106, + 107, 605, 635, 655, 656, 256, 0, 108, 647, 0, + 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 339, 116, 117, 0, 629, 631, 0, 630, + 632, 118, 119, 306, 120, 657, 121, 658, 659, 825, + 122, 0, 123, 0, 0, 0, 650, 125, 0, 126, + 0, 0, 0, 593, 127, 128, 129, 637, 638, 616, + 0, 0, 130, 131, 660, 661, 662, 0, 132, 0, + 133, 0, 0, 340, 0, 134, 648, 0, 268, 0, + 135, 136, 137, 138, 644, 646, 342, 0, 142, 0, + 139, 0, 341, 140, 663, 141, 664, 665, 666, 667, + 668, 0, 627, 0, 343, 143, 144, 344, 145, 146, + 147, 0, 149, 148, 0, 649, 345, 150, 346, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 347, 158, 159, 161, 160, 588, 0, 617, 645, + 162, 669, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 348, 168, 349, 639, 169, 170, 171, + 172, 173, 0, 640, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 350, 196, 197, 594, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 633, 209, 199, 200, + 210, 351, 211, 671, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 672, 216, 641, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 673, 674, 0, 0, + 225, 226, 642, 643, 615, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 634, 235, 0, 298, 236, + 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 589, 0, 0, 0, + 0, 0, 587, 0, 0, 0, 0, 585, 586, 620, + 609, 610, 607, 608, 599, 0, 595, 0, 0, 0, + 0, 598, 0, 0, 0, 98, 99, 0, 100, 0, + 0, 0, 0, 636, 602, 0, 0, 0, 101, 102, + 103, 246, 651, 248, 652, 104, 653, 654, 0, 105, + 252, 253, 106, 107, 605, 635, 655, 656, 256, 0, + 108, 647, 0, 628, 0, 109, 110, 111, 0, 112, + 0, 113, 114, 115, 0, 339, 116, 117, 0, 629, + 631, 0, 630, 632, 118, 119, 306, 120, 657, 121, + 658, 659, 0, 122, 0, 123, 0, 0, 0, 650, + 125, 0, 126, 0, 0, 0, 593, 127, 128, 129, + 637, 638, 616, 0, 0, 130, 131, 660, 661, 662, + 0, 132, 0, 133, 0, 0, 340, 0, 134, 648, + 0, 268, 0, 135, 136, 137, 138, 644, 646, 342, + 0, 142, 0, 139, 0, 341, 140, 663, 141, 664, + 665, 666, 667, 668, 0, 627, 0, 343, 143, 144, + 344, 145, 146, 147, 0, 149, 148, 0, 649, 345, + 150, 346, 0, 151, 0, 0, 152, 0, 153, 154, + 155, 157, 279, 156, 347, 158, 159, 161, 160, 588, + 0, 617, 645, 162, 669, 163, 164, 0, 165, 0, + 0, 166, 0, 0, 167, 282, 348, 168, 349, 639, + 169, 170, 171, 172, 173, 0, 640, 174, 285, 175, + 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, + 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, + 193, 194, 0, 195, 350, 196, 197, 594, 198, 0, + 202, 203, 204, 205, 0, 288, 206, 207, 208, 633, + 209, 199, 200, 210, 351, 211, 671, 290, 212, 0, + 218, 213, 214, 201, 215, 217, 672, 216, 641, 0, + 219, 0, 220, 221, 222, 223, 224, 0, 293, 673, + 674, 0, 0, 225, 226, 642, 643, 615, 227, 228, + 229, 230, 0, 0, 231, 232, 233, 234, 634, 235, + 0, 298, 236, 237, 238, 299, 675, 0, 0, 239, + 0, 0, 0, 0, 240, 241, 242, 243, 244, 589, + 0, 0, 0, 0, 0, 587, 0, 0, 0, 0, + 585, 586, 620, 609, 610, 607, 608, 599, 0, 595, + 1763, 0, 0, 0, 598, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 636, 602, 0, 0, + 0, 101, 102, 103, 246, 651, 248, 652, 104, 653, + 654, 0, 105, 252, 253, 106, 107, 605, 635, 655, + 656, 256, 0, 108, 647, 0, 628, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 629, 631, 0, 630, 632, 118, 119, 306, + 120, 657, 121, 658, 659, 0, 122, 0, 123, 0, + 0, 0, 650, 125, 0, 126, 0, 0, 0, 593, + 127, 128, 129, 637, 638, 616, 0, 0, 130, 131, + 660, 661, 662, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 648, 0, 268, 0, 135, 136, 137, 138, + 644, 646, 342, 0, 142, 0, 139, 0, 341, 140, + 663, 141, 664, 665, 666, 667, 668, 0, 627, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 649, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 588, 0, 617, 645, 162, 669, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 639, 169, 170, 171, 172, 173, 0, 640, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 590, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 629, 209, 199, 200, 210, 347, 211, 663, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 664, - 216, 637, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 665, 666, 0, 0, 225, 226, 638, 639, - 611, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 630, 235, 0, 294, 236, 237, 238, 295, 667, - 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 585, 0, 0, 0, 0, 0, 583, 0, - 0, 0, 0, 581, 582, 616, 605, 606, 603, 604, - 595, 0, 591, 0, 0, 0, 0, 594, 0, 0, - 0, 98, 99, 0, 100, 0, 0, 0, 0, 632, - 598, 0, 0, 0, 101, 102, 103, 246, 647, 248, - 648, 104, 649, 650, 0, 105, 252, 253, 106, 107, - 601, 631, 651, 652, 256, 0, 108, 643, 0, 624, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 594, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 633, 209, 199, 200, 210, 351, 211, 671, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 672, + 216, 641, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 673, 674, 0, 0, 225, 226, 642, 643, + 615, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 634, 235, 0, 298, 236, 237, 238, 299, 675, + 1712, 0, 239, 0, 0, 0, 0, 240, 241, 242, + 243, 244, 589, 0, 0, 0, 0, 0, 587, 0, + 0, 0, 0, 585, 586, 620, 609, 610, 607, 608, + 599, 0, 595, 0, 0, 0, 0, 598, 0, 0, + 0, 98, 99, 0, 100, 0, 0, 0, 0, 636, + 602, 0, 0, 0, 101, 102, 103, 246, 651, 248, + 652, 104, 653, 654, 0, 105, 252, 253, 106, 107, + 605, 635, 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, - 0, 335, 116, 117, 0, 625, 627, 0, 626, 628, - 118, 119, 302, 120, 653, 121, 654, 655, 0, 122, - 0, 123, 0, 0, 0, 646, 125, 0, 126, 0, - 0, 0, 589, 127, 128, 129, 633, 634, 612, 0, - 0, 130, 131, 656, 0, 132, 0, 133, 0, 0, - 336, 0, 134, 644, 0, 266, 0, 135, 136, 137, - 138, 640, 642, 338, 0, 142, 0, 139, 0, 337, - 140, 657, 141, 658, 659, 660, 0, 623, 0, 339, - 143, 144, 340, 145, 146, 147, 0, 149, 148, 0, - 645, 341, 150, 342, 0, 151, 0, 0, 152, 0, - 153, 154, 155, 157, 275, 156, 343, 158, 159, 161, - 160, 584, 0, 613, 641, 162, 661, 163, 164, 0, - 165, 0, 0, 166, 0, 0, 167, 278, 344, 168, - 345, 635, 169, 170, 171, 172, 173, 0, 636, 174, - 281, 175, 0, 176, 177, 178, 179, 180, 662, 181, + 0, 339, 116, 117, 0, 629, 631, 0, 630, 632, + 118, 119, 306, 120, 657, 121, 658, 659, 0, 122, + 0, 123, 0, 0, 0, 650, 125, 0, 126, 0, + 0, 0, 593, 127, 128, 129, 637, 638, 616, 0, + 0, 130, 131, 660, 661, 662, 0, 132, 0, 133, + 0, 0, 340, 0, 134, 648, 0, 268, 0, 135, + 136, 137, 138, 644, 646, 342, 0, 142, 0, 139, + 0, 341, 140, 663, 141, 664, 665, 666, 667, 668, + 0, 627, 0, 343, 143, 144, 344, 145, 146, 147, + 0, 149, 148, 0, 649, 345, 150, 346, 0, 151, + 0, 0, 152, 0, 153, 154, 155, 157, 279, 156, + 347, 158, 159, 161, 160, 588, 0, 617, 645, 162, + 669, 163, 164, 0, 165, 0, 0, 166, 0, 0, + 167, 282, 348, 168, 349, 639, 169, 170, 171, 172, + 173, 0, 640, 174, 285, 175, 0, 176, 177, 178, + 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, + 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, + 350, 196, 197, 594, 198, 0, 202, 203, 204, 205, + 0, 288, 206, 207, 208, 633, 209, 199, 200, 210, + 351, 211, 671, 290, 212, 0, 218, 213, 214, 201, + 215, 217, 672, 216, 641, 0, 219, 0, 220, 221, + 222, 223, 224, 0, 293, 673, 674, 0, 0, 225, + 226, 642, 643, 615, 227, 228, 229, 230, 0, 0, + 231, 232, 233, 234, 634, 235, 0, 298, 236, 237, + 238, 299, 675, 0, 0, 239, 0, 0, 0, 0, + 240, 241, 242, 243, 244, 589, 0, 0, 0, 0, + 0, 587, 0, 0, 0, 0, 585, 586, 620, 609, + 610, 607, 608, 599, 0, 595, 1702, 0, 0, 0, + 598, 0, 0, 0, 98, 99, 0, 100, 0, 0, + 0, 0, 636, 602, 0, 0, 0, 101, 102, 103, + 246, 651, 248, 652, 104, 653, 654, 0, 105, 252, + 253, 106, 107, 605, 635, 655, 656, 256, 0, 108, + 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 339, 116, 117, 0, 629, 631, + 0, 630, 632, 118, 119, 306, 120, 657, 121, 658, + 659, 0, 122, 0, 123, 0, 0, 0, 650, 125, + 0, 126, 0, 0, 0, 593, 127, 128, 129, 637, + 638, 616, 0, 0, 130, 131, 660, 661, 662, 0, + 132, 0, 133, 0, 1301, 340, 0, 134, 648, 0, + 268, 0, 135, 136, 137, 138, 644, 646, 342, 0, + 142, 0, 139, 0, 341, 140, 663, 141, 664, 665, + 666, 667, 668, 0, 627, 0, 343, 143, 144, 344, + 145, 146, 147, 0, 149, 148, 0, 649, 345, 150, + 346, 0, 151, 0, 0, 152, 0, 153, 154, 155, + 157, 279, 156, 347, 158, 159, 161, 160, 588, 0, + 617, 645, 162, 669, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 348, 168, 349, 639, 169, + 170, 171, 172, 173, 0, 640, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, + 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, + 194, 0, 195, 350, 196, 197, 594, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 633, 209, + 199, 200, 210, 351, 211, 671, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 672, 216, 641, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 673, 674, + 0, 0, 225, 226, 642, 643, 615, 227, 228, 229, + 230, 0, 0, 231, 232, 233, 234, 634, 235, 0, + 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, + 0, 0, 0, 240, 241, 242, 243, 244, 589, 0, + 0, 0, 0, 0, 587, 0, 0, 0, 0, 585, + 586, 620, 609, 610, 607, 608, 599, 0, 595, 0, + 0, 0, 0, 598, 0, 0, 0, 98, 99, 0, + 100, 0, 0, 0, 0, 636, 602, 0, 0, 0, + 101, 102, 103, 246, 651, 248, 652, 104, 653, 654, + 0, 105, 252, 253, 106, 107, 605, 635, 655, 656, + 256, 0, 108, 647, 0, 628, 0, 109, 110, 111, + 0, 112, 0, 113, 114, 115, 0, 339, 116, 117, + 0, 629, 631, 0, 630, 632, 118, 119, 306, 120, + 657, 121, 658, 659, 0, 122, 0, 123, 0, 0, + 0, 650, 125, 0, 126, 0, 0, 0, 593, 127, + 128, 129, 637, 638, 616, 0, 0, 130, 131, 660, + 661, 662, 0, 132, 0, 133, 0, 0, 340, 0, + 134, 648, 0, 268, 0, 135, 136, 137, 138, 644, + 646, 342, 0, 142, 0, 139, 0, 341, 140, 663, + 141, 664, 665, 666, 667, 668, 0, 627, 0, 343, + 143, 144, 344, 145, 146, 147, 0, 149, 148, 0, + 649, 345, 150, 346, 0, 151, 0, 0, 152, 0, + 153, 154, 155, 157, 279, 156, 347, 158, 159, 161, + 160, 588, 0, 617, 645, 162, 669, 163, 164, 0, + 165, 0, 0, 166, 0, 0, 167, 282, 348, 168, + 349, 639, 169, 170, 171, 172, 173, 0, 640, 174, + 285, 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, - 191, 192, 193, 194, 0, 195, 346, 196, 197, 590, - 198, 0, 202, 203, 204, 205, 0, 284, 206, 207, - 208, 629, 209, 199, 200, 210, 347, 211, 663, 286, - 212, 0, 218, 213, 214, 201, 215, 217, 664, 216, - 637, 0, 219, 0, 220, 221, 222, 223, 224, 0, - 289, 665, 666, 0, 0, 225, 226, 638, 639, 611, + 191, 192, 193, 194, 0, 195, 350, 196, 197, 594, + 198, 0, 202, 203, 204, 205, 0, 288, 206, 207, + 208, 633, 209, 199, 200, 210, 351, 211, 671, 290, + 212, 0, 218, 213, 214, 201, 215, 217, 672, 216, + 641, 0, 219, 0, 220, 221, 222, 223, 224, 0, + 293, 673, 674, 0, 0, 225, 226, 642, 643, 615, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, - 630, 235, 0, 294, 236, 237, 238, 295, 667, 0, + 634, 235, 0, 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, - 244, 585, 0, 0, 0, 0, 0, 583, 0, 0, - 0, 0, 581, 582, 616, 605, 606, 603, 604, 595, - 0, 591, 1751, 0, 0, 0, 594, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 632, 598, - 0, 0, 0, 101, 102, 103, 246, 647, 248, 648, - 104, 649, 650, 0, 105, 252, 253, 106, 107, 601, - 631, 651, 652, 256, 0, 108, 643, 0, 624, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 625, 627, 0, 626, 628, 118, - 119, 302, 120, 653, 121, 654, 655, 0, 122, 0, - 123, 0, 0, 0, 646, 125, 0, 126, 0, 0, - 0, 589, 127, 128, 129, 633, 634, 612, 0, 0, - 130, 131, 656, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 644, 0, 266, 0, 135, 136, 137, 138, - 640, 642, 338, 0, 142, 0, 139, 0, 337, 140, - 657, 141, 658, 659, 660, 0, 623, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 645, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 584, 0, 613, 641, 162, 661, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 635, 169, 170, 171, 172, 173, 0, 636, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 662, 181, 182, - 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 590, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 629, 209, 199, 200, 210, 347, 211, 663, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 664, 216, 637, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 665, 666, 0, 0, 225, 226, 638, 639, 611, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 630, - 235, 0, 294, 236, 237, 238, 295, 667, 1700, 0, - 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 585, 0, 0, 0, 0, 0, 583, 0, 0, 0, - 0, 581, 582, 616, 605, 606, 603, 604, 595, 0, - 591, 0, 0, 0, 0, 594, 0, 0, 0, 98, - 99, 0, 100, 0, 0, 0, 0, 632, 598, 0, - 0, 0, 101, 102, 103, 246, 647, 248, 648, 104, - 649, 650, 0, 105, 252, 253, 106, 107, 601, 631, - 651, 652, 256, 0, 108, 643, 0, 624, 0, 109, - 110, 111, 0, 112, 0, 113, 114, 115, 0, 335, - 116, 117, 0, 625, 627, 0, 626, 628, 118, 119, - 302, 120, 653, 121, 654, 655, 0, 122, 0, 123, - 0, 0, 0, 646, 125, 0, 126, 0, 0, 0, - 589, 127, 128, 129, 633, 634, 612, 0, 0, 130, - 131, 656, 0, 132, 0, 133, 0, 0, 336, 0, - 134, 644, 0, 266, 0, 135, 136, 137, 138, 640, - 642, 338, 0, 142, 0, 139, 0, 337, 140, 657, - 141, 658, 659, 660, 0, 623, 0, 339, 143, 144, - 340, 145, 146, 147, 0, 149, 148, 0, 645, 341, - 150, 342, 0, 151, 0, 0, 152, 0, 153, 154, - 155, 157, 275, 156, 343, 158, 159, 161, 160, 584, - 0, 613, 641, 162, 661, 163, 164, 0, 165, 0, - 0, 166, 0, 0, 167, 278, 344, 168, 345, 635, - 169, 170, 171, 172, 173, 0, 636, 174, 281, 175, - 0, 176, 177, 178, 179, 180, 662, 181, 182, 0, - 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, - 193, 194, 0, 195, 346, 196, 197, 590, 198, 0, - 202, 203, 204, 205, 0, 284, 206, 207, 208, 629, - 209, 199, 200, 210, 347, 211, 663, 286, 212, 0, - 218, 213, 214, 201, 215, 217, 664, 216, 637, 0, - 219, 0, 220, 221, 222, 223, 224, 0, 289, 665, - 666, 0, 0, 225, 226, 638, 639, 611, 227, 228, - 229, 230, 0, 0, 231, 232, 233, 234, 630, 235, - 0, 294, 236, 237, 238, 295, 667, 0, 0, 239, - 0, 0, 0, 0, 240, 241, 242, 243, 244, 585, - 0, 0, 0, 0, 0, 583, 0, 0, 0, 0, - 581, 582, 616, 605, 606, 603, 604, 595, 0, 591, - 1690, 0, 0, 0, 594, 0, 0, 0, 98, 99, - 0, 100, 0, 0, 0, 0, 632, 598, 0, 0, - 0, 101, 102, 103, 246, 647, 248, 648, 104, 649, - 650, 0, 105, 252, 253, 106, 107, 601, 631, 651, - 652, 256, 0, 108, 643, 0, 624, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 335, 116, - 117, 0, 625, 627, 0, 626, 628, 118, 119, 302, - 120, 653, 121, 654, 655, 0, 122, 0, 123, 0, - 0, 0, 646, 125, 0, 126, 0, 0, 0, 589, - 127, 128, 129, 633, 634, 612, 0, 0, 130, 131, - 656, 0, 132, 0, 133, 0, 1289, 336, 0, 134, - 644, 0, 266, 0, 135, 136, 137, 138, 640, 642, - 338, 0, 142, 0, 139, 0, 337, 140, 657, 141, - 658, 659, 660, 0, 623, 0, 339, 143, 144, 340, - 145, 146, 147, 0, 149, 148, 0, 645, 341, 150, - 342, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 343, 158, 159, 161, 160, 584, 0, - 613, 641, 162, 661, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 344, 168, 345, 635, 169, - 170, 171, 172, 173, 0, 636, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 662, 181, 182, 0, 183, - 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 346, 196, 197, 590, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 629, 209, - 199, 200, 210, 347, 211, 663, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 664, 216, 637, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 665, 666, - 0, 0, 225, 226, 638, 639, 611, 227, 228, 229, - 230, 0, 0, 231, 232, 233, 234, 630, 235, 0, - 294, 236, 237, 238, 295, 667, 0, 0, 239, 0, - 0, 0, 0, 240, 241, 242, 243, 244, 585, 0, - 0, 0, 0, 0, 583, 0, 0, 0, 0, 581, - 582, 616, 605, 606, 603, 604, 595, 0, 591, 0, - 0, 0, 0, 594, 0, 0, 0, 98, 99, 0, - 100, 0, 0, 0, 0, 632, 598, 0, 0, 0, - 101, 102, 103, 246, 647, 248, 648, 104, 649, 650, - 0, 105, 252, 253, 106, 107, 601, 631, 651, 652, - 256, 0, 108, 643, 0, 624, 0, 109, 110, 111, - 0, 112, 0, 113, 114, 115, 0, 335, 116, 117, - 0, 625, 627, 0, 626, 628, 118, 119, 302, 120, - 653, 121, 654, 655, 0, 122, 0, 123, 0, 0, - 0, 646, 125, 0, 126, 0, 0, 0, 589, 127, - 128, 129, 633, 634, 612, 0, 0, 130, 131, 656, - 0, 132, 0, 133, 0, 0, 336, 0, 134, 644, - 0, 266, 0, 135, 136, 137, 138, 640, 642, 338, - 0, 142, 0, 139, 0, 337, 140, 657, 141, 658, - 659, 660, 0, 623, 0, 339, 143, 144, 340, 145, - 146, 147, 0, 149, 148, 0, 645, 341, 150, 342, - 0, 151, 0, 0, 152, 0, 153, 154, 155, 157, - 275, 156, 343, 158, 159, 161, 160, 584, 0, 613, - 641, 162, 661, 163, 164, 0, 165, 0, 0, 166, - 0, 0, 167, 278, 344, 168, 345, 635, 169, 170, - 171, 172, 173, 0, 636, 174, 281, 175, 0, 176, - 177, 178, 179, 180, 662, 181, 182, 0, 183, 184, - 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, - 0, 195, 346, 196, 197, 590, 198, 0, 202, 203, - 204, 205, 0, 284, 206, 207, 208, 629, 209, 199, - 200, 210, 347, 211, 663, 286, 212, 0, 218, 213, - 214, 201, 215, 217, 664, 216, 637, 0, 219, 0, - 220, 221, 222, 223, 224, 0, 289, 665, 666, 0, - 0, 225, 226, 638, 639, 611, 227, 228, 229, 230, - 0, 0, 231, 232, 233, 234, 630, 235, 0, 294, - 236, 237, 238, 295, 667, 0, 0, 239, 0, 0, - 0, 0, 240, 241, 242, 243, 244, 585, 0, 0, - 0, 0, 0, 583, 0, 0, 0, 0, 581, 582, - 808, 616, 605, 606, 603, 604, 595, 591, 0, 0, - 0, 0, 594, 0, 0, 0, 0, 98, 99, 0, - 100, 0, 0, 0, 0, 632, 598, 0, 0, 0, - 101, 102, 103, 246, 647, 248, 648, 104, 649, 650, - 0, 105, 252, 253, 106, 107, 601, 631, 651, 652, - 256, 0, 108, 643, 0, 624, 0, 109, 110, 111, - 0, 112, 0, 113, 114, 115, 0, 335, 116, 117, - 0, 625, 627, 0, 626, 628, 118, 119, 302, 120, - 653, 121, 654, 655, 0, 122, 0, 123, 0, 0, - 0, 646, 125, 0, 126, 0, 0, 0, 589, 127, - 128, 129, 633, 634, 612, 0, 0, 130, 131, 656, - 0, 132, 0, 133, 0, 0, 336, 0, 134, 644, - 0, 266, 0, 135, 136, 137, 138, 640, 642, 338, - 0, 142, 0, 139, 0, 337, 140, 657, 141, 658, - 659, 660, 0, 623, 0, 339, 143, 144, 340, 145, - 146, 147, 0, 149, 148, 0, 645, 341, 150, 342, - 0, 151, 0, 0, 152, 0, 153, 154, 155, 157, - 275, 156, 343, 158, 159, 161, 160, 584, 0, 613, - 641, 162, 661, 163, 164, 0, 165, 0, 0, 166, - 0, 0, 167, 278, 344, 168, 345, 635, 169, 170, - 171, 172, 173, 0, 636, 174, 281, 175, 0, 176, - 177, 178, 179, 180, 662, 181, 182, 0, 183, 184, - 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, - 0, 195, 346, 196, 197, 590, 198, 0, 202, 203, - 204, 205, 0, 284, 206, 207, 208, 629, 209, 199, - 200, 210, 347, 211, 663, 286, 212, 0, 218, 213, - 214, 201, 215, 217, 664, 216, 637, 0, 219, 0, - 220, 221, 222, 223, 224, 0, 289, 665, 666, 0, - 0, 225, 226, 638, 639, 611, 227, 228, 229, 230, - 0, 0, 231, 232, 233, 234, 630, 235, 0, 294, - 236, 237, 238, 295, 667, 0, 0, 239, 0, 0, - 0, 0, 240, 241, 242, 243, 244, 585, 0, 0, - 0, 0, 0, 583, 0, 0, 0, 0, 581, 582, - 616, 605, 606, 603, 604, 595, 0, 591, 1225, 0, - 0, 0, 594, 0, 0, 0, 98, 99, 1093, 100, - 0, 0, 0, 0, 632, 598, 0, 0, 0, 101, - 102, 103, 246, 647, 248, 648, 104, 649, 650, 0, - 105, 252, 253, 106, 107, 601, 631, 651, 652, 256, - 0, 108, 643, 0, 624, 0, 109, 110, 111, 0, - 112, 0, 113, 114, 115, 0, 335, 116, 117, 0, - 625, 627, 0, 626, 628, 118, 119, 302, 120, 653, - 121, 654, 655, 0, 122, 0, 123, 0, 0, 0, - 646, 125, 0, 126, 0, 0, 0, 589, 127, 128, - 129, 633, 634, 612, 0, 0, 130, 131, 656, 0, - 132, 0, 133, 0, 0, 336, 0, 134, 644, 0, - 266, 0, 135, 136, 137, 138, 640, 642, 338, 0, - 142, 0, 139, 0, 337, 140, 657, 141, 658, 659, - 660, 0, 623, 0, 339, 143, 144, 340, 145, 146, - 147, 0, 149, 148, 0, 645, 341, 150, 342, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 343, 158, 159, 161, 160, 584, 0, 613, 641, - 162, 661, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 344, 168, 345, 635, 169, 170, 171, - 172, 173, 0, 636, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 662, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 346, 196, 197, 590, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 629, 209, 199, 200, - 210, 347, 211, 663, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 664, 216, 637, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 665, 666, 0, 0, - 225, 226, 638, 639, 611, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 630, 235, 0, 294, 236, - 237, 238, 295, 667, 0, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 585, 0, 0, 0, - 0, 0, 583, 0, 0, 0, 0, 581, 582, 616, - 605, 606, 603, 604, 595, 0, 591, 0, 0, 0, - 0, 594, 0, 0, 0, 98, 99, 0, 100, 0, - 0, 0, 0, 632, 598, 0, 0, 0, 101, 102, - 103, 246, 647, 248, 648, 104, 649, 650, 0, 105, - 252, 253, 106, 107, 601, 631, 651, 652, 256, 0, - 108, 643, 0, 624, 0, 109, 110, 111, 0, 112, - 0, 113, 114, 115, 0, 335, 116, 2154, 0, 625, - 627, 0, 626, 628, 118, 119, 302, 120, 653, 121, - 654, 655, 0, 122, 0, 123, 0, 0, 0, 646, - 125, 0, 126, 0, 0, 0, 589, 127, 128, 129, - 633, 634, 612, 0, 0, 130, 131, 656, 0, 132, - 0, 133, 0, 0, 336, 0, 134, 644, 0, 266, - 0, 135, 136, 137, 138, 640, 642, 338, 0, 142, - 0, 139, 0, 337, 140, 657, 141, 658, 659, 660, - 0, 623, 0, 339, 143, 144, 340, 145, 146, 147, - 0, 149, 148, 0, 645, 341, 150, 342, 0, 151, - 0, 0, 152, 0, 153, 154, 155, 157, 275, 156, - 343, 158, 159, 161, 160, 584, 0, 613, 641, 162, - 661, 163, 164, 0, 165, 0, 0, 166, 0, 0, - 167, 278, 344, 168, 345, 635, 169, 170, 171, 172, - 173, 0, 636, 174, 281, 175, 0, 176, 177, 178, - 179, 180, 662, 181, 182, 0, 183, 184, 185, 186, - 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, - 346, 196, 197, 590, 198, 0, 202, 203, 204, 205, - 0, 284, 206, 207, 208, 629, 209, 199, 200, 210, - 347, 211, 663, 286, 212, 0, 218, 213, 214, 201, - 215, 217, 664, 216, 637, 0, 219, 0, 220, 221, - 222, 223, 224, 0, 289, 665, 666, 0, 0, 225, - 226, 638, 639, 611, 227, 228, 2153, 230, 0, 0, - 231, 232, 233, 234, 630, 235, 0, 294, 236, 237, - 238, 295, 667, 0, 0, 239, 0, 0, 0, 0, - 240, 241, 242, 243, 244, 585, 0, 0, 0, 0, - 0, 583, 0, 0, 0, 0, 581, 582, 616, 605, - 606, 603, 604, 595, 0, 591, 0, 0, 0, 0, - 594, 0, 0, 0, 98, 99, 0, 100, 0, 0, - 0, 0, 632, 598, 0, 0, 0, 101, 102, 103, - 2152, 647, 248, 648, 104, 649, 650, 0, 105, 252, - 253, 106, 107, 601, 631, 651, 652, 256, 0, 108, - 643, 0, 624, 0, 109, 110, 111, 0, 112, 0, - 113, 114, 115, 0, 335, 116, 2154, 0, 625, 627, - 0, 626, 628, 118, 119, 302, 120, 653, 121, 654, - 655, 0, 122, 0, 123, 0, 0, 0, 646, 125, - 0, 126, 0, 0, 0, 589, 127, 128, 129, 633, - 634, 612, 0, 0, 130, 131, 656, 0, 132, 0, - 133, 0, 0, 336, 0, 134, 644, 0, 266, 0, - 135, 136, 137, 138, 640, 642, 338, 0, 142, 0, - 139, 0, 337, 140, 657, 141, 658, 659, 660, 0, - 623, 0, 339, 143, 144, 340, 145, 146, 147, 0, - 149, 148, 0, 645, 341, 150, 342, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 343, - 158, 159, 161, 160, 584, 0, 613, 641, 162, 661, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 344, 168, 345, 635, 169, 170, 171, 172, 173, - 0, 636, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 662, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 346, - 196, 197, 590, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 629, 209, 199, 200, 210, 347, - 211, 663, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 664, 216, 637, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 665, 666, 0, 0, 225, 226, - 638, 639, 611, 227, 228, 2153, 230, 0, 0, 231, - 232, 233, 234, 630, 235, 0, 294, 236, 237, 238, - 295, 667, 0, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 585, 0, 0, 0, 0, 0, - 583, 0, 0, 0, 0, 581, 582, 616, 605, 606, - 603, 604, 595, 0, 591, 0, 0, 0, 0, 594, - 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, - 0, 632, 598, 0, 0, 0, 101, 102, 103, 246, - 647, 248, 648, 104, 649, 650, 0, 105, 252, 253, - 106, 107, 601, 631, 651, 652, 256, 0, 108, 643, - 0, 624, 0, 109, 110, 111, 0, 112, 0, 113, - 114, 115, 0, 335, 116, 117, 0, 625, 627, 0, - 626, 628, 118, 119, 302, 120, 653, 121, 654, 655, - 0, 122, 0, 123, 0, 0, 0, 646, 125, 0, - 126, 0, 0, 0, 589, 127, 128, 129, 633, 634, - 612, 0, 0, 130, 131, 656, 0, 132, 0, 133, - 0, 0, 336, 0, 134, 644, 0, 266, 0, 135, - 136, 137, 138, 640, 642, 338, 0, 142, 0, 139, - 0, 337, 140, 657, 141, 658, 659, 660, 0, 623, - 0, 339, 143, 144, 340, 145, 146, 147, 0, 149, - 148, 0, 645, 341, 150, 342, 0, 151, 0, 0, - 152, 0, 153, 154, 155, 157, 275, 156, 343, 158, - 159, 161, 160, 584, 0, 613, 641, 162, 661, 163, - 164, 0, 165, 0, 0, 166, 0, 0, 167, 278, - 344, 168, 345, 635, 169, 170, 171, 172, 173, 0, - 636, 174, 281, 175, 0, 176, 177, 178, 179, 180, - 662, 181, 182, 0, 183, 184, 185, 186, 187, 189, - 190, 188, 191, 192, 193, 194, 0, 195, 346, 196, - 197, 590, 198, 0, 202, 203, 204, 205, 0, 284, - 206, 207, 208, 629, 209, 199, 200, 210, 347, 211, - 663, 286, 212, 0, 218, 213, 214, 201, 215, 217, - 664, 216, 637, 0, 219, 0, 220, 221, 222, 223, - 224, 0, 289, 665, 666, 0, 0, 225, 226, 638, - 639, 611, 227, 228, 229, 230, 0, 0, 231, 232, - 233, 234, 630, 235, 0, 294, 236, 237, 238, 295, - 667, 0, 0, 239, 0, 0, 0, 0, 240, 241, - 242, 243, 244, 585, 0, 0, 0, 0, 0, 583, - 0, 0, 0, 0, 581, 582, 1261, 605, 606, 603, - 604, 595, 0, 591, 0, 0, 0, 0, 594, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 632, 598, 0, 0, 0, 101, 102, 103, 246, 647, - 248, 648, 104, 649, 650, 0, 105, 252, 253, 106, - 107, 601, 631, 651, 652, 256, 0, 108, 643, 0, - 624, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 625, 627, 0, 626, - 628, 118, 119, 302, 120, 653, 1264, 654, 655, 0, - 122, 0, 123, 0, 0, 0, 646, 125, 0, 126, - 0, 0, 0, 589, 127, 128, 129, 633, 634, 612, - 0, 0, 130, 131, 656, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 644, 0, 266, 0, 135, 136, - 1265, 138, 640, 642, 338, 0, 142, 0, 139, 0, - 337, 140, 657, 141, 658, 659, 660, 0, 623, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 645, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 1266, 1263, 157, 275, 156, 343, 158, 159, - 161, 160, 584, 0, 613, 641, 162, 661, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 635, 169, 170, 171, 172, 173, 0, 636, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 662, - 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 590, 198, 0, 202, 203, 204, 1267, 0, 284, 206, - 207, 208, 629, 209, 199, 200, 210, 347, 211, 663, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 664, - 216, 637, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 665, 666, 0, 0, 225, 226, 638, 639, - 611, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 630, 235, 0, 294, 236, 237, 238, 295, 667, - 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 1262, 244, 585, 0, 0, 0, 0, 0, 583, 0, - 0, 0, 0, 581, 582, 616, 605, 606, 603, 604, - 595, 0, 591, 0, 0, 0, 0, 594, 0, 0, - 0, 98, 99, 0, 100, 0, 0, 0, 0, 632, - 598, 0, 0, 0, 101, 102, 103, 246, 647, 248, - 648, 104, 649, 650, 0, 105, 252, 253, 106, 107, - 601, 631, 651, 652, 256, 0, 108, 643, 0, 624, + 244, 589, 0, 0, 0, 0, 0, 587, 0, 0, + 0, 0, 585, 586, 816, 620, 609, 610, 607, 608, + 599, 595, 0, 0, 0, 0, 598, 0, 0, 0, + 0, 98, 99, 0, 100, 0, 0, 0, 0, 636, + 602, 0, 0, 0, 101, 102, 103, 246, 651, 248, + 652, 104, 653, 654, 0, 105, 252, 253, 106, 107, + 605, 635, 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, - 0, 335, 116, 117, 0, 625, 627, 0, 626, 628, - 118, 119, 302, 120, 653, 121, 654, 655, 0, 122, - 0, 123, 0, 0, 0, 646, 125, 0, 126, 0, - 0, 0, 589, 127, 128, 129, 633, 634, 612, 0, - 0, 130, 131, 656, 0, 132, 0, 133, 0, 0, - 336, 0, 134, 644, 0, 266, 0, 135, 136, 137, - 138, 640, 642, 338, 0, 142, 0, 139, 0, 337, - 140, 657, 141, 658, 659, 660, 0, 623, 0, 339, - 143, 144, 340, 145, 146, 147, 0, 149, 148, 0, - 645, 341, 150, 342, 0, 151, 0, 0, 152, 0, - 153, 154, 155, 157, 275, 156, 343, 158, 159, 161, - 160, 0, 0, 613, 641, 162, 661, 163, 164, 0, - 165, 0, 0, 166, 0, 0, 167, 278, 344, 168, - 345, 635, 169, 170, 171, 172, 173, 0, 636, 174, - 281, 175, 0, 176, 177, 178, 179, 180, 662, 181, + 0, 339, 116, 117, 0, 629, 631, 0, 630, 632, + 118, 119, 306, 120, 657, 121, 658, 659, 0, 122, + 0, 123, 0, 0, 0, 650, 125, 0, 126, 0, + 0, 0, 593, 127, 128, 129, 637, 638, 616, 0, + 0, 130, 131, 660, 661, 662, 0, 132, 0, 133, + 0, 0, 340, 0, 134, 648, 0, 268, 0, 135, + 136, 137, 138, 644, 646, 342, 0, 142, 0, 139, + 0, 341, 140, 663, 141, 664, 665, 666, 667, 668, + 0, 627, 0, 343, 143, 144, 344, 145, 146, 147, + 0, 149, 148, 0, 649, 345, 150, 346, 0, 151, + 0, 0, 152, 0, 153, 154, 155, 157, 279, 156, + 347, 158, 159, 161, 160, 588, 0, 617, 645, 162, + 669, 163, 164, 0, 165, 0, 0, 166, 0, 0, + 167, 282, 348, 168, 349, 639, 169, 170, 171, 172, + 173, 0, 640, 174, 285, 175, 0, 176, 177, 178, + 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, + 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, + 350, 196, 197, 594, 198, 0, 202, 203, 204, 205, + 0, 288, 206, 207, 208, 633, 209, 199, 200, 210, + 351, 211, 671, 290, 212, 0, 218, 213, 214, 201, + 215, 217, 672, 216, 641, 0, 219, 0, 220, 221, + 222, 223, 224, 0, 293, 673, 674, 0, 0, 225, + 226, 642, 643, 615, 227, 228, 229, 230, 0, 0, + 231, 232, 233, 234, 634, 235, 0, 298, 236, 237, + 238, 299, 675, 0, 0, 239, 0, 0, 0, 0, + 240, 241, 242, 243, 244, 589, 0, 0, 0, 0, + 0, 587, 0, 0, 0, 0, 585, 586, 620, 609, + 610, 607, 608, 599, 0, 595, 1237, 0, 0, 0, + 598, 0, 0, 0, 98, 99, 1105, 100, 0, 0, + 0, 0, 636, 602, 0, 0, 0, 101, 102, 103, + 246, 651, 248, 652, 104, 653, 654, 0, 105, 252, + 253, 106, 107, 605, 635, 655, 656, 256, 0, 108, + 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 339, 116, 117, 0, 629, 631, + 0, 630, 632, 118, 119, 306, 120, 657, 121, 658, + 659, 0, 122, 0, 123, 0, 0, 0, 650, 125, + 0, 126, 0, 0, 0, 593, 127, 128, 129, 637, + 638, 616, 0, 0, 130, 131, 660, 661, 662, 0, + 132, 0, 133, 0, 0, 340, 0, 134, 648, 0, + 268, 0, 135, 136, 137, 138, 644, 646, 342, 0, + 142, 0, 139, 0, 341, 140, 663, 141, 664, 665, + 666, 667, 668, 0, 627, 0, 343, 143, 144, 344, + 145, 146, 147, 0, 149, 148, 0, 649, 345, 150, + 346, 0, 151, 0, 0, 152, 0, 153, 154, 155, + 157, 279, 156, 347, 158, 159, 161, 160, 588, 0, + 617, 645, 162, 669, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 348, 168, 349, 639, 169, + 170, 171, 172, 173, 0, 640, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, + 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, + 194, 0, 195, 350, 196, 197, 594, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 633, 209, + 199, 200, 210, 351, 211, 671, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 672, 216, 641, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 673, 674, + 0, 0, 225, 226, 642, 643, 615, 227, 228, 229, + 230, 0, 0, 231, 232, 233, 234, 634, 235, 0, + 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, + 0, 0, 0, 240, 241, 242, 243, 244, 589, 0, + 0, 0, 0, 0, 587, 0, 0, 0, 0, 585, + 586, 620, 609, 610, 607, 608, 599, 0, 595, 0, + 0, 0, 0, 598, 0, 0, 0, 98, 99, 0, + 100, 0, 0, 0, 0, 636, 602, 0, 0, 0, + 101, 102, 103, 246, 651, 248, 652, 104, 653, 654, + 0, 105, 252, 253, 106, 107, 605, 635, 655, 656, + 256, 0, 108, 647, 0, 628, 0, 109, 110, 111, + 0, 112, 0, 113, 114, 115, 0, 339, 116, 2166, + 0, 629, 631, 0, 630, 632, 118, 119, 306, 120, + 657, 121, 658, 659, 0, 122, 0, 123, 0, 0, + 0, 650, 125, 0, 126, 0, 0, 0, 593, 127, + 128, 129, 637, 638, 616, 0, 0, 130, 131, 660, + 661, 662, 0, 132, 0, 133, 0, 0, 340, 0, + 134, 648, 0, 268, 0, 135, 136, 137, 138, 644, + 646, 342, 0, 142, 0, 139, 0, 341, 140, 663, + 141, 664, 665, 666, 667, 668, 0, 627, 0, 343, + 143, 144, 344, 145, 146, 147, 0, 149, 148, 0, + 649, 345, 150, 346, 0, 151, 0, 0, 152, 0, + 153, 154, 155, 157, 279, 156, 347, 158, 159, 161, + 160, 588, 0, 617, 645, 162, 669, 163, 164, 0, + 165, 0, 0, 166, 0, 0, 167, 282, 348, 168, + 349, 639, 169, 170, 171, 172, 173, 0, 640, 174, + 285, 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, - 191, 192, 193, 194, 0, 195, 346, 196, 197, 1279, - 198, 0, 202, 203, 204, 205, 0, 284, 206, 207, - 208, 629, 209, 199, 200, 210, 347, 211, 663, 286, - 212, 0, 218, 213, 214, 201, 215, 217, 664, 216, - 637, 0, 219, 0, 220, 221, 222, 223, 224, 0, - 289, 665, 666, 0, 0, 225, 226, 638, 639, 611, - 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, - 630, 235, 0, 294, 236, 237, 238, 295, 667, 0, + 191, 192, 193, 194, 0, 195, 350, 196, 197, 594, + 198, 0, 202, 203, 204, 205, 0, 288, 206, 207, + 208, 633, 209, 199, 200, 210, 351, 211, 671, 290, + 212, 0, 218, 213, 214, 201, 215, 217, 672, 216, + 641, 0, 219, 0, 220, 221, 222, 223, 224, 0, + 293, 673, 674, 0, 0, 225, 226, 642, 643, 615, + 227, 228, 2165, 230, 0, 0, 231, 232, 233, 234, + 634, 235, 0, 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, - 244, 0, 0, 0, 0, 0, 0, 1277, 0, 0, - 0, 0, 1275, 1276, 616, 605, 606, 603, 604, 595, - 0, 1278, 0, 0, 0, 0, 594, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 632, 598, - 0, 0, 0, 101, 102, 103, 246, 647, 248, 648, - 104, 649, 650, 0, 105, 252, 253, 106, 107, 0, - 631, 651, 652, 256, 0, 108, 643, 0, 624, 0, + 244, 589, 0, 0, 0, 0, 0, 587, 0, 0, + 0, 0, 585, 586, 620, 609, 610, 607, 608, 599, + 0, 595, 0, 0, 0, 0, 598, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 636, 602, + 0, 0, 0, 101, 102, 103, 2164, 651, 248, 652, + 104, 653, 654, 0, 105, 252, 253, 106, 107, 605, + 635, 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 625, 627, 0, 626, 628, 118, - 119, 302, 120, 653, 121, 654, 655, 0, 122, 0, - 123, 0, 0, 0, 646, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 633, 634, 612, 0, 0, - 130, 131, 656, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 644, 0, 266, 0, 135, 136, 137, 138, - 640, 642, 338, 0, 142, 0, 139, 0, 337, 140, - 657, 141, 658, 659, 660, 0, 623, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 645, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 0, 0, 613, 641, 162, 661, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 635, 169, 170, 171, 172, 173, 0, 636, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 662, 181, 182, + 339, 116, 2166, 0, 629, 631, 0, 630, 632, 118, + 119, 306, 120, 657, 121, 658, 659, 0, 122, 0, + 123, 0, 0, 0, 650, 125, 0, 126, 0, 0, + 0, 593, 127, 128, 129, 637, 638, 616, 0, 0, + 130, 131, 660, 661, 662, 0, 132, 0, 133, 0, + 0, 340, 0, 134, 648, 0, 268, 0, 135, 136, + 137, 138, 644, 646, 342, 0, 142, 0, 139, 0, + 341, 140, 663, 141, 664, 665, 666, 667, 668, 0, + 627, 0, 343, 143, 144, 344, 145, 146, 147, 0, + 149, 148, 0, 649, 345, 150, 346, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 347, + 158, 159, 161, 160, 588, 0, 617, 645, 162, 669, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 348, 168, 349, 639, 169, 170, 171, 172, 173, + 0, 640, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 350, + 196, 197, 594, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 633, 209, 199, 200, 210, 351, + 211, 671, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 672, 216, 641, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 673, 674, 0, 0, 225, 226, + 642, 643, 615, 227, 228, 2165, 230, 0, 0, 231, + 232, 233, 234, 634, 235, 0, 298, 236, 237, 238, + 299, 675, 0, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 589, 0, 0, 0, 0, 0, + 587, 0, 0, 0, 0, 585, 586, 620, 609, 610, + 607, 608, 599, 0, 595, 0, 0, 0, 0, 598, + 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, + 0, 636, 602, 0, 0, 0, 101, 102, 103, 246, + 651, 248, 652, 104, 653, 654, 0, 105, 252, 253, + 106, 107, 605, 635, 655, 656, 256, 0, 108, 647, + 0, 628, 0, 109, 110, 111, 0, 112, 0, 113, + 114, 115, 0, 339, 116, 117, 0, 629, 631, 0, + 630, 632, 118, 119, 306, 120, 657, 121, 658, 659, + 0, 122, 0, 123, 0, 0, 0, 650, 125, 0, + 126, 0, 0, 0, 593, 127, 128, 129, 637, 638, + 616, 0, 0, 130, 131, 660, 661, 662, 0, 132, + 0, 133, 0, 0, 340, 0, 134, 648, 0, 268, + 0, 135, 136, 137, 138, 644, 646, 342, 0, 142, + 0, 139, 0, 341, 140, 663, 141, 664, 665, 666, + 667, 668, 0, 627, 0, 343, 143, 144, 344, 145, + 146, 147, 0, 149, 148, 0, 649, 345, 150, 346, + 0, 151, 0, 0, 152, 0, 153, 154, 155, 157, + 279, 156, 347, 158, 159, 161, 160, 588, 0, 617, + 645, 162, 669, 163, 164, 0, 165, 0, 0, 166, + 0, 0, 167, 282, 348, 168, 349, 639, 169, 170, + 171, 172, 173, 0, 640, 174, 285, 175, 0, 176, + 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, + 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, + 0, 195, 350, 196, 197, 594, 198, 0, 202, 203, + 204, 205, 0, 288, 206, 207, 208, 633, 209, 199, + 200, 210, 351, 211, 671, 290, 212, 0, 218, 213, + 214, 201, 215, 217, 672, 216, 641, 0, 219, 0, + 220, 221, 222, 223, 224, 0, 293, 673, 674, 0, + 0, 225, 226, 642, 643, 615, 227, 228, 229, 230, + 0, 0, 231, 232, 233, 234, 634, 235, 0, 298, + 236, 237, 238, 299, 675, 0, 0, 239, 0, 0, + 0, 0, 240, 241, 242, 243, 244, 589, 0, 0, + 0, 0, 0, 587, 0, 0, 0, 0, 585, 586, + 1273, 609, 610, 607, 608, 599, 0, 595, 0, 0, + 0, 0, 598, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 636, 602, 0, 0, 0, 101, + 102, 103, 246, 651, 248, 652, 104, 653, 654, 0, + 105, 252, 253, 106, 107, 605, 635, 655, 656, 256, + 0, 108, 647, 0, 628, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 339, 116, 117, 0, + 629, 631, 0, 630, 632, 118, 119, 306, 120, 657, + 1276, 658, 659, 0, 122, 0, 123, 0, 0, 0, + 650, 125, 0, 126, 0, 0, 0, 593, 127, 128, + 129, 637, 638, 616, 0, 0, 130, 131, 660, 661, + 662, 0, 132, 0, 133, 0, 0, 340, 0, 134, + 648, 0, 268, 0, 135, 136, 1277, 138, 644, 646, + 342, 0, 142, 0, 139, 0, 341, 140, 663, 141, + 664, 665, 666, 667, 668, 0, 627, 0, 343, 143, + 144, 344, 145, 146, 147, 0, 149, 148, 0, 649, + 345, 150, 346, 0, 151, 0, 0, 152, 0, 153, + 1278, 1275, 157, 279, 156, 347, 158, 159, 161, 160, + 588, 0, 617, 645, 162, 669, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 348, 168, 349, + 639, 169, 170, 171, 172, 173, 0, 640, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 1279, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 629, 209, 199, 200, 210, 347, 211, 663, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 664, 216, 637, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 665, 666, 0, 0, 225, 226, 638, 639, 611, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 630, - 235, 0, 294, 236, 237, 238, 295, 667, 0, 0, - 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 0, 0, 616, 605, 606, 603, 604, 595, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 98, 99, - 1278, 100, 0, 0, 0, 594, 632, 598, 0, 0, - 0, 101, 102, 103, 0, 647, 248, 648, 104, 649, - 650, 0, 105, 252, 253, 106, 107, 601, 631, 651, - 652, 256, 0, 108, 643, 0, 624, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 335, 116, - 2154, 0, 625, 627, 0, 626, 628, 118, 119, 302, - 120, 653, 121, 654, 655, 0, 122, 0, 123, 0, - 0, 0, 646, 125, 0, 126, 0, 0, 0, 589, - 127, 128, 129, 633, 634, 612, 0, 0, 130, 131, - 656, 0, 132, 0, 133, 0, 0, 336, 0, 134, - 644, 0, 266, 0, 135, 136, 137, 138, 640, 642, - 0, 0, 142, 0, 139, 0, 337, 140, 657, 141, - 658, 659, 660, 0, 623, 0, 0, 143, 144, 340, - 145, 146, 147, 0, 149, 148, 0, 645, 341, 150, + 192, 193, 194, 0, 195, 350, 196, 197, 594, 198, + 0, 202, 203, 204, 1279, 0, 288, 206, 207, 208, + 633, 209, 199, 200, 210, 351, 211, 671, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 672, 216, 641, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 673, 674, 0, 0, 225, 226, 642, 643, 615, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 634, + 235, 0, 298, 236, 237, 238, 299, 675, 0, 0, + 239, 0, 0, 0, 0, 240, 241, 242, 1274, 244, + 589, 0, 0, 0, 0, 0, 587, 0, 0, 0, + 0, 585, 586, 620, 609, 610, 607, 608, 599, 0, + 595, 0, 0, 0, 0, 598, 0, 0, 0, 98, + 99, 0, 100, 0, 0, 0, 0, 636, 602, 0, + 0, 0, 101, 102, 103, 246, 651, 248, 652, 104, + 653, 654, 0, 105, 252, 253, 106, 107, 605, 635, + 655, 656, 256, 0, 108, 647, 0, 628, 0, 109, + 110, 111, 0, 112, 0, 113, 114, 115, 0, 339, + 116, 117, 0, 629, 631, 0, 630, 632, 118, 119, + 306, 120, 657, 121, 658, 659, 0, 122, 0, 123, + 0, 0, 0, 650, 125, 0, 126, 0, 0, 0, + 593, 127, 128, 129, 637, 638, 616, 0, 0, 130, + 131, 660, 661, 662, 0, 132, 0, 133, 0, 0, + 340, 0, 134, 648, 0, 268, 0, 135, 136, 137, + 138, 644, 646, 342, 0, 142, 0, 139, 0, 341, + 140, 663, 141, 664, 665, 666, 667, 668, 0, 627, + 0, 343, 143, 144, 344, 145, 146, 147, 0, 149, + 148, 0, 649, 345, 150, 346, 0, 151, 0, 0, + 152, 0, 153, 154, 155, 157, 279, 156, 347, 158, + 159, 161, 160, 0, 0, 617, 645, 162, 669, 163, + 164, 0, 165, 0, 0, 166, 0, 0, 167, 282, + 348, 168, 349, 639, 169, 170, 171, 172, 173, 0, + 640, 174, 285, 175, 0, 176, 177, 178, 179, 180, + 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 0, 195, 350, 196, + 197, 1291, 198, 0, 202, 203, 204, 205, 0, 288, + 206, 207, 208, 633, 209, 199, 200, 210, 351, 211, + 671, 290, 212, 0, 218, 213, 214, 201, 215, 217, + 672, 216, 641, 0, 219, 0, 220, 221, 222, 223, + 224, 0, 293, 673, 674, 0, 0, 225, 226, 642, + 643, 615, 227, 228, 229, 230, 0, 0, 231, 232, + 233, 234, 634, 235, 0, 298, 236, 237, 238, 299, + 675, 0, 0, 239, 0, 0, 0, 0, 240, 241, + 242, 243, 244, 0, 0, 0, 0, 0, 0, 1289, + 0, 0, 0, 0, 1287, 1288, 620, 609, 610, 607, + 608, 599, 0, 1290, 0, 0, 0, 0, 598, 0, + 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, + 636, 602, 0, 0, 0, 101, 102, 103, 246, 651, + 248, 652, 104, 653, 654, 0, 105, 252, 253, 106, + 107, 0, 635, 655, 656, 256, 0, 108, 647, 0, + 628, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 339, 116, 117, 0, 629, 631, 0, 630, + 632, 118, 119, 306, 120, 657, 121, 658, 659, 0, + 122, 0, 123, 0, 0, 0, 650, 125, 0, 126, + 0, 0, 0, 261, 127, 128, 129, 637, 638, 616, + 0, 0, 130, 131, 660, 661, 662, 0, 132, 0, + 133, 0, 0, 340, 0, 134, 648, 0, 268, 0, + 135, 136, 137, 138, 644, 646, 342, 0, 142, 0, + 139, 0, 341, 140, 663, 141, 664, 665, 666, 667, + 668, 0, 627, 0, 343, 143, 144, 344, 145, 146, + 147, 0, 149, 148, 0, 649, 345, 150, 346, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 347, 158, 159, 161, 160, 0, 0, 617, 645, + 162, 669, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 348, 168, 349, 639, 169, 170, 171, + 172, 173, 0, 640, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 350, 196, 197, 1291, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 633, 209, 199, 200, + 210, 351, 211, 671, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 672, 216, 641, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 673, 674, 0, 0, + 225, 226, 642, 643, 615, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 634, 235, 0, 298, 236, + 237, 238, 299, 675, 0, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 620, 609, + 610, 607, 608, 599, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 98, 99, 1290, 100, 0, 0, + 0, 598, 636, 602, 0, 0, 0, 101, 102, 103, + 0, 651, 248, 652, 104, 653, 654, 0, 105, 252, + 253, 106, 107, 605, 635, 655, 656, 256, 0, 108, + 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 339, 116, 2166, 0, 629, 631, + 0, 630, 632, 118, 119, 306, 120, 657, 121, 658, + 659, 0, 122, 0, 123, 0, 0, 0, 650, 125, + 0, 126, 0, 0, 0, 593, 127, 128, 129, 637, + 638, 616, 0, 0, 130, 131, 660, 661, 662, 0, + 132, 0, 133, 0, 0, 340, 0, 134, 648, 0, + 268, 0, 135, 136, 137, 138, 644, 646, 0, 0, + 142, 0, 139, 0, 341, 140, 663, 141, 664, 665, + 666, 667, 668, 0, 627, 0, 0, 143, 144, 344, + 145, 146, 147, 0, 149, 148, 0, 649, 345, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 343, 158, 159, 161, 160, 584, 0, - 613, 641, 162, 661, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 344, 168, 345, 635, 169, - 170, 171, 172, 173, 0, 636, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 662, 181, 182, 0, 183, + 157, 279, 156, 347, 158, 159, 161, 160, 588, 0, + 617, 645, 162, 669, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 348, 168, 349, 639, 169, + 170, 171, 172, 173, 0, 640, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 346, 196, 197, 590, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 629, 209, - 199, 200, 210, 0, 211, 663, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 664, 216, 637, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 665, 666, - 0, 0, 225, 226, 638, 639, 611, 227, 228, 2153, - 230, 0, 0, 231, 232, 233, 234, 630, 235, 0, - 294, 236, 237, 238, 295, 667, 0, 0, 239, 0, - 0, 0, 0, 240, 241, 242, 243, 244, 616, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 581, - 582, 0, 0, 0, 98, 99, 0, 100, 591, 0, - 0, 0, 632, 594, 0, 0, 0, 101, 102, 103, + 194, 0, 195, 350, 196, 197, 594, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 633, 209, + 199, 200, 210, 0, 211, 671, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 672, 216, 641, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 673, 674, + 0, 0, 225, 226, 642, 643, 615, 227, 228, 2165, + 230, 0, 0, 231, 232, 233, 234, 634, 235, 0, + 298, 236, 237, 238, 299, 675, 0, 0, 239, 0, + 0, 0, 0, 240, 241, 242, 243, 244, 620, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 585, + 586, 0, 0, 0, 98, 99, 0, 100, 595, 0, + 0, 0, 636, 598, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, - 253, 106, 107, 0, 631, 254, 255, 256, 0, 108, - 643, 0, 624, 0, 109, 110, 111, 0, 112, 0, - 113, 114, 115, 0, 335, 116, 117, 0, 625, 627, - 0, 626, 628, 118, 119, 302, 120, 258, 121, 259, + 253, 106, 107, 0, 635, 254, 255, 256, 0, 108, + 647, 0, 628, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 339, 116, 117, 0, 629, 631, + 0, 630, 632, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, - 0, 126, 0, 0, 0, 261, 127, 128, 129, 633, - 634, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 336, 0, 134, 644, 0, 266, 0, - 135, 136, 137, 138, 640, 642, 338, 0, 142, 0, - 139, 0, 337, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 339, 143, 144, 340, 145, 146, 147, 0, - 149, 148, 0, 645, 341, 150, 342, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 343, - 158, 159, 161, 160, 0, 0, 0, 641, 162, 277, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 344, 168, 345, 635, 169, 170, 171, 172, 173, - 0, 636, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 346, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 629, 209, 199, 200, 210, 347, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 637, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 638, 639, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 630, 235, 0, 294, 236, 237, 238, - 295, 296, 0, 0, 239, 0, 523, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 0, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 245, 0, 0, 0, 1653, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, - 334, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, - 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, - 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 338, 0, 142, 0, 139, 0, - 337, 140, 269, 141, 270, 271, 272, 0, 273, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 274, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, - 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 79, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 347, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 81, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, - 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 701, 296, - 0, 0, 239, 0, 0, 0, 77, 240, 241, 242, - 243, 244, 0, 78, 523, 520, 0, 521, 516, 511, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 98, 99, 76, 100, 0, 0, 0, 0, 245, 0, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 334, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 1039, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 513, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 267, 268, 338, 0, 142, 0, 139, 0, 337, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 274, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 514, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, - 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 347, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 512, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 0, 0, - 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 523, 520, 0, 521, 516, 511, 0, 0, 0, 0, - 0, 522, 517, 0, 0, 0, 98, 99, 0, 100, - 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, + 0, 126, 0, 0, 0, 261, 127, 128, 129, 637, + 638, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 340, 0, 134, 648, 0, + 268, 0, 135, 136, 137, 138, 644, 646, 342, 0, + 142, 0, 139, 0, 341, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 343, 143, 144, 344, + 145, 146, 147, 0, 149, 148, 0, 649, 345, 150, + 346, 0, 151, 0, 0, 152, 0, 153, 154, 155, + 157, 279, 156, 347, 158, 159, 161, 160, 0, 0, + 0, 645, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 348, 168, 349, 639, 169, + 170, 171, 172, 173, 0, 640, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, + 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, + 194, 0, 195, 350, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 633, 209, + 199, 200, 210, 351, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 641, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 642, 643, 0, 227, 228, 229, + 230, 0, 0, 231, 232, 233, 234, 634, 235, 0, + 298, 236, 237, 238, 299, 300, 0, 0, 239, 0, + 527, 0, 0, 240, 241, 242, 243, 244, 0, 0, + 0, 0, 0, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 245, 0, 0, 0, 1665, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, - 0, 108, 257, 0, 334, 0, 109, 110, 111, 0, - 112, 0, 113, 114, 115, 0, 335, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, - 121, 259, 260, 1036, 122, 0, 123, 0, 0, 0, + 0, 108, 257, 0, 338, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 339, 116, 117, 0, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, + 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 513, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 336, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 267, 268, 338, 0, - 142, 0, 139, 0, 337, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 339, 143, 144, 340, 145, 146, - 147, 0, 149, 148, 0, 274, 341, 150, 342, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 343, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 514, 0, 166, 0, - 0, 167, 278, 344, 168, 345, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 346, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 347, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 512, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 0, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 523, 520, 0, 521, - 516, 511, 0, 0, 0, 0, 0, 522, 517, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, - 334, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 735, - 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, - 0, 0, 0, 261, 127, 128, 129, 262, 263, 513, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 338, 0, 142, 0, 139, 0, - 337, 140, 269, 141, 270, 271, 272, 0, 273, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 274, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 514, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 340, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 269, 270, + 342, 0, 142, 0, 139, 0, 341, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 343, 143, + 144, 344, 145, 146, 147, 0, 149, 148, 0, 278, + 345, 150, 346, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 347, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 348, 168, 349, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, + 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, + 192, 193, 194, 0, 195, 350, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 79, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 351, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 81, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, + 235, 0, 298, 236, 237, 238, 709, 300, 0, 0, + 239, 0, 0, 0, 77, 240, 241, 242, 243, 244, + 0, 78, 527, 524, 0, 525, 520, 515, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 98, 99, + 76, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 338, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 1051, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 517, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 342, 0, 142, 0, 139, 0, 341, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 278, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 518, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, + 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 351, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, + 516, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, + 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, + 243, 244, 527, 524, 0, 525, 520, 515, 0, 0, + 0, 0, 0, 526, 521, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 338, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 1048, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 517, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 342, 0, 142, 0, 139, 0, 341, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 278, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 518, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, + 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 351, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, + 516, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, + 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, + 243, 244, 527, 524, 0, 525, 520, 515, 0, 0, + 0, 0, 0, 526, 521, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 338, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 743, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 517, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 342, 0, 142, 0, 139, 0, 341, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 278, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 518, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 347, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, - 512, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 351, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, + 516, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 523, 520, 0, 521, 516, 511, 0, 0, - 0, 0, 0, 522, 517, 0, 0, 0, 98, 99, + 243, 244, 527, 524, 0, 525, 520, 515, 0, 0, + 0, 0, 0, 526, 521, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 334, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 335, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, + 255, 256, 0, 108, 257, 0, 338, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 513, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 336, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 338, 0, 142, 0, 139, 0, 337, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 339, 143, 144, 340, - 145, 146, 147, 0, 149, 148, 0, 274, 341, 150, - 342, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 343, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 514, 0, - 166, 0, 0, 167, 278, 344, 168, 345, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, - 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 346, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 347, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 512, 227, 228, 229, - 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 0, 95, 239, 0, - 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, - 0, 0, 0, 98, 99, 0, 100, 0, 0, 522, - 517, 245, 0, 0, 0, 0, 101, 102, 103, 246, - 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, - 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, - 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, - 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, - 0, 0, 118, 119, 302, 120, 258, 121, 259, 260, - 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, - 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, - 0, 0, 0, 130, 131, 264, 0, 132, 0, 133, - 0, 0, 0, 0, 134, 265, 0, 266, 0, 135, - 136, 137, 138, 267, 268, 0, 0, 142, 0, 139, - 0, 0, 140, 269, 141, 270, 271, 272, 0, 273, - 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, - 148, 0, 274, 0, 150, 0, 0, 151, 0, 0, - 152, 0, 153, 154, 155, 157, 275, 156, 0, 158, - 159, 161, 160, 0, 0, 0, 276, 162, 277, 163, - 164, 0, 165, 0, 557, 166, 0, 0, 167, 278, - 0, 168, 0, 279, 169, 170, 171, 172, 173, 0, - 280, 174, 281, 175, 0, 176, 177, 178, 179, 180, - 282, 181, 182, 0, 183, 184, 185, 186, 187, 189, - 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 283, 198, 0, 202, 203, 204, 205, 79, 284, - 206, 207, 208, 0, 209, 199, 200, 210, 0, 211, - 285, 286, 212, 0, 218, 213, 214, 201, 215, 217, - 287, 216, 288, 0, 219, 81, 220, 221, 222, 223, - 224, 0, 289, 290, 291, 0, 0, 225, 226, 292, - 293, 0, 227, 228, 229, 230, 0, 0, 231, 232, - 233, 234, 0, 235, 0, 294, 236, 237, 238, 701, - 296, 0, 0, 239, 0, 95, 0, 77, 240, 241, - 242, 243, 244, 0, 78, 0, 0, 0, 0, 0, - 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, - 0, 1398, 0, 1403, 101, 102, 103, 246, 247, 248, - 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, - 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, - 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, - 0, 0, 116, 117, 0, 0, 0, 0, 0, 0, - 118, 119, 302, 120, 258, 121, 259, 260, 0, 122, - 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, - 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, - 0, 130, 131, 264, 0, 132, 0, 133, 0, 0, - 0, 0, 134, 265, 0, 266, 0, 135, 136, 137, - 138, 267, 268, 0, 0, 142, 0, 139, 0, 0, - 140, 269, 141, 270, 271, 272, 0, 273, 0, 0, + 127, 128, 129, 262, 263, 517, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 342, 0, 142, 0, 139, 0, 341, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 278, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 518, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, + 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 351, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, + 516, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, + 0, 95, 239, 0, 0, 0, 0, 240, 241, 242, + 243, 244, 0, 0, 0, 0, 0, 98, 99, 0, + 100, 0, 0, 526, 521, 245, 0, 0, 0, 0, + 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, + 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, + 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, + 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, + 0, 0, 0, 0, 0, 0, 118, 119, 306, 120, + 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, + 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, + 128, 129, 262, 263, 0, 0, 0, 130, 131, 264, + 265, 266, 0, 132, 0, 133, 0, 0, 0, 0, + 134, 267, 0, 268, 0, 135, 136, 137, 138, 269, + 270, 0, 0, 142, 0, 139, 0, 0, 140, 271, + 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, 0, - 274, 0, 150, 0, 0, 151, 0, 0, 152, 0, - 153, 154, 155, 157, 275, 156, 0, 158, 159, 161, - 160, 0, 0, 0, 276, 162, 277, 163, 164, 0, - 165, 0, 0, 166, 0, 0, 167, 278, 0, 168, - 0, 279, 169, 170, 171, 172, 173, 0, 280, 174, - 281, 175, 0, 176, 177, 178, 179, 180, 282, 181, + 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, + 153, 154, 155, 157, 279, 156, 0, 158, 159, 161, + 160, 0, 0, 0, 280, 162, 281, 163, 164, 0, + 165, 0, 561, 166, 0, 0, 167, 282, 0, 168, + 0, 283, 169, 170, 171, 172, 173, 0, 284, 174, + 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 283, - 198, 0, 202, 203, 204, 205, 79, 284, 206, 207, - 208, 0, 209, 199, 200, 210, 0, 211, 285, 286, - 212, 0, 218, 213, 214, 201, 215, 217, 287, 216, - 288, 0, 219, 81, 220, 221, 222, 223, 224, 0, - 289, 290, 291, 0, 0, 225, 226, 292, 293, 0, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 287, + 198, 0, 202, 203, 204, 205, 79, 288, 206, 207, + 208, 0, 209, 199, 200, 210, 0, 211, 289, 290, + 212, 0, 218, 213, 214, 201, 215, 217, 291, 216, + 292, 0, 219, 81, 220, 221, 222, 223, 224, 0, + 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, - 0, 235, 0, 294, 236, 237, 238, 701, 296, 0, + 0, 235, 0, 298, 236, 237, 238, 709, 300, 0, 0, 239, 0, 95, 0, 77, 240, 241, 242, 243, 244, 0, 78, 0, 0, 0, 0, 0, 0, 98, - 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, - 0, 76, 101, 102, 103, 246, 247, 248, 249, 104, + 99, 0, 100, 0, 0, 0, 0, 245, 0, 1410, + 0, 1415, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, 119, - 302, 120, 258, 121, 259, 260, 0, 122, 0, 123, + 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, 130, - 131, 264, 0, 132, 0, 133, 0, 0, 0, 0, - 134, 265, 0, 266, 0, 135, 136, 137, 138, 267, - 268, 0, 0, 142, 0, 139, 0, 0, 140, 269, - 141, 270, 271, 272, 0, 273, 0, 0, 143, 144, - 0, 145, 146, 147, 0, 149, 148, 0, 274, 0, - 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, - 155, 157, 275, 156, 0, 158, 159, 161, 160, 0, - 0, 0, 276, 162, 277, 163, 164, 0, 165, 0, - 557, 166, 0, 0, 167, 278, 0, 168, 0, 279, - 169, 170, 171, 172, 173, 0, 280, 174, 281, 175, - 0, 176, 177, 178, 179, 180, 282, 181, 182, 0, - 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 283, 198, 0, - 202, 203, 204, 205, 0, 284, 206, 207, 208, 0, - 209, 199, 200, 210, 0, 211, 285, 286, 212, 0, - 218, 213, 214, 201, 215, 217, 287, 216, 288, 0, - 219, 0, 220, 221, 222, 223, 224, 0, 289, 290, - 291, 0, 0, 225, 226, 292, 293, 0, 227, 228, - 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, - 0, 294, 236, 237, 238, 295, 296, 0, 0, 239, - 0, 95, 0, 0, 240, 241, 242, 243, 244, 0, - 0, 0, 0, 0, 0, 0, 0, 98, 99, 0, - 100, 0, 0, 0, 0, 245, 0, 1398, 0, 1403, - 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, - 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, - 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, - 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, - 0, 0, 0, 0, 0, 0, 118, 119, 302, 120, - 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, - 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, - 128, 129, 262, 263, 0, 0, 0, 130, 131, 264, - 0, 132, 0, 133, 0, 0, 0, 0, 134, 265, - 0, 266, 0, 135, 136, 137, 138, 267, 268, 0, - 0, 142, 0, 139, 0, 0, 140, 269, 141, 270, - 271, 272, 0, 273, 0, 0, 143, 144, 0, 145, - 146, 147, 0, 149, 148, 0, 274, 0, 150, 0, - 0, 151, 0, 0, 152, 0, 153, 154, 155, 157, - 275, 156, 0, 158, 159, 161, 160, 0, 0, 0, - 276, 162, 277, 163, 164, 0, 165, 0, 0, 166, - 0, 0, 167, 278, 0, 168, 0, 279, 169, 170, - 171, 172, 173, 0, 280, 174, 281, 175, 0, 176, - 177, 178, 179, 180, 282, 181, 182, 0, 183, 184, - 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 283, 198, 0, 202, 203, - 204, 205, 0, 284, 206, 207, 208, 0, 209, 199, - 200, 210, 0, 211, 285, 286, 212, 0, 218, 213, - 214, 201, 215, 217, 287, 216, 288, 0, 219, 0, - 220, 221, 222, 223, 224, 0, 289, 290, 291, 0, - 0, 225, 226, 292, 293, 0, 227, 228, 229, 230, - 0, 0, 231, 232, 233, 234, 0, 235, 0, 294, - 236, 237, 238, 295, 296, 0, 0, 239, 0, 0, - 95, 0, 240, 241, 242, 243, 244, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 98, 99, 0, 100, - 0, 0, 0, 0, 245, 0, 0, 0, 943, 101, - 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, - 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, - 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, - 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, - 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, - 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 267, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 0, 0, 239, 0, 95, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, - 0, 0, 245, 0, 0, 0, 1319, 101, 102, 103, - 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, - 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, - 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, - 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, - 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, - 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 267, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 0, 0, 239, 0, 95, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 0, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 245, 0, 0, 0, 1715, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, - 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, - 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, - 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 131, 264, 265, 266, 0, 132, 0, 133, 0, 0, + 0, 0, 134, 267, 0, 268, 0, 135, 136, 137, + 138, 269, 270, 0, 0, 142, 0, 139, 0, 0, + 140, 271, 141, 272, 273, 274, 275, 276, 0, 277, + 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, + 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, + 152, 0, 153, 154, 155, 157, 279, 156, 0, 158, + 159, 161, 160, 0, 0, 0, 280, 162, 281, 163, + 164, 0, 165, 0, 0, 166, 0, 0, 167, 282, + 0, 168, 0, 283, 169, 170, 171, 172, 173, 0, + 284, 174, 285, 175, 0, 176, 177, 178, 179, 180, + 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, + 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, + 197, 287, 198, 0, 202, 203, 204, 205, 79, 288, + 206, 207, 208, 0, 209, 199, 200, 210, 0, 211, + 289, 290, 212, 0, 218, 213, 214, 201, 215, 217, + 291, 216, 292, 0, 219, 81, 220, 221, 222, 223, + 224, 0, 293, 294, 295, 0, 0, 225, 226, 296, + 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, + 233, 234, 0, 235, 0, 298, 236, 237, 238, 709, + 300, 0, 0, 239, 0, 95, 0, 77, 240, 241, + 242, 243, 244, 0, 78, 0, 0, 0, 0, 0, + 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, + 0, 0, 0, 76, 101, 102, 103, 246, 247, 248, + 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, + 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, + 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, + 0, 0, 116, 117, 0, 0, 0, 0, 0, 0, + 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, + 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, + 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, + 0, 130, 131, 264, 265, 266, 0, 132, 0, 133, + 0, 0, 0, 0, 134, 267, 0, 268, 0, 135, + 136, 137, 138, 269, 270, 0, 0, 142, 0, 139, + 0, 0, 140, 271, 141, 272, 273, 274, 275, 276, + 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, + 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, + 0, 0, 152, 0, 153, 154, 155, 157, 279, 156, + 0, 158, 159, 161, 160, 0, 0, 0, 280, 162, + 281, 163, 164, 0, 165, 0, 561, 166, 0, 0, + 167, 282, 0, 168, 0, 283, 169, 170, 171, 172, + 173, 0, 284, 174, 285, 175, 0, 176, 177, 178, + 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, + 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 287, 198, 0, 202, 203, 204, 205, + 0, 288, 206, 207, 208, 0, 209, 199, 200, 210, + 0, 211, 289, 290, 212, 0, 218, 213, 214, 201, + 215, 217, 291, 216, 292, 0, 219, 0, 220, 221, + 222, 223, 224, 0, 293, 294, 295, 0, 0, 225, + 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, + 231, 232, 233, 234, 0, 235, 0, 298, 236, 237, + 238, 299, 300, 0, 0, 239, 0, 95, 0, 0, + 240, 241, 242, 243, 244, 0, 0, 0, 0, 0, + 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, + 0, 245, 0, 1410, 0, 1415, 101, 102, 103, 246, + 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, + 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, + 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, + 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, + 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, + 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, + 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, + 0, 0, 0, 130, 131, 264, 265, 266, 0, 132, + 0, 133, 0, 0, 0, 0, 134, 267, 0, 268, + 0, 135, 136, 137, 138, 269, 270, 0, 0, 142, + 0, 139, 0, 0, 140, 271, 141, 272, 273, 274, + 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, + 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, + 0, 151, 0, 0, 152, 0, 153, 154, 155, 157, + 279, 156, 0, 158, 159, 161, 160, 0, 0, 0, + 280, 162, 281, 163, 164, 0, 165, 0, 0, 166, + 0, 0, 167, 282, 0, 168, 0, 283, 169, 170, + 171, 172, 173, 0, 284, 174, 285, 175, 0, 176, + 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, + 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 287, 198, 0, 202, 203, + 204, 205, 0, 288, 206, 207, 208, 0, 209, 199, + 200, 210, 0, 211, 289, 290, 212, 0, 218, 213, + 214, 201, 215, 217, 291, 216, 292, 0, 219, 0, + 220, 221, 222, 223, 224, 0, 293, 294, 295, 0, + 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, + 0, 0, 231, 232, 233, 234, 0, 235, 0, 298, + 236, 237, 238, 299, 300, 0, 0, 239, 0, 0, + 95, 0, 240, 241, 242, 243, 244, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 245, 0, 0, 0, 951, 101, + 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, + 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, + 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, + 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, + 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 269, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, + 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, + 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 0, 0, + 239, 0, 95, 0, 0, 240, 241, 242, 243, 244, + 0, 0, 0, 0, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 1331, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, - 0, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 616, 605, 606, 603, 604, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 98, 99, - 0, 100, 813, 0, 0, 0, 245, 0, 0, 0, - 0, 101, 102, 103, 246, 647, 248, 648, 104, 649, - 650, 0, 105, 252, 253, 106, 107, 0, 0, 651, - 652, 256, 0, 108, 257, 0, 334, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 335, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 653, 121, 654, 655, 0, 122, 0, 123, 0, - 0, 0, 646, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 612, 0, 0, 130, 131, - 656, 0, 132, 0, 133, 0, 0, 336, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 338, 0, 142, 0, 139, 0, 337, 140, 657, 141, - 658, 659, 660, 0, 623, 0, 339, 143, 144, 340, - 145, 146, 147, 0, 149, 148, 0, 274, 341, 150, - 342, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 343, 158, 159, 161, 160, 0, 0, - 613, 276, 162, 661, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 344, 168, 345, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 662, 181, 182, 0, 183, - 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 346, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 347, 211, 663, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 664, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 665, 666, - 0, 0, 225, 226, 292, 293, 611, 227, 228, 229, - 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 667, 523, 520, 239, 0, - 0, 742, 0, 240, 241, 242, 243, 244, 0, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, - 334, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 335, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, - 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, - 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 336, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 338, 0, 142, 0, 139, 0, - 337, 140, 269, 141, 270, 271, 272, 0, 273, 0, - 339, 143, 144, 340, 145, 146, 147, 0, 149, 148, - 0, 274, 341, 150, 342, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 343, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 344, - 168, 345, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, + 0, 0, 239, 0, 95, 0, 0, 240, 241, 242, + 243, 244, 0, 0, 0, 0, 0, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 1727, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 0, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 620, 609, 610, 607, 608, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 98, 99, 0, 100, 821, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 651, 248, 652, + 104, 653, 654, 0, 105, 252, 253, 106, 107, 0, + 0, 655, 656, 256, 0, 108, 257, 0, 338, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 339, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 657, 121, 658, 659, 0, 122, 0, + 123, 0, 0, 0, 650, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 616, 0, 0, + 130, 131, 660, 661, 662, 0, 132, 0, 133, 0, + 0, 340, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 342, 0, 142, 0, 139, 0, + 341, 140, 663, 141, 664, 665, 666, 667, 668, 0, + 627, 0, 343, 143, 144, 344, 145, 146, 147, 0, + 149, 148, 0, 278, 345, 150, 346, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 347, + 158, 159, 161, 160, 0, 0, 617, 280, 162, 669, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 348, 168, 349, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 670, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 350, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 351, + 211, 671, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 672, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 673, 674, 0, 0, 225, 226, + 296, 297, 615, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 675, 527, 524, 239, 0, 0, 750, 0, 240, + 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 338, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 339, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 340, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 342, 0, 142, 0, 139, 0, 341, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 343, 143, 144, 344, 145, 146, 147, 0, 149, 148, + 0, 278, 345, 150, 346, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 347, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 348, + 168, 349, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 346, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 347, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 188, 191, 192, 193, 194, 0, 195, 350, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 351, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, @@ -3243,270 +3293,212 @@ var sqlAct = [...]int{ 0, 0, 0, 0, 0, 118, 119, 91, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 267, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 90, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 523, 520, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 94, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 334, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 335, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 336, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 267, 268, 338, 0, 142, 0, 139, 0, 337, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 339, 143, - 144, 340, 145, 146, 147, 0, 149, 148, 0, 274, - 341, 150, 342, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 343, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 344, 168, 345, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 269, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, + 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 346, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 347, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 90, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 527, 524, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, - 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, + 0, 0, 245, 94, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, - 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, - 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 257, 0, 338, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 339, 116, 117, 0, 0, 0, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 267, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 523, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, - 0, 100, 0, 0, 0, 0, 245, 94, 0, 0, - 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, - 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 334, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 335, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, - 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 336, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 338, 0, 142, 0, 139, 0, 337, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 339, 143, 144, 340, - 145, 146, 147, 0, 149, 148, 0, 274, 341, 150, - 342, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 343, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 344, 168, 345, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 340, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 269, 270, 342, 0, + 142, 0, 139, 0, 341, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 343, 143, 144, 344, + 145, 146, 147, 0, 149, 148, 0, 278, 345, 150, + 346, 0, 151, 0, 0, 152, 0, 153, 154, 155, + 157, 279, 156, 347, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 348, 168, 349, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 346, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 347, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 350, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 351, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 1129, 108, 257, 0, - 0, 0, 109, 110, 111, 0, 112, 1127, 113, 114, + 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, + 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 1370, 0, 130, 131, 264, 0, 132, 0, 133, 1132, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 0, 0, 142, 1368, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 269, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 527, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 245, 94, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 338, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 339, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 340, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 342, 0, 142, 0, 139, 0, + 341, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 343, 143, 144, 344, 145, 146, 147, 0, + 149, 148, 0, 278, 345, 150, 346, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 347, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 348, 168, 349, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 350, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 351, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 1141, 108, 257, 0, 0, 0, 109, 110, + 111, 0, 112, 1139, 113, 114, 115, 0, 0, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 1382, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 1144, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 0, 0, 142, 1380, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 1131, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 1143, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, - 0, 227, 228, 229, 230, 0, 1369, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, + 0, 227, 228, 229, 230, 0, 1381, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, - 1129, 108, 257, 0, 0, 1124, 109, 110, 111, 0, - 112, 1127, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, + 1141, 108, 257, 0, 0, 1136, 109, 110, 111, 0, + 112, 1139, 113, 114, 115, 0, 0, 116, 117, 0, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 1132, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 1123, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 1131, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 1130, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, - 1823, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 267, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 1144, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 1135, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 1143, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, + 228, 229, 230, 0, 1142, 231, 232, 233, 234, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, - 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, + 0, 0, 245, 0, 1835, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 267, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 557, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, - 1054, 100, 0, 0, 0, 0, 245, 0, 0, 0, - 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, - 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, - 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 269, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, @@ -3514,90 +3506,122 @@ var sqlAct = [...]int{ 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 969, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 269, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 561, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 1066, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 977, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 557, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 561, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 0, 0, 0, 0, 98, 99, 709, 100, + 243, 244, 0, 0, 0, 0, 98, 99, 717, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 267, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 569, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 269, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 557, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, @@ -3605,60 +3629,30 @@ var sqlAct = [...]int{ 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 562, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 557, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, - 433, 100, 0, 0, 0, 0, 245, 0, 0, 0, - 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, - 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, - 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 573, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 432, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 561, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, @@ -3666,29 +3660,91 @@ var sqlAct = [...]int{ 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 566, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 561, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 437, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 436, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, @@ -3696,60 +3752,30 @@ var sqlAct = [...]int{ 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 1427, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 1425, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 1439, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, @@ -3757,60 +3783,30 @@ var sqlAct = [...]int{ 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 1414, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, - 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, - 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, - 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, - 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 1084, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 1437, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, @@ -3818,90 +3814,122 @@ var sqlAct = [...]int{ 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 1426, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 1096, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, + 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, + 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, + 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, + 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, + 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, + 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, + 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, + 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 449, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 287, 198, 0, 453, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, - 0, 0, 0, 0, 245, 0, 953, 0, 0, 101, + 0, 0, 0, 0, 245, 0, 961, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 267, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 0, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 784, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 269, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 0, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, @@ -3909,60 +3937,184 @@ var sqlAct = [...]int{ 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 779, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 792, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, + 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, + 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, + 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, + 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, + 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, + 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, + 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, + 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, + 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, + 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, + 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 787, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 725, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 467, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 464, 294, 295, 0, 0, 225, 460, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 717, 0, 108, 257, 0, 0, 0, 109, 110, + 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 269, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, + 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 467, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, + 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, + 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 464, 294, 295, 0, 0, 225, 460, 296, 297, + 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, + 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, + 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, + 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, + 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, + 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, + 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, + 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, + 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, + 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 705, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, + 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, + 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, + 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, + 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, + 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, + 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, + 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, + 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, + 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, + 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, + 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, + 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 703, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 463, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 460, 290, 291, - 0, 0, 225, 456, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, @@ -3970,60 +4122,30 @@ var sqlAct = [...]int{ 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 267, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, - 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 463, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, - 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, - 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 460, 290, 291, 0, 0, 225, 456, 292, 293, - 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, - 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, - 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, - 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, - 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, - 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, - 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, - 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, - 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, - 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 697, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 700, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 151, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 156, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, + 195, 0, 196, 197, 287, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 207, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 293, 294, 295, 0, 0, + 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, @@ -4031,120 +4153,60 @@ var sqlAct = [...]int{ 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 695, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, - 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 181, 182, - 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, - 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, - 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, - 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, - 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, - 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, - 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, - 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, - 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, - 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, - 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 692, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 151, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 156, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 697, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, + 282, 0, 168, 0, 283, 169, 170, 171, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 179, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 283, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 207, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 289, 290, 291, 0, 0, 225, 226, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, + 196, 197, 287, 198, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, + 117, 0, 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 689, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, - 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 171, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 179, 180, 282, 181, 182, 0, 183, - 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 198, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, - 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 95, 0, 239, 0, - 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, - 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, - 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, - 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, - 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, - 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, - 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, - 0, 118, 119, 302, 120, 258, 121, 259, 260, 0, - 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, - 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, - 0, 0, 130, 131, 264, 0, 132, 0, 133, 0, - 0, 0, 0, 134, 265, 0, 266, 0, 135, 136, - 137, 138, 687, 268, 0, 0, 142, 0, 139, 0, - 0, 140, 269, 141, 270, 271, 272, 0, 273, 0, + 264, 265, 266, 0, 132, 0, 133, 0, 0, 0, + 0, 134, 267, 0, 268, 0, 135, 136, 137, 138, + 695, 270, 0, 0, 142, 0, 139, 0, 0, 140, + 271, 141, 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, 149, 148, - 0, 274, 0, 150, 0, 0, 151, 0, 0, 152, - 0, 153, 154, 155, 157, 275, 156, 0, 158, 159, - 161, 160, 0, 0, 0, 276, 162, 277, 163, 164, - 0, 165, 0, 0, 166, 0, 0, 167, 278, 0, - 168, 0, 279, 169, 170, 171, 172, 173, 0, 280, - 174, 281, 175, 0, 176, 177, 178, 179, 180, 282, + 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, + 0, 153, 154, 155, 157, 279, 156, 0, 158, 159, + 161, 160, 0, 0, 0, 280, 162, 281, 163, 164, + 0, 165, 0, 0, 166, 0, 0, 167, 282, 0, + 168, 0, 283, 169, 170, 171, 172, 173, 0, 284, + 174, 285, 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 283, 198, 0, 202, 203, 204, 205, 0, 284, 206, - 207, 208, 0, 209, 199, 200, 210, 0, 211, 285, - 286, 212, 0, 218, 213, 214, 201, 215, 217, 287, - 216, 288, 0, 219, 0, 220, 221, 222, 223, 224, - 0, 289, 290, 291, 0, 0, 225, 226, 292, 293, + 287, 198, 0, 202, 203, 204, 205, 0, 288, 206, + 207, 208, 0, 209, 199, 200, 210, 0, 211, 289, + 290, 212, 0, 218, 213, 214, 201, 215, 217, 291, + 216, 292, 0, 219, 0, 220, 221, 222, 223, 224, + 0, 293, 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, - 234, 0, 235, 0, 294, 236, 237, 238, 295, 296, + 234, 0, 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, @@ -4152,573 +4214,510 @@ var sqlAct = [...]int{ 105, 252, 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, - 0, 0, 0, 0, 0, 118, 119, 302, 120, 258, + 0, 0, 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, - 129, 262, 263, 0, 0, 0, 130, 131, 264, 0, - 132, 0, 133, 0, 0, 0, 0, 134, 265, 0, - 266, 0, 135, 136, 137, 138, 565, 268, 0, 0, - 142, 0, 139, 0, 0, 140, 269, 141, 270, 271, - 272, 0, 273, 0, 0, 143, 144, 0, 145, 146, - 147, 0, 149, 148, 0, 274, 0, 150, 0, 0, - 151, 0, 0, 152, 0, 153, 154, 155, 157, 275, - 156, 0, 158, 159, 161, 160, 0, 0, 0, 276, - 162, 277, 163, 164, 0, 165, 0, 0, 166, 0, - 0, 167, 278, 0, 168, 0, 279, 169, 170, 171, - 172, 173, 0, 280, 174, 281, 175, 0, 176, 177, - 178, 179, 180, 282, 181, 182, 0, 183, 184, 185, - 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 283, 198, 0, 202, 203, 204, - 205, 0, 284, 206, 207, 208, 0, 209, 199, 200, - 210, 0, 211, 285, 286, 212, 0, 218, 213, 214, - 201, 215, 217, 287, 216, 288, 0, 219, 0, 220, - 221, 222, 223, 224, 0, 289, 290, 291, 0, 0, - 225, 226, 292, 293, 0, 227, 228, 229, 230, 0, - 0, 231, 232, 233, 234, 0, 235, 0, 294, 236, - 237, 238, 295, 296, 95, 0, 239, 0, 0, 0, - 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, - 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, - 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, - 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, - 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, - 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, - 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, - 119, 302, 120, 258, 121, 259, 260, 0, 122, 0, - 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, - 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, - 130, 131, 264, 0, 132, 0, 133, 0, 0, 0, - 0, 134, 265, 0, 266, 0, 135, 136, 137, 138, - 267, 268, 0, 0, 142, 0, 139, 0, 0, 140, - 269, 141, 270, 271, 272, 0, 273, 0, 0, 143, - 144, 0, 145, 146, 147, 0, 149, 148, 0, 274, + 129, 262, 263, 0, 0, 0, 130, 131, 264, 265, + 266, 0, 132, 0, 133, 0, 0, 0, 0, 134, + 267, 0, 268, 0, 135, 136, 137, 138, 569, 270, + 0, 0, 142, 0, 139, 0, 0, 140, 271, 141, + 272, 273, 274, 275, 276, 0, 277, 0, 0, 143, + 144, 0, 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, - 154, 155, 157, 275, 156, 0, 158, 159, 161, 160, - 0, 0, 0, 276, 162, 277, 163, 164, 0, 165, - 0, 0, 166, 0, 0, 167, 278, 0, 168, 0, - 279, 169, 170, 171, 172, 173, 0, 280, 174, 281, - 175, 0, 176, 177, 178, 179, 180, 282, 546, 182, + 154, 155, 157, 279, 156, 0, 158, 159, 161, 160, + 0, 0, 0, 280, 162, 281, 163, 164, 0, 165, + 0, 0, 166, 0, 0, 167, 282, 0, 168, 0, + 283, 169, 170, 171, 172, 173, 0, 284, 174, 285, + 175, 0, 176, 177, 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 283, 198, - 0, 202, 203, 204, 205, 0, 284, 206, 207, 208, - 0, 209, 199, 200, 210, 0, 211, 285, 286, 212, - 0, 218, 213, 214, 201, 215, 217, 287, 216, 288, - 0, 219, 0, 220, 221, 222, 223, 224, 0, 289, - 290, 291, 0, 0, 225, 226, 292, 293, 0, 227, + 192, 193, 194, 0, 195, 0, 196, 197, 287, 198, + 0, 202, 203, 204, 205, 0, 288, 206, 207, 208, + 0, 209, 199, 200, 210, 0, 211, 289, 290, 212, + 0, 218, 213, 214, 201, 215, 217, 291, 216, 292, + 0, 219, 0, 220, 221, 222, 223, 224, 0, 293, + 294, 295, 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, - 235, 0, 294, 236, 237, 238, 295, 296, 95, 0, + 235, 0, 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, 251, 0, 105, 252, - 253, 106, 107, 0, 0, 254, 255, 256, 0, 454, + 253, 106, 107, 0, 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, 117, 0, 0, 0, - 0, 0, 0, 118, 119, 302, 120, 258, 121, 259, + 0, 0, 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, 127, 128, 129, 262, - 263, 0, 0, 0, 130, 131, 264, 0, 132, 0, - 133, 0, 0, 0, 0, 134, 265, 0, 266, 0, - 135, 136, 137, 138, 267, 268, 0, 0, 142, 0, - 139, 0, 0, 140, 269, 141, 270, 271, 272, 0, - 273, 0, 0, 143, 144, 0, 145, 146, 147, 0, - 149, 148, 0, 274, 0, 150, 0, 0, 452, 0, - 0, 152, 0, 153, 154, 155, 157, 275, 463, 0, - 158, 159, 161, 160, 0, 0, 0, 276, 162, 277, - 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, - 278, 0, 168, 0, 279, 169, 170, 171, 172, 173, - 0, 280, 174, 281, 175, 0, 176, 177, 178, 179, - 180, 282, 181, 182, 0, 183, 184, 185, 186, 187, - 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 455, 198, 0, 202, 203, 204, 205, 0, - 284, 206, 453, 208, 0, 209, 199, 200, 210, 0, - 211, 285, 286, 212, 0, 218, 213, 214, 201, 215, - 217, 287, 216, 288, 0, 219, 0, 220, 221, 222, - 223, 224, 0, 460, 290, 291, 0, 0, 225, 456, - 292, 293, 0, 227, 228, 229, 230, 0, 0, 231, - 232, 233, 234, 0, 235, 0, 294, 236, 237, 238, - 295, 296, 95, 0, 239, 0, 0, 0, 0, 240, - 241, 242, 243, 244, 0, 0, 0, 0, 98, 99, - 0, 100, 0, 0, 0, 0, 245, 0, 0, 0, - 0, 101, 102, 103, 246, 247, 248, 249, 104, 250, - 251, 0, 105, 252, 253, 106, 107, 0, 0, 254, - 255, 256, 0, 108, 257, 0, 0, 0, 109, 110, - 111, 0, 112, 0, 113, 114, 115, 0, 0, 116, - 117, 0, 0, 0, 0, 0, 0, 118, 119, 302, - 120, 258, 121, 259, 260, 0, 122, 0, 123, 0, - 0, 0, 124, 125, 0, 126, 0, 0, 0, 261, - 127, 128, 129, 262, 263, 0, 0, 0, 130, 131, - 264, 0, 132, 0, 133, 0, 0, 0, 0, 134, - 265, 0, 266, 0, 135, 136, 137, 138, 267, 268, - 0, 0, 142, 0, 139, 0, 0, 140, 269, 141, - 270, 271, 272, 0, 273, 0, 0, 143, 144, 0, - 145, 146, 147, 0, 149, 148, 0, 274, 0, 150, + 263, 0, 0, 0, 130, 131, 264, 265, 266, 0, + 132, 0, 133, 0, 0, 0, 0, 134, 267, 0, + 268, 0, 135, 136, 137, 138, 269, 270, 0, 0, + 142, 0, 139, 0, 0, 140, 271, 141, 272, 273, + 274, 275, 276, 0, 277, 0, 0, 143, 144, 0, + 145, 146, 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, 0, 152, 0, 153, 154, 155, - 157, 275, 156, 0, 158, 159, 161, 160, 0, 0, - 0, 276, 162, 277, 163, 164, 0, 165, 0, 0, - 166, 0, 0, 167, 278, 0, 168, 0, 279, 169, - 170, 0, 172, 173, 0, 280, 174, 281, 175, 0, - 176, 177, 178, 0, 180, 282, 181, 182, 0, 183, + 157, 279, 156, 0, 158, 159, 161, 160, 0, 0, + 0, 280, 162, 281, 163, 164, 0, 165, 0, 0, + 166, 0, 0, 167, 282, 0, 168, 0, 283, 169, + 170, 171, 172, 173, 0, 284, 174, 285, 175, 0, + 176, 177, 178, 179, 180, 286, 550, 182, 0, 183, 184, 185, 186, 187, 189, 190, 188, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 283, 0, 0, 202, - 203, 204, 205, 0, 284, 206, 207, 208, 0, 209, - 199, 200, 210, 0, 211, 285, 286, 212, 0, 218, - 213, 214, 201, 215, 217, 287, 216, 288, 0, 219, - 0, 220, 221, 222, 223, 224, 0, 289, 290, 291, - 0, 0, 225, 226, 292, 293, 0, 227, 228, 229, + 194, 0, 195, 0, 196, 197, 287, 198, 0, 202, + 203, 204, 205, 0, 288, 206, 207, 208, 0, 209, + 199, 200, 210, 0, 211, 289, 290, 212, 0, 218, + 213, 214, 201, 215, 217, 291, 216, 292, 0, 219, + 0, 220, 221, 222, 223, 224, 0, 293, 294, 295, + 0, 0, 225, 226, 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, 232, 233, 234, 0, 235, 0, - 294, 236, 237, 238, 295, 296, 0, 0, 239, 0, - 0, 0, 0, 240, 241, 242, 243, 244, 845, 846, - 0, 865, 866, 867, 875, 876, 877, 0, 0, 0, - 0, 0, 0, 0, 868, 0, 0, 0, 0, 0, - 0, 848, 0, 0, 879, 0, 845, 846, 0, 865, - 866, 867, 875, 876, 877, 0, 0, 0, 0, 0, - 0, 0, 868, 0, 0, 847, 0, 0, 0, 848, - 0, 862, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 845, 846, 0, 865, 866, 867, - 875, 876, 877, 847, 0, 0, 0, 0, 0, 862, - 868, 0, 0, 0, 0, 0, 0, 848, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 853, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 847, 0, 0, 0, 0, 0, 862, 0, 0, - 872, 880, 0, 0, 0, 0, 0, 0, 0, 853, - 0, 0, 0, 0, 0, 0, 878, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 872, 880, - 870, 0, 0, 0, 0, 0, 863, 0, 0, 0, - 0, 0, 0, 0, 878, 0, 0, 853, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 870, 0, - 0, 869, 0, 0, 863, 0, 872, 880, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 878, 0, 0, 0, 0, 0, 0, 869, - 0, 0, 0, 0, 0, 0, 870, 0, 0, 0, - 0, 0, 863, 0, 0, 0, 0, 0, 864, 0, + 298, 236, 237, 238, 299, 300, 95, 0, 239, 0, + 0, 0, 0, 240, 241, 242, 243, 244, 0, 0, + 0, 0, 98, 99, 0, 100, 0, 0, 0, 0, + 245, 0, 0, 0, 0, 101, 102, 103, 246, 247, + 248, 249, 104, 250, 251, 0, 105, 252, 253, 106, + 107, 0, 0, 254, 255, 256, 0, 458, 257, 0, + 0, 0, 109, 110, 111, 0, 112, 0, 113, 114, + 115, 0, 0, 116, 117, 0, 0, 0, 0, 0, + 0, 118, 119, 306, 120, 258, 121, 259, 260, 0, + 122, 0, 123, 0, 0, 0, 124, 125, 0, 126, + 0, 0, 0, 261, 127, 128, 129, 262, 263, 0, + 0, 0, 130, 131, 264, 265, 266, 0, 132, 0, + 133, 0, 0, 0, 0, 134, 267, 0, 268, 0, + 135, 136, 137, 138, 269, 270, 0, 0, 142, 0, + 139, 0, 0, 140, 271, 141, 272, 273, 274, 275, + 276, 0, 277, 0, 0, 143, 144, 0, 145, 146, + 147, 0, 149, 148, 0, 278, 0, 150, 0, 0, + 456, 0, 0, 152, 0, 153, 154, 155, 157, 279, + 467, 0, 158, 159, 161, 160, 0, 0, 0, 280, + 162, 281, 163, 164, 0, 165, 0, 0, 166, 0, + 0, 167, 282, 0, 168, 0, 283, 169, 170, 171, + 172, 173, 0, 284, 174, 285, 175, 0, 176, 177, + 178, 179, 180, 286, 181, 182, 0, 183, 184, 185, + 186, 187, 189, 190, 188, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 459, 198, 0, 202, 203, 204, + 205, 0, 288, 206, 457, 208, 0, 209, 199, 200, + 210, 0, 211, 289, 290, 212, 0, 218, 213, 214, + 201, 215, 217, 291, 216, 292, 0, 219, 0, 220, + 221, 222, 223, 224, 0, 464, 294, 295, 0, 0, + 225, 460, 296, 297, 0, 227, 228, 229, 230, 0, + 0, 231, 232, 233, 234, 0, 235, 0, 298, 236, + 237, 238, 299, 300, 95, 0, 239, 0, 0, 0, + 0, 240, 241, 242, 243, 244, 0, 0, 0, 0, + 98, 99, 0, 100, 0, 0, 0, 0, 245, 0, + 0, 0, 0, 101, 102, 103, 246, 247, 248, 249, + 104, 250, 251, 0, 105, 252, 253, 106, 107, 0, + 0, 254, 255, 256, 0, 108, 257, 0, 0, 0, + 109, 110, 111, 0, 112, 0, 113, 114, 115, 0, + 0, 116, 117, 0, 0, 0, 0, 0, 0, 118, + 119, 306, 120, 258, 121, 259, 260, 0, 122, 0, + 123, 0, 0, 0, 124, 125, 0, 126, 0, 0, + 0, 261, 127, 128, 129, 262, 263, 0, 0, 0, + 130, 131, 264, 265, 266, 0, 132, 0, 133, 0, + 0, 0, 0, 134, 267, 0, 268, 0, 135, 136, + 137, 138, 269, 270, 0, 0, 142, 0, 139, 0, + 0, 140, 271, 141, 272, 273, 274, 275, 276, 0, + 277, 0, 0, 143, 144, 0, 145, 146, 147, 0, + 149, 148, 0, 278, 0, 150, 0, 0, 151, 0, + 0, 152, 0, 153, 154, 155, 157, 279, 156, 0, + 158, 159, 161, 160, 0, 0, 0, 280, 162, 281, + 163, 164, 0, 165, 0, 0, 166, 0, 0, 167, + 282, 0, 168, 0, 283, 169, 170, 0, 172, 173, + 0, 284, 174, 285, 175, 0, 176, 177, 178, 0, + 180, 286, 181, 182, 0, 183, 184, 185, 186, 187, + 189, 190, 188, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 287, 0, 0, 202, 203, 204, 205, 0, + 288, 206, 207, 208, 0, 209, 199, 200, 210, 0, + 211, 289, 290, 212, 0, 218, 213, 214, 201, 215, + 217, 291, 216, 292, 0, 219, 0, 220, 221, 222, + 223, 224, 0, 293, 294, 295, 0, 0, 225, 226, + 296, 297, 0, 227, 228, 229, 230, 0, 0, 231, + 232, 233, 234, 0, 235, 0, 298, 236, 237, 238, + 299, 300, 0, 0, 239, 0, 0, 0, 0, 240, + 241, 242, 243, 244, 853, 854, 0, 873, 874, 875, + 883, 884, 885, 0, 0, 0, 0, 0, 0, 0, + 876, 0, 0, 0, 0, 0, 0, 856, 0, 0, + 887, 0, 853, 854, 0, 873, 874, 875, 883, 884, + 885, 0, 0, 0, 0, 0, 0, 0, 876, 0, + 0, 855, 0, 0, 0, 856, 0, 870, 887, 0, + 853, 854, 0, 873, 874, 875, 883, 884, 885, 0, + 0, 0, 0, 0, 0, 0, 876, 0, 0, 855, + 0, 0, 0, 856, 0, 870, 887, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 873, 0, 0, 0, 869, 0, 0, - 0, 0, 0, 0, 0, 0, 864, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 855, 0, 861, + 0, 0, 0, 870, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 880, 888, + 0, 0, 0, 0, 0, 0, 0, 861, 0, 0, + 0, 0, 0, 0, 0, 0, 886, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 880, 888, 0, 0, + 878, 0, 0, 0, 0, 861, 871, 0, 0, 0, + 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 880, 888, 0, 0, 878, 0, + 0, 877, 0, 0, 871, 0, 0, 0, 0, 0, + 0, 0, 886, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 878, 0, 0, 877, + 0, 0, 871, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 872, 0, + 0, 0, 0, 0, 0, 0, 0, 877, 0, 0, + 0, 0, 0, 881, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 872, 853, 854, 0, + 873, 874, 875, 883, 884, 885, 0, 0, 0, 0, + 0, 881, 0, 876, 0, 0, 0, 0, 0, 0, + 856, 0, 0, 887, 872, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 881, + 0, 0, 0, 0, 855, 0, 0, 0, 879, 0, + 870, 867, 868, 869, 882, 0, 866, 864, 865, 857, + 858, 859, 860, 862, 863, 0, 0, 0, 0, 2086, + 0, 0, 0, 0, 0, 0, 879, 0, 0, 867, + 868, 869, 882, 0, 866, 864, 865, 857, 858, 859, + 860, 862, 863, 0, 0, 0, 0, 2020, 0, 0, + 0, 0, 861, 0, 879, 0, 0, 867, 868, 869, + 882, 0, 866, 864, 865, 857, 858, 859, 860, 862, + 863, 880, 888, 0, 0, 2015, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 886, + 0, 0, 853, 854, 0, 873, 874, 875, 883, 884, + 885, 0, 0, 878, 0, 0, 0, 0, 876, 871, + 0, 0, 0, 0, 0, 856, 0, 0, 887, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 877, 0, 0, 0, 0, 855, + 0, 0, 0, 0, 0, 870, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 864, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 871, 873, - 0, 859, 860, 861, 874, 0, 858, 856, 857, 849, - 850, 851, 852, 854, 855, 0, 0, 0, 0, 0, - 0, 0, 1548, 0, 0, 0, 871, 0, 0, 859, - 860, 861, 874, 0, 858, 856, 857, 849, 850, 851, - 852, 854, 855, 0, 0, 0, 0, 0, 0, 0, - 1500, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 871, 0, 0, 859, 860, 861, - 874, 0, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 0, 0, 845, 846, 2099, 865, 866, 867, 875, - 876, 877, 0, 0, 0, 0, 0, 0, 0, 868, - 0, 0, 0, 0, 0, 0, 848, 0, 0, 879, - 0, 845, 846, 0, 865, 866, 867, 875, 876, 877, - 0, 0, 0, 0, 0, 0, 0, 868, 0, 0, - 847, 0, 0, 0, 848, 0, 862, 879, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 845, - 846, 0, 865, 866, 867, 875, 876, 877, 847, 0, - 0, 0, 0, 0, 862, 868, 0, 0, 0, 0, - 0, 0, 848, 0, 0, 879, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 853, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 847, 0, 0, 0, - 0, 0, 862, 0, 0, 872, 880, 0, 0, 0, - 0, 0, 0, 0, 853, 0, 0, 0, 0, 0, - 0, 878, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 872, 880, 870, 0, 0, 0, 0, - 0, 863, 0, 0, 0, 0, 0, 0, 0, 878, - 0, 0, 853, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 870, 0, 0, 869, 0, 0, 863, - 0, 872, 880, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 878, 0, 0, - 0, 0, 0, 0, 869, 0, 0, 0, 0, 0, - 0, 870, 0, 0, 0, 0, 0, 863, 0, 0, - 0, 0, 0, 864, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, - 0, 0, 869, 0, 0, 0, 0, 0, 0, 0, - 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 871, 873, 0, 859, 860, 861, 874, - 0, 858, 856, 857, 849, 850, 851, 852, 854, 855, - 0, 0, 0, 0, 2074, 0, 0, 0, 0, 0, - 0, 871, 0, 0, 859, 860, 861, 874, 0, 858, - 856, 857, 849, 850, 851, 852, 854, 855, 0, 0, - 1508, 1509, 2008, 1526, 1527, 1528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1874, 0, 0, 871, - 0, 0, 859, 860, 861, 874, 0, 858, 856, 857, - 849, 850, 851, 852, 854, 855, 0, 0, 845, 846, - 2003, 865, 866, 867, 875, 876, 877, 0, 0, 0, - 0, 0, 0, 1523, 868, 0, 0, 0, 0, 0, - 0, 848, 0, 0, 879, 0, 845, 846, 0, 865, - 866, 867, 875, 876, 877, 0, 0, 0, 0, 0, - 0, 0, 868, 0, 0, 847, 0, 0, 0, 848, - 0, 862, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1514, 845, 846, 0, 865, 866, 867, - 875, 876, 877, 847, 0, 0, 0, 0, 0, 862, - 868, 0, 0, 0, 0, 0, 0, 848, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 0, 1529, 0, - 0, 853, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 847, 0, 0, 0, 0, 0, 862, 1524, 0, - 872, 880, 0, 0, 0, 0, 0, 0, 0, 853, - 0, 0, 0, 0, 0, 0, 878, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 872, 880, - 870, 0, 0, 0, 0, 0, 863, 0, 0, 0, - 0, 0, 0, 0, 878, 0, 0, 853, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 870, 0, - 0, 869, 0, 0, 863, 0, 872, 880, 0, 0, - 1525, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 878, 0, 0, 0, 0, 0, 0, 869, - 0, 0, 0, 0, 0, 0, 870, 0, 0, 0, - 0, 0, 863, 0, 0, 0, 0, 0, 864, 0, + 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 881, 861, 853, 854, + 0, 873, 874, 875, 883, 884, 885, 0, 0, 0, + 0, 0, 0, 0, 876, 0, 880, 888, 0, 0, + 0, 856, 0, 0, 887, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 855, 0, 0, 878, 0, + 0, 870, 0, 0, 871, 0, 0, 0, 0, 0, + 0, 879, 0, 0, 867, 868, 869, 882, 0, 866, + 864, 865, 857, 858, 859, 860, 862, 863, 0, 877, + 0, 0, 2011, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 873, 0, 0, 0, 869, 0, 0, - 0, 0, 0, 0, 0, 0, 864, 0, 0, 0, + 0, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 873, 0, 1520, 1521, 1522, 0, 0, 1519, 1517, - 1518, 1510, 1511, 1512, 1513, 1515, 1516, 0, 0, 0, - 0, 0, 0, 0, 864, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 871, 873, - 0, 859, 860, 861, 874, 0, 858, 856, 857, 849, - 850, 851, 852, 854, 855, 0, 0, 0, 0, 1999, - 0, 0, 0, 0, 0, 0, 871, 0, 0, 859, - 860, 861, 874, 0, 858, 856, 857, 849, 850, 851, - 852, 854, 855, 0, 0, 1508, 1509, 1976, 1526, 1527, - 1528, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1687, 0, 0, 871, 0, 0, 859, 860, 861, - 874, 0, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 0, 0, 845, 846, 1907, 865, 866, 867, 875, - 876, 877, 0, 0, 0, 0, 0, 0, 1523, 868, - 0, 0, 0, 0, 0, 0, 848, 0, 0, 879, - 0, 845, 846, 0, 865, 866, 867, 875, 876, 877, - 0, 0, 0, 0, 0, 0, 0, 868, 0, 0, - 847, 0, 0, 0, 848, 0, 862, 879, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1514, 845, - 846, 0, 865, 866, 867, 875, 876, 877, 847, 0, - 0, 0, 0, 0, 862, 868, 0, 0, 0, 0, - 0, 0, 848, 0, 0, 879, 0, 0, 0, 0, - 0, 0, 0, 1529, 0, 0, 853, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 847, 0, 0, 0, - 0, 0, 862, 1524, 0, 872, 880, 0, 0, 0, - 0, 0, 0, 0, 853, 0, 0, 0, 0, 0, - 0, 878, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 872, 880, 870, 0, 0, 0, 0, - 0, 863, 0, 0, 0, 0, 0, 0, 0, 878, - 0, 0, 853, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 870, 0, 0, 869, 0, 0, 863, - 0, 872, 880, 0, 0, 1525, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 878, 0, 0, - 0, 0, 0, 0, 869, 0, 0, 0, 0, 0, - 0, 870, 0, 0, 0, 0, 0, 863, 0, 0, - 0, 0, 0, 864, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, - 0, 0, 869, 0, 0, 0, 0, 0, 0, 0, - 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 873, 0, 1520, 1521, - 1522, 0, 0, 1519, 1517, 1518, 1510, 1511, 1512, 1513, - 1515, 1516, 0, 0, 0, 0, 0, 0, 0, 864, + 0, 0, 880, 888, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 871, 873, 0, 859, 860, 861, 874, - 0, 858, 856, 857, 849, 850, 851, 852, 854, 855, - 0, 0, 0, 0, 1906, 0, 0, 0, 0, 0, - 0, 871, 0, 0, 859, 860, 861, 874, 0, 858, - 856, 857, 849, 850, 851, 852, 854, 855, 0, 0, - 1508, 1509, 1845, 1526, 1527, 1528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1686, 0, 0, 871, - 0, 0, 859, 860, 861, 874, 0, 858, 856, 857, - 849, 850, 851, 852, 854, 855, 0, 0, 845, 846, - 1798, 865, 866, 867, 875, 876, 877, 0, 0, 0, - 0, 0, 0, 1523, 868, 0, 0, 0, 0, 0, - 0, 848, 0, 0, 879, 0, 845, 846, 0, 865, - 866, 867, 875, 876, 877, 0, 0, 0, 0, 0, - 0, 0, 868, 0, 0, 847, 0, 0, 0, 848, - 0, 862, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1514, 845, 846, 0, 865, 866, 867, - 875, 876, 877, 847, 0, 0, 0, 0, 0, 862, - 868, 0, 0, 0, 0, 0, 0, 848, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 0, 1529, 0, - 0, 853, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 847, 0, 0, 0, 0, 0, 862, 1524, 0, - 872, 880, 0, 0, 0, 0, 0, 0, 0, 853, - 0, 0, 0, 0, 0, 0, 878, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 872, 880, - 870, 0, 0, 0, 0, 0, 863, 0, 0, 0, - 0, 0, 0, 0, 878, 0, 0, 853, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 870, 0, - 0, 869, 0, 0, 863, 0, 872, 880, 0, 0, - 1525, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 878, 0, 0, 0, 0, 0, 0, 869, - 0, 0, 0, 0, 0, 0, 870, 0, 0, 0, - 0, 0, 863, 0, 0, 0, 0, 0, 864, 0, + 886, 881, 0, 853, 854, 0, 873, 874, 875, 883, + 884, 885, 0, 0, 878, 0, 0, 0, 0, 876, + 871, 0, 0, 0, 0, 0, 856, 0, 0, 887, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 873, 0, 0, 0, 869, 0, 0, - 0, 0, 0, 0, 0, 0, 864, 0, 0, 0, + 0, 0, 0, 0, 0, 877, 0, 0, 0, 0, + 855, 0, 0, 0, 0, 0, 870, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 879, 0, 0, 867, + 868, 869, 882, 0, 866, 864, 865, 857, 858, 859, + 860, 862, 863, 0, 0, 0, 0, 1988, 0, 0, + 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 881, 861, 853, + 854, 0, 873, 874, 875, 883, 884, 885, 0, 0, + 0, 0, 0, 0, 0, 876, 0, 880, 888, 0, + 0, 0, 856, 0, 0, 887, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 855, 0, 0, 878, + 0, 0, 870, 0, 0, 871, 0, 0, 0, 0, + 0, 0, 879, 0, 0, 867, 868, 869, 882, 0, + 866, 864, 865, 857, 858, 859, 860, 862, 863, 0, + 877, 0, 0, 1919, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 873, 0, 1520, 1521, 1522, 0, 0, 1519, 1517, - 1518, 1510, 1511, 1512, 1513, 1515, 1516, 0, 0, 0, - 0, 0, 0, 0, 864, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 871, 873, - 0, 859, 860, 861, 874, 0, 858, 856, 857, 849, - 850, 851, 852, 854, 855, 0, 0, 0, 0, 1718, - 0, 0, 0, 0, 0, 0, 871, 0, 0, 859, - 860, 861, 874, 0, 858, 856, 857, 849, 850, 851, - 852, 854, 855, 0, 0, 0, 0, 1694, 0, 0, + 0, 0, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 871, 0, 0, 859, 860, 861, - 874, 0, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 0, 0, 845, 846, 1226, 865, 866, 867, 875, - 876, 877, 0, 0, 0, 0, 0, 0, 0, 868, - 0, 0, 0, 0, 0, 0, 848, 0, 0, 879, - 0, 845, 846, 0, 865, 866, 867, 875, 876, 877, - 0, 0, 0, 0, 0, 0, 0, 868, 0, 0, - 847, 0, 0, 0, 848, 0, 862, 879, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 845, - 846, 0, 865, 866, 867, 875, 876, 877, 847, 0, - 0, 0, 0, 0, 862, 868, 0, 0, 0, 0, - 0, 0, 848, 0, 0, 879, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 853, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 847, 0, 0, 0, - 0, 0, 862, 0, 0, 872, 880, 0, 0, 0, - 0, 0, 0, 0, 853, 2176, 0, 0, 0, 0, - 0, 878, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 872, 880, 870, 0, 0, 0, 0, - 0, 863, 0, 0, 0, 0, 0, 0, 0, 878, - 0, 0, 853, 0, 1540, 0, 0, 1539, 0, 0, - 0, 0, 0, 870, 0, 0, 869, 0, 0, 863, - 0, 872, 880, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 878, 0, 0, - 0, 0, 0, 0, 869, 0, 0, 0, 0, 0, - 0, 870, 0, 0, 0, 0, 0, 863, 0, 2175, - 0, 0, 0, 864, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, - 0, 0, 869, 0, 0, 0, 0, 0, 0, 0, - 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, + 0, 0, 0, 880, 888, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 864, + 0, 886, 881, 0, 853, 854, 0, 873, 874, 875, + 883, 884, 885, 0, 0, 878, 0, 0, 0, 0, + 876, 871, 0, 0, 0, 0, 0, 856, 0, 0, + 887, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 877, 0, 0, 0, + 0, 855, 0, 0, 0, 0, 0, 870, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 879, 0, 0, + 867, 868, 869, 882, 0, 866, 864, 865, 857, 858, + 859, 860, 862, 863, 0, 0, 0, 0, 1918, 0, + 0, 0, 0, 872, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 881, 861, + 853, 854, 0, 873, 874, 875, 883, 884, 885, 0, + 0, 0, 0, 0, 0, 0, 876, 0, 880, 888, + 0, 0, 0, 856, 0, 0, 887, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 886, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 855, 0, 0, + 878, 0, 0, 870, 0, 0, 871, 0, 0, 0, + 0, 0, 0, 879, 0, 0, 867, 868, 869, 882, + 0, 866, 864, 865, 857, 858, 859, 860, 862, 863, + 0, 877, 0, 0, 1857, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 871, 873, 0, 859, 860, 861, 874, - 0, 858, 856, 857, 849, 850, 851, 852, 854, 855, - 0, 0, 1470, 0, 0, 0, 0, 0, 0, 0, - 0, 871, 0, 0, 859, 860, 861, 874, 0, 858, - 856, 857, 849, 850, 851, 852, 854, 855, 0, 0, + 0, 0, 0, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 871, - 0, 0, 859, 860, 861, 874, 0, 858, 856, 857, - 849, 850, 851, 852, 854, 855, 845, 846, 0, 865, - 866, 867, 875, 876, 877, 0, 0, 0, 0, 0, - 0, 0, 868, 0, 0, 0, 0, 1390, 0, 848, - 0, 0, 879, 0, 0, 0, 0, 0, 1112, 0, - 0, 0, 0, 0, 845, 846, 0, 865, 866, 867, - 875, 876, 877, 847, 0, 0, 0, 0, 0, 862, - 868, 0, 0, 0, 1111, 0, 0, 848, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1391, 0, 0, - 0, 847, 0, 0, 0, 0, 0, 862, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 853, + 0, 0, 0, 0, 880, 888, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 872, 880, + 0, 0, 886, 881, 0, 853, 854, 0, 873, 874, + 875, 883, 884, 885, 0, 0, 878, 0, 0, 0, + 0, 876, 871, 0, 0, 0, 0, 0, 856, 0, + 0, 887, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 877, 0, 0, + 0, 0, 855, 0, 0, 0, 0, 0, 870, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 879, 0, + 0, 867, 868, 869, 882, 0, 866, 864, 865, 857, + 858, 859, 860, 862, 863, 0, 0, 0, 0, 1810, + 0, 0, 0, 0, 872, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 881, + 861, 853, 854, 0, 873, 874, 875, 883, 884, 885, + 0, 0, 0, 0, 0, 0, 0, 876, 0, 880, + 888, 0, 0, 0, 856, 0, 0, 887, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 855, 0, + 0, 878, 0, 0, 870, 0, 0, 871, 0, 0, + 0, 0, 0, 0, 879, 0, 0, 867, 868, 869, + 882, 0, 866, 864, 865, 857, 858, 859, 860, 862, + 863, 0, 877, 0, 0, 1730, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 878, 0, 0, 853, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 870, 0, - 0, 0, 0, 0, 863, 0, 872, 880, 35, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, - 63, 0, 878, 0, 0, 0, 0, 0, 0, 869, - 0, 0, 38, 0, 0, 0, 870, 0, 0, 0, - 0, 0, 863, 0, 0, 0, 65, 0, 0, 0, - 0, 0, 39, 0, 72, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 869, 0, 0, - 0, 0, 0, 52, 0, 0, 864, 0, 0, 0, - 47, 0, 0, 66, 0, 0, 0, 51, 0, 48, - 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, - 0, 49, 0, 0, 864, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, - 0, 0, 845, 846, 0, 865, 866, 867, 875, 876, - 877, 0, 0, 0, 0, 0, 0, 0, 868, 0, - 0, 0, 0, 0, 0, 848, 871, 0, 879, 859, - 860, 861, 874, 0, 858, 856, 857, 849, 850, 851, - 852, 854, 855, 0, 0, 0, 0, 0, 0, 847, - 0, 0, 0, 0, 0, 862, 0, 0, 0, 0, - 54, 0, 0, 0, 871, 50, 0, 859, 860, 861, - 874, 0, 858, 856, 857, 849, 850, 851, 852, 854, - 855, 0, 0, 68, 69, 37, 0, 55, 0, 56, - 0, 67, 0, 0, 0, 0, 57, 0, 0, 0, - 79, 0, 0, 0, 0, 853, 60, 0, 0, 62, - 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, - 0, 0, 0, 0, 872, 880, 0, 81, 0, 0, + 0, 0, 0, 0, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 878, 0, 0, 0, 70, 0, 0, 0, 0, 0, - 0, 0, 0, 71, 870, 0, 0, 0, 0, 0, - 863, 82, 0, 0, 0, 0, 0, 0, 0, 77, - 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, - 0, 0, 0, 0, 0, 869, 541, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 845, 846, 0, - 865, 866, 867, 875, 876, 877, 0, 0, 0, 0, - 0, 0, 0, 868, 0, 0, 0, 0, 0, 0, - 848, 0, 864, 879, 0, 845, 846, 0, 865, 866, - 867, 875, 876, 877, 0, 0, 0, 873, 0, 0, - 0, 868, 0, 0, 847, 0, 0, 0, 848, 0, - 862, 879, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 880, 888, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 847, 0, 0, 0, 0, 0, 862, 0, + 0, 0, 0, 886, 881, 0, 853, 854, 0, 873, + 874, 875, 883, 884, 885, 0, 0, 878, 0, 0, + 0, 0, 876, 871, 0, 0, 0, 0, 0, 856, + 0, 0, 887, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 877, 0, + 0, 0, 0, 855, 0, 0, 0, 0, 0, 870, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 879, + 0, 0, 867, 868, 869, 882, 0, 866, 864, 865, + 857, 858, 859, 860, 862, 863, 0, 0, 0, 0, + 1706, 0, 0, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 881, 861, 853, 854, 0, 873, 874, 875, 883, 884, + 885, 0, 0, 0, 0, 0, 0, 0, 876, 0, + 880, 888, 0, 0, 0, 856, 0, 0, 887, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 886, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 855, + 0, 0, 878, 0, 0, 870, 0, 0, 871, 0, + 0, 0, 0, 0, 0, 879, 0, 0, 867, 868, + 869, 882, 0, 866, 864, 865, 857, 858, 859, 860, + 862, 863, 0, 877, 0, 0, 1238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 853, 0, 871, 0, 0, 859, 860, 861, 874, 0, - 858, 856, 857, 849, 850, 851, 852, 854, 855, 872, - 880, 0, 0, 0, 0, 0, 0, 0, 853, 0, - 0, 0, 0, 1546, 0, 878, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 872, 880, 870, - 0, 0, 0, 0, 0, 863, 0, 0, 0, 0, - 0, 0, 0, 878, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 870, 0, 0, - 869, 0, 0, 863, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 861, 2188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 869, 0, + 0, 0, 0, 0, 0, 0, 880, 888, 0, 0, + 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 886, 881, 0, 853, 854, 0, + 873, 874, 875, 883, 884, 885, 0, 0, 878, 0, + 0, 0, 0, 876, 871, 0, 0, 0, 0, 0, + 856, 0, 0, 887, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 877, + 0, 0, 0, 0, 855, 0, 0, 0, 0, 0, + 870, 0, 0, 0, 2187, 0, 0, 0, 0, 0, + 879, 0, 0, 867, 868, 869, 882, 0, 866, 864, + 865, 857, 858, 859, 860, 862, 863, 0, 0, 1482, + 0, 0, 0, 0, 0, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 864, 0, 0, - 845, 846, 0, 865, 866, 867, 875, 876, 877, 0, - 0, 0, 873, 0, 0, 0, 868, 0, 0, 0, - 1541, 0, 0, 848, 0, 864, 879, 0, 0, 0, - 0, 0, 0, 0, 0, 1698, 0, 0, 0, 0, - 873, 0, 0, 0, 0, 0, 0, 847, 0, 0, - 0, 0, 0, 862, 0, 0, 0, 0, 0, 0, + 0, 881, 861, 0, 1552, 0, 0, 1551, 853, 854, + 0, 873, 874, 875, 883, 884, 885, 0, 0, 0, + 0, 880, 888, 0, 876, 0, 0, 0, 0, 1402, + 0, 856, 0, 0, 887, 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 871, 0, 0, - 859, 860, 861, 874, 0, 858, 856, 857, 849, 850, - 851, 852, 854, 855, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 853, 0, 871, 0, 0, 859, 860, - 861, 874, 0, 858, 856, 857, 849, 850, 851, 852, - 854, 855, 872, 880, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 878, 0, + 0, 0, 0, 878, 0, 855, 0, 0, 0, 871, + 0, 870, 0, 0, 0, 0, 879, 0, 0, 867, + 868, 869, 882, 0, 866, 864, 865, 857, 858, 859, + 860, 862, 863, 0, 877, 0, 0, 0, 0, 1403, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 870, 0, 0, 0, 0, 0, 863, 845, - 846, 0, 865, 866, 867, 875, 876, 877, 0, 0, - 0, 0, 0, 0, 0, 868, 0, 0, 0, 0, - 0, 0, 848, 869, 0, 879, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 847, 0, 0, 0, - 0, 0, 862, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 864, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, + 1124, 872, 880, 888, 0, 0, 853, 854, 0, 873, + 874, 875, 883, 884, 885, 0, 881, 0, 0, 0, + 886, 0, 876, 0, 0, 0, 1123, 0, 0, 856, + 0, 0, 887, 0, 878, 0, 0, 0, 0, 0, + 871, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 855, 0, 0, 0, 0, 0, 870, + 0, 0, 0, 0, 0, 877, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 853, 0, 0, 0, 0, 0, 0, 0, + 0, 879, 0, 0, 867, 868, 869, 882, 0, 866, + 864, 865, 857, 858, 859, 860, 862, 863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 872, 880, 845, 846, 0, 865, 866, 867, 875, - 876, 877, 0, 0, 0, 0, 0, 878, 0, 868, - 0, 0, 0, 1499, 0, 0, 848, 0, 0, 879, - 871, 870, 0, 859, 860, 861, 874, 863, 858, 856, - 857, 849, 850, 851, 852, 854, 855, 0, 0, 0, - 847, 0, 0, 0, 0, 0, 862, 0, 0, 0, - 0, 0, 869, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1506, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 845, 846, 0, 865, 866, - 867, 875, 876, 877, 0, 0, 0, 0, 0, 0, - 0, 868, 0, 0, 0, 0, 853, 0, 848, 864, - 0, 879, 0, 845, 846, 0, 865, 866, 867, 875, - 876, 877, 0, 0, 873, 872, 880, 0, 0, 0, - 0, 0, 847, 0, 0, 0, 848, 0, 862, 879, - 0, 878, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 870, 0, 0, 0, 0, - 847, 863, 0, 0, 0, 0, 862, 0, 0, 0, + 0, 861, 872, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 881, 0, 0, + 880, 888, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 869, 0, 853, 871, - 0, 0, 859, 860, 861, 874, 0, 858, 856, 857, - 849, 850, 851, 852, 854, 855, 0, 872, 880, 0, - 0, 0, 0, 0, 0, 0, 853, 0, 0, 0, - 0, 0, 0, 878, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 864, 0, 872, 880, 870, 0, 0, - 0, 0, 0, 863, 0, 0, 0, 0, 873, 0, - 0, 878, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 870, 0, 0, 869, 0, - 0, 863, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 878, 0, 0, 0, 0, 0, 871, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 879, 877, 0, 867, 868, 869, 882, 35, + 866, 864, 865, 857, 858, 859, 860, 862, 863, 0, + 36, 63, 0, 853, 854, 0, 873, 874, 875, 883, + 884, 885, 0, 38, 0, 0, 0, 0, 0, 876, + 0, 0, 0, 0, 0, 0, 856, 65, 0, 887, + 872, 0, 0, 39, 0, 72, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 881, 0, 0, 0, 0, + 855, 0, 0, 0, 52, 0, 870, 0, 0, 0, + 0, 47, 0, 0, 66, 0, 0, 0, 51, 0, + 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 53, 0, + 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, + 0, 0, 1520, 1521, 0, 1538, 1539, 1540, 861, 0, + 879, 0, 0, 867, 868, 869, 882, 0, 866, 864, + 865, 857, 858, 859, 860, 862, 863, 880, 888, 0, + 0, 853, 854, 0, 873, 874, 875, 883, 884, 885, + 0, 0, 0, 0, 0, 886, 0, 876, 0, 0, + 0, 0, 0, 0, 856, 1535, 0, 887, 0, 878, + 0, 0, 0, 0, 0, 871, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 54, 0, 0, 855, 0, + 50, 0, 0, 0, 870, 0, 0, 0, 0, 0, + 877, 545, 0, 0, 0, 0, 0, 0, 68, 69, + 37, 0, 55, 0, 56, 0, 67, 1526, 0, 0, + 0, 57, 0, 0, 0, 79, 0, 0, 0, 0, + 0, 60, 0, 0, 62, 0, 0, 1542, 0, 0, + 0, 0, 0, 64, 0, 0, 861, 872, 0, 0, + 0, 0, 81, 0, 1541, 0, 1520, 1521, 0, 1538, + 1539, 1540, 881, 0, 0, 880, 888, 0, 0, 70, + 0, 0, 1698, 0, 1536, 0, 0, 0, 71, 0, + 0, 0, 0, 886, 0, 0, 82, 0, 0, 0, + 0, 0, 0, 0, 77, 0, 0, 878, 0, 0, + 0, 78, 0, 871, 0, 0, 0, 0, 0, 1535, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 871, 0, 864, 859, 860, 861, 874, - 0, 858, 856, 857, 849, 850, 851, 852, 854, 855, - 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 845, 846, 864, 865, 866, 867, 875, 876, 877, - 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, - 0, 0, 0, 0, 848, 0, 0, 879, 0, 0, + 76, 0, 0, 0, 0, 0, 0, 879, 877, 0, + 867, 868, 869, 882, 0, 866, 864, 865, 857, 858, + 859, 860, 862, 863, 0, 0, 1537, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 847, 0, - 0, 0, 0, 0, 862, 871, 0, 0, 859, 860, - 861, 874, 0, 858, 856, 857, 849, 850, 851, 852, - 854, 855, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 871, 0, 0, 859, 860, 861, 874, - 0, 858, 856, 857, 849, 850, 851, 852, 854, 855, - 0, 0, 0, 0, 853, 0, 0, 0, 0, 0, + 0, 1526, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 853, 854, 872, 873, 874, 875, 883, + 884, 885, 0, 0, 0, 0, 0, 0, 0, 876, + 881, 0, 0, 0, 0, 0, 856, 0, 1541, 887, + 0, 853, 854, 0, 873, 874, 875, 883, 884, 885, + 0, 0, 0, 1710, 0, 0, 0, 876, 1536, 0, + 855, 1553, 0, 0, 856, 0, 870, 887, 0, 1532, + 1533, 1534, 0, 0, 1531, 1529, 1530, 1522, 1523, 1524, + 1525, 1527, 1528, 0, 0, 0, 0, 0, 855, 0, + 0, 0, 0, 0, 870, 879, 0, 0, 867, 868, + 869, 882, 0, 866, 864, 865, 857, 858, 859, 860, + 862, 863, 0, 0, 0, 0, 0, 0, 861, 0, + 0, 0, 0, 1558, 0, 0, 0, 0, 0, 0, + 1537, 0, 0, 0, 0, 0, 0, 880, 888, 0, + 0, 0, 0, 0, 0, 0, 861, 0, 0, 0, + 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 880, 888, 0, 0, 878, + 0, 0, 0, 0, 0, 871, 0, 0, 0, 0, + 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 878, 0, 0, + 877, 0, 0, 871, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1532, 1533, 1534, 0, 0, 1531, 1529, + 1530, 1522, 1523, 1524, 1525, 1527, 1528, 0, 877, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 872, 880, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 872, 853, 854, + 0, 873, 874, 875, 883, 884, 885, 0, 0, 0, + 0, 0, 881, 0, 876, 0, 0, 0, 0, 0, + 0, 856, 0, 0, 887, 872, 853, 854, 0, 873, + 874, 875, 883, 884, 885, 0, 0, 0, 0, 0, + 881, 0, 876, 0, 0, 855, 1511, 0, 0, 856, + 0, 870, 887, 0, 1520, 1521, 0, 1538, 1539, 1540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 855, 0, 0, 0, 879, 0, 870, + 867, 868, 869, 882, 0, 866, 864, 865, 857, 858, + 859, 860, 862, 863, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 861, 0, 879, 0, 1535, 867, 868, + 869, 882, 0, 866, 864, 865, 857, 858, 859, 860, + 862, 863, 880, 888, 0, 0, 0, 0, 0, 0, + 0, 861, 0, 0, 0, 0, 0, 0, 0, 0, + 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 880, 888, 0, 0, 878, 0, 0, 0, 0, 1526, + 871, 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 870, 0, 0, 0, 0, 0, 863, - 996, 988, 1013, 980, 1004, 1003, 0, 0, 982, 981, - 0, 0, 0, 0, 1015, 1014, 0, 0, 0, 0, + 0, 0, 878, 0, 0, 877, 0, 0, 871, 0, + 0, 0, 0, 0, 0, 0, 1541, 0, 1518, 1520, + 1521, 0, 1538, 1539, 1540, 0, 0, 0, 0, 0, + 0, 0, 0, 877, 0, 0, 1536, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 872, 853, 854, 0, 873, 874, 875, 883, + 884, 885, 0, 0, 0, 0, 0, 881, 0, 876, + 0, 0, 1535, 0, 0, 0, 856, 0, 0, 887, + 872, 853, 854, 0, 873, 874, 875, 883, 884, 885, + 0, 0, 0, 0, 0, 881, 0, 876, 0, 0, + 855, 0, 0, 0, 856, 0, 870, 887, 1537, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1009, 0, 1001, 1000, - 0, 0, 0, 0, 0, 0, 0, 999, 0, 0, - 0, 0, 0, 0, 0, 996, 988, 1013, 980, 1004, - 1003, 864, 0, 982, 981, 998, 0, 0, 0, 1015, - 1014, 0, 0, 0, 0, 0, 873, 0, 0, 0, + 0, 0, 0, 0, 1526, 0, 0, 0, 855, 0, + 0, 0, 879, 0, 870, 867, 868, 869, 882, 0, + 866, 864, 865, 857, 858, 859, 860, 862, 863, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 861, 0, + 879, 0, 0, 867, 868, 869, 882, 0, 866, 864, + 865, 857, 858, 859, 860, 862, 863, 880, 888, 0, + 0, 1536, 0, 0, 0, 0, 861, 0, 0, 0, + 0, 1532, 1533, 1534, 0, 886, 1531, 1529, 1530, 1522, + 1523, 1524, 1525, 1527, 1528, 880, 888, 0, 0, 878, + 0, 0, 0, 0, 0, 871, 0, 0, 0, 0, + 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 878, 0, 0, + 877, 0, 0, 871, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1537, 0, 0, 0, 0, 0, 0, + 853, 854, 0, 873, 874, 875, 883, 884, 885, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 991, 990, 992, 993, 994, 0, 1012, - 0, 1009, 0, 1001, 1000, 0, 0, 0, 0, 0, - 0, 0, 999, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 984, 0, 0, 0, - 998, 0, 0, 0, 0, 0, 0, 0, 1002, 0, - 0, 871, 989, 0, 859, 860, 861, 874, 0, 858, - 856, 857, 849, 850, 851, 852, 854, 855, 991, 990, - 992, 993, 994, 0, 1012, 0, 0, 0, 0, 0, - 997, 0, 0, 0, 1161, 1159, 1160, 1163, 1162, 0, + 0, 0, 0, 856, 0, 0, 887, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 984, 0, 0, 0, 0, 0, 0, 0, 985, - 0, 465, 0, 1002, 0, 0, 0, 989, 0, 0, - 995, 986, 0, 0, 0, 0, 0, 0, 0, 470, - 1017, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 983, 471, 0, 1010, 1011, 997, 0, 0, 0, 0, + 0, 0, 881, 0, 0, 0, 0, 855, 0, 0, + 0, 0, 0, 870, 0, 872, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 472, 0, 0, 987, 0, 473, 0, 0, - 1016, 0, 478, 479, 985, 0, 489, 0, 0, 0, - 0, 0, 0, 0, 0, 995, 986, 0, 468, 474, - 0, 0, 0, 0, 0, 1017, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 983, 0, 0, 1010, 1011, - 492, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 475, 0, - 987, 0, 0, 0, 0, 1016, 0, 0, 0, 0, - 0, 0, 476, 477, 0, 0, 0, 0, 0, 0, + 881, 0, 0, 0, 0, 0, 1532, 1533, 1534, 0, + 0, 1531, 1529, 1530, 1522, 1523, 1524, 1525, 1527, 1528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 480, 484, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 482, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 466, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 861, 0, 879, 0, 0, + 867, 868, 869, 882, 0, 866, 864, 865, 857, 858, + 859, 860, 862, 863, 880, 888, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 879, 0, 0, 867, 868, + 869, 882, 886, 866, 864, 865, 857, 858, 859, 860, + 862, 863, 0, 0, 0, 0, 878, 0, 0, 0, + 0, 0, 871, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1006, 996, 1025, 988, 1016, 1015, 0, 0, 990, + 989, 0, 0, 0, 0, 1027, 1026, 0, 1006, 996, + 1025, 988, 1016, 1015, 0, 0, 990, 989, 0, 0, + 0, 0, 1027, 1026, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1021, 0, 1013, + 1012, 0, 0, 0, 872, 0, 0, 0, 1011, 0, + 0, 0, 0, 0, 1021, 0, 1013, 1012, 0, 881, + 0, 0, 0, 0, 0, 1011, 1010, 1008, 1009, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1010, 1008, 1009, 0, 0, 0, 0, + 469, 0, 0, 0, 0, 0, 999, 998, 1000, 1001, + 1002, 1003, 1004, 0, 1024, 0, 0, 0, 474, 0, + 0, 0, 0, 999, 998, 1000, 1001, 1002, 1003, 1004, + 475, 1024, 0, 0, 879, 0, 0, 867, 868, 869, + 882, 992, 866, 864, 865, 857, 858, 859, 860, 862, + 863, 476, 0, 1014, 0, 0, 477, 997, 992, 0, + 0, 482, 483, 0, 0, 493, 0, 0, 0, 0, + 1014, 0, 0, 0, 997, 0, 0, 472, 478, 0, + 0, 0, 0, 0, 0, 1007, 0, 0, 0, 1173, + 1171, 1172, 1175, 1174, 0, 0, 0, 0, 0, 496, + 0, 0, 1007, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 993, 0, 0, 0, 0, 479, + 0, 0, 0, 0, 0, 1005, 994, 0, 0, 0, + 0, 993, 0, 480, 481, 1029, 0, 0, 0, 0, + 0, 0, 1005, 994, 0, 991, 0, 0, 1022, 1023, + 0, 0, 1029, 484, 488, 0, 0, 0, 0, 0, + 0, 0, 991, 0, 486, 1022, 1023, 0, 0, 0, + 995, 0, 0, 0, 470, 1028, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 995, 0, 0, + 0, 0, 1028, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 481, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 485, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 483, 485, 467, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 487, 489, + 471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 490, 0, 495, 0, 0, 0, 491, + 0, 0, 0, 0, 473, 492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 486, 0, 491, 0, 0, 0, 487, 0, 0, 0, - 0, 469, 488, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 490, + 494, } var sqlPact = [...]int{ - 29925, -1000, 39, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 29926, -1000, 23, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 722, 17066, 17066, 998, 21322, - -1000, -1000, -1000, -1000, -1000, -1000, 679, 707, 687, 5197, - 21322, 21322, 21018, 914, 1147, 1145, 914, 22842, -1000, -1000, - 26794, -1000, 31497, 502, 509, 502, 502, 499, 22842, 983, - 612, 13988, 662, 145, -1000, 725, 15, 26490, 21322, 1457, - 37, 19194, 253, 29925, 20714, 26186, 21322, 20410, 577, 35, - 17674, 21322, -1000, 43, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, 730, 17366, 17366, 903, 21678, + -1000, -1000, -1000, -1000, -1000, -1000, 751, 715, 1024, 5349, + 21678, 21678, 21370, 1098, 1152, 1150, 1098, 23218, -1000, -1000, + 27222, -1000, 31276, 517, 519, 517, 517, 514, 23218, 1108, + 645, 14248, 690, 137, -1000, 777, -22, 26914, 21678, 1446, + 0, 19522, 261, 29926, 21062, 26606, 21678, 20754, 604, -9, + 17982, 21678, -1000, 25, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, @@ -4738,12 +4737,11 @@ var sqlPact = [...]int{ -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1294, 10793, 10793, - 372, 43, -1000, 1293, 1152, 1151, 19194, 25882, 25578, 25274, - 24970, 24666, -1000, 12722, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 779, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 1283, 11013, 11013, 380, 25, -1000, 1281, 1160, 1159, + 19522, 26298, 25990, 25682, 25374, 25066, -1000, 12966, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 782, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, @@ -4751,216 +4749,218 @@ var sqlPact = [...]int{ -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 316, - 315, -1000, 20106, -1000, 1013, -1000, 36, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 10793, 10793, 1009, -1000, 21322, - -1000, -1000, 24362, 24058, 696, 312, 1048, -1000, -1000, 580, - 409, -1000, -1000, 13672, 56, -1000, -1000, -1000, -1000, 1305, - 1466, 16762, 861, 1284, -1000, 1008, 1282, 1280, 1279, 1275, - 1274, -1000, 776, 638, 512, -1000, 1273, 407, 824, 490, - -1000, 1269, 1268, 1048, -1000, 1048, -1000, -1000, -1000, 576, - 22842, -1000, -1000, -1000, -1000, -1000, 19194, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1707, -1000, -1000, - -1000, -1000, 1715, -1000, -1000, -1000, -1000, 23754, 21322, 21322, - 1166, 23450, -1000, 725, -1000, -1000, -1000, 1095, 1456, 1456, - 1456, 1531, 162, 152, 145, 33, 21322, -1000, 311, 33, - 9147, 9147, -1000, -1000, 253, -1000, 278, 16142, -1000, 7502, - -1000, 883, 1363, 464, 784, 1362, -163, 816, 813, 1361, - 16762, 17674, 35, -7, -1000, -1000, -1000, 4881, 16762, 30865, - -1000, 10793, 10793, 10793, 10793, 10793, 903, 354, -1000, 308, - 306, 6172, -1000, -1000, 1714, -1000, -1000, -1000, 160, -1000, - -1000, 10793, 43, -1000, -1000, -1000, -1000, 297, 1724, -1000, - 481, -1000, -1000, -1000, 414, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 1303, 295, 292, -1000, -1000, -1000, - -1000, 291, 290, 289, 285, 284, 282, 280, 276, 275, - 273, 272, 270, 269, 257, 256, 853, -1000, 451, -1000, - -1000, 451, 451, -1000, 245, 245, 247, -1000, -1000, -1000, - -1000, 245, -1000, -1000, -1000, 401, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 255, 30865, 655, 15217, 43, -1000, -1000, - -1000, 19194, 21322, 21322, 721, 23146, -1000, 1360, 127, 1359, - -1000, 125, 1358, -1000, 125, 1356, -7, 1353, 32, -1000, - -1000, 253, 19802, 21322, 1601, 31318, -1000, 10793, -1000, -1000, - 17066, 1127, 30865, 30865, 17066, -1000, -1000, 1593, -1000, 21322, - 10793, 34, -1000, -1000, -1000, -1000, 1110, 1117, 548, 13356, - 13040, 1412, 1099, -1000, -1000, -1000, 53, 5197, 149, 685, - -1000, -1000, -1000, 19498, -1000, -1000, 21322, 1300, 17066, 21322, - 21322, 21322, 21322, 21322, -1000, -1000, -1000, 511, 1299, 21322, - -1000, 1107, -1000, -1000, 21322, 21322, 752, 610, -1000, 34, - -1000, 22842, -1000, 131, -1000, -1000, -1000, -1000, 252, 1081, - 423, 154, 22538, 423, 1079, -1000, 1095, -1000, 1021, 1161, - 9806, 1176, 10793, 145, -1000, -1000, 145, 145, 10793, -1000, - -1000, 21322, 33, 1588, 21322, 153, -1000, 29814, -1000, 153, - -1000, -1000, -1000, 21322, 31, -1000, 30865, -1000, -18, 786, - -1000, 18586, 1464, 1446, 1473, 19194, 1553, 15, 1264, 1549, - 15, 1261, 574, 21322, 21322, 572, 571, 19194, 379, -1000, - 21322, -1000, -1000, -19, -1000, 31253, 31318, 5197, 597, 10793, - 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, - 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, 10793, - 10793, 1020, 10793, 570, 10793, 10793, 10793, 10793, 936, 892, - 237, 976, -1000, 1684, 1684, 1684, 30893, 30893, 202, 354, - -1000, 10793, -1000, 9477, 152, 29054, 17, -1000, -1000, -1000, - 7160, 437, 30865, 43, 5842, -1000, 1712, 673, 1312, 1205, - 251, 151, 150, 10793, 10793, 11122, 11122, 10793, 11451, 10793, - 10793, 6501, 10793, 10793, 10793, 10793, 10793, 10793, -1000, 250, - -1000, -1000, -1000, -1000, 1711, -1000, -1000, 1710, -1000, 596, - 585, 1704, -1000, 1257, 30, -1000, -1000, 433, 87, 1586, - 87, 15526, -1000, 21322, 21322, -1000, 21322, -1000, -1000, 21322, - -1000, 21322, 21322, -1000, 21322, 21322, 149, 17978, 904, 1345, - 739, 149, 22, -1000, 1604, -1000, -1000, -1000, -1000, 86, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 247, 853, - 245, 245, 245, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 401, -1000, -1000, 451, 451, 451, -1000, -1000, 13, 30865, - 567, -1000, 1256, 492, -1000, 411, -2, 1048, 770, -1000, - -1000, -1000, -1000, -1000, -1000, 2, -1000, -1000, 2, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1723, 5197, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 21322, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 149, -1000, -1000, -1000, -1000, - 21322, 21322, 21322, -1000, -1000, 19194, 18282, 1585, 1344, 863, - -1000, 1576, 21322, 1003, 1077, -1000, 607, 1343, -1000, -1000, - -1000, -1000, 30865, -1000, 376, -1000, -1000, 30865, 856, 1155, - -1000, 1155, -6, -1000, 29776, -1000, 244, -17, 433, 9147, - 14909, 5197, -1000, 433, 146, 7502, -1000, 904, 21322, 21322, - 21322, -1000, -1000, 1070, 22234, 1061, 31318, 21322, -1000, 243, - 242, 1137, 1136, 21322, 21322, 21930, 21626, 21322, 796, 15, - -1000, 241, 15, -1000, 240, 21322, 785, -1000, 21322, 21322, - 781, 1187, 1037, -1000, 427, 16762, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 405, 399, 399, 617, - 617, 617, 617, 1548, 1002, 228, 2948, 3685, 3685, 3685, - 2314, 307, 307, 3685, 3685, 3685, 30893, 334, 271, 10793, - 10793, 564, 891, 237, 271, 10793, 271, 271, 271, 271, - -1000, 1133, -1000, -1000, -1000, -1000, 1252, 236, 11451, 11451, - -1000, -1000, -1000, 6172, 11780, -1000, -1000, -1000, -1000, 235, - 10793, -1000, 29383, -185, -21, -1000, -1000, 10793, -103, -116, - -1000, -1000, 659, -1000, 10793, -1000, 21, 10793, 10793, 10793, - 140, 138, -1000, 558, -1000, 550, 549, 547, -1000, 233, - 916, 229, 227, 10793, -1000, -1000, 30783, 27436, 137, 1250, - -150, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 136, 135, - 30659, -150, 133, 220, -1000, 11451, 11451, 11451, 6172, 226, - 124, 29449, -150, 30500, 8818, 8818, 8818, 121, 30295, 10793, - -150, 27408, 3815, 3565, -22, -28, -39, 1702, -45, 120, - 402, 400, 116, 653, 1247, 21322, 755, 10793, 896, -1000, - 14601, 457, 21322, 755, 99, -1000, -1000, -1000, 389, 21322, - -1000, -1000, -1000, 127, -1000, 125, 125, -7, -1000, -1000, - 19194, -1000, -1000, 31318, 352, 347, -1000, 1698, -1000, 10793, - 21322, 21322, 1142, -1000, -1000, -1000, 713, -1000, 841, -1000, - 13988, -1000, -47, -1000, -1000, -1000, -1000, 379, -1000, 108, - -46, -13, 31318, -1000, -1000, -1000, -1000, -1000, 21322, 338, - 21322, 15, 21322, -1000, 1722, 15, 21322, 1342, 1369, 371, - 21322, 856, -1000, 10793, 1696, -1000, -1000, -1000, 10793, -1000, - -1000, -1000, 149, -1000, 1203, -1000, -38, 1143, 174, -177, - 119, 397, -1000, 14293, -1000, 1203, -1000, -1000, -1000, -1000, - 546, 545, 1338, -1000, 1059, -1000, 465, -1000, 769, 10793, - 12414, 217, 201, 872, -1000, 1336, 1017, 1335, 1017, -1000, - -18, 765, -1000, 10793, -1000, 10793, -1000, 538, -1000, -1000, - 534, 427, 1246, 625, -1000, 963, -1000, 10793, 271, 271, - 10793, 11451, 11451, -1000, 271, -1000, -1000, -1000, -1000, -1000, - 1237, 200, 10793, 31318, 28950, 28555, -51, -1000, 8489, -29, - -1000, 10793, -1000, 29016, -1000, -1000, 335, 1367, -1000, 10793, - 30267, 107, 8160, -1000, 30062, -9, -9, -1000, 1721, 1094, - 927, 804, 720, 1680, -1000, 15834, 434, 950, 28988, 31253, - 31318, -1000, 10793, -1000, -1000, 1235, 10793, -1000, 31253, 31318, - 11451, 11451, 11451, 11451, 11451, 11451, 11451, 11451, 11451, 11451, - 11451, 11451, 11451, 11451, 11451, 11451, 11451, 11451, 11451, 1124, - 11451, 1641, 1641, 1641, -43, 7831, -1000, 1239, 1235, 10793, - 10793, 31318, 104, 103, 101, -1000, 10793, -150, 10793, 10793, - 10793, -1000, -1000, -1000, 100, -1000, 1677, -1000, -1000, -1000, - -1000, -1000, 650, -1000, -1000, 6830, 30865, -1000, 755, 1481, - -55, -1000, -1000, -1000, 433, 15526, 14909, 7502, -64, -1000, - -1000, -1000, 904, -1000, 563, 1668, 97, 30865, -47, -47, - -1000, -1000, -1000, -1000, -1000, 21322, -1000, 1168, -1000, 18282, - 199, 21322, 198, -1000, 196, -1000, -1000, 195, 21322, 1119, - 371, 17370, -1000, 423, 974, 28659, -1000, 96, 1198, 1521, - -1000, 14909, 1141, 1139, 14909, 1265, 930, 930, 930, -1000, - 194, 342, 397, 4235, 10793, 18890, 929, 71, 93, 1143, - 1198, 21322, 21322, 21322, 1334, -1000, 2208, -1000, 28621, -65, - -1000, 329, 1500, 10793, -1000, -1000, 193, 12414, 21322, -1000, - 1159, 1150, 484, 21322, -1000, 21322, -1000, 21322, 21322, 21322, - -71, -76, 21322, 21322, -1000, 16762, 581, 191, 1645, 271, - 28160, 3080, 10793, 31318, 31121, -77, 10793, 10793, -1000, -78, - -1000, 10793, 341, 30865, -1000, -1000, -1000, 30865, 10793, 1643, - 10793, 90, 84, 83, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 82, -1000, -1000, 27098, 10793, 81, -1000, 77, - 75, 30865, 1239, 30865, -1000, -1000, 473, 473, 678, 678, - 678, 678, 1641, 1027, 1208, 3420, 2215, 2215, 2215, 3032, - 920, 920, 2215, 2215, 2215, 1231, 1128, 186, 2644, 10793, - -82, -1000, -1000, -1000, 30865, 30865, 72, -1000, -1000, -1000, - -150, 3532, 28593, 28264, -1000, 70, -1000, -72, -1000, -1000, - 225, 15, 755, -1000, -90, -1000, 377, -1000, 340, 337, - -1000, -1000, -1000, 1179, -1000, 12414, 185, 21322, 18282, 1574, - 12414, 999, 1118, 371, 17370, -1000, 607, -1000, -1000, -1000, - 429, 10793, 10793, 1143, 14909, 14909, 979, 1134, 14909, -1000, - -1000, -1000, -1000, 336, 382, 397, 18890, -1000, 1654, 1170, - -86, -1000, -1000, 21322, 184, -1000, 397, 429, -1000, -1000, - -1000, 21322, -1000, 21322, -1000, 5197, 21322, 1236, 1052, -1000, - -1000, 1121, 183, 11451, 21322, -1000, 879, 12414, 1463, 43, - 5197, 1463, 28226, 5842, -92, -93, 1047, -1000, 1044, 10793, - -1000, 31318, 1017, 1017, -1000, 533, 530, 529, 518, -1000, - -1000, -104, 16458, 1720, 10793, 10793, 31121, -94, -1000, 271, - 271, -1000, 28198, -1000, 30865, -1000, 30062, -1000, -1000, -1000, - -1000, 866, -1000, 27869, -1000, -1000, -1000, -1000, 11451, 1211, - 182, 31318, 27831, -1000, -1000, 10793, -1000, -1000, -1000, 1377, - 21322, 1424, -1000, -1000, 181, -1000, -1000, 898, -99, 12414, - -112, 66, 15, -117, 21322, -1000, 371, 17370, -1000, 1369, - -1000, 21322, 30865, -150, -1000, 979, -1000, 180, 10793, 14909, - -1000, -177, -1000, -119, -1000, 18890, -1000, 333, -183, -1000, - 370, -1000, 397, 178, 21322, 18890, -1000, -1000, 1419, -1000, - -1000, 21322, 1058, -1000, -1000, 10793, 2644, 177, 1168, 176, - -1000, -1000, -1000, -1000, -1000, -1000, 1500, 21, -1000, 832, - -1000, -1000, 30865, 1493, -1000, -1000, 21322, 21322, 170, 169, - -1000, 168, 43, -125, -1000, 369, 271, 271, -1000, -1000, - 65, 950, 1518, -1000, 3701, 11451, 31318, -132, -1000, 27803, - 599, -133, 21322, -1000, -1000, 5513, 21322, 879, -137, -1000, - 1168, -1000, 879, 166, 17370, -1000, 1119, -134, -1000, 1560, - -1000, 21322, 30865, -1000, 397, -1000, 1650, -1000, -1000, 1170, - -1000, 4562, 18890, 21322, -139, -1000, -1000, -1000, 1331, 27474, - 1100, 21322, -1000, 21322, 1463, 64, 21322, 466, 5197, -1000, - -1000, 10793, 10793, 10793, 1720, -1000, -1000, 1686, -1000, 815, - 10793, 3701, -143, -1000, -1000, 700, -1000, 433, -1000, 165, - 1168, 879, -1000, 1168, 12414, -1000, 1118, 21322, 164, -145, - 18890, -1000, -1000, -1000, 1646, -1000, -151, -1000, 1316, -1000, - 986, 877, 61, -153, -1000, -1000, 154, -1000, 10793, -1000, - -157, -158, -9, -1000, -1000, 59, 10464, 10464, -150, -1000, - 15526, -1000, 21322, -1000, 1168, -1000, -164, -1000, -1000, -1000, - -1000, -1000, 322, -1000, 21322, -1000, 990, 987, 681, -1000, - -1000, -1000, -1000, -1000, 1100, 30865, -1000, -1000, 58, -1000, - -1000, -1000, 12098, 964, 747, 29411, -1000, -141, -175, -1000, - 879, -1000, -1000, -1000, 1393, -1000, 474, 1116, 1116, 986, - 1643, 1612, -1000, -1000, -1000, -1000, -1000, -1000, 954, 1168, - -1000, 1626, -1000, -1000, 1140, -1000, -1000, 10135, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 303, 302, -1000, 20446, -1000, 988, -1000, + -1, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 11013, + 11013, 983, -1000, 21678, -1000, -1000, 24758, 24450, 675, 301, + 1055, -1000, -1000, 558, 413, -1000, -1000, 13928, 30, -1000, + -1000, -1000, -1000, 1301, 1451, 17058, 761, 1280, -1000, 980, + 1279, 1275, 1274, 1272, 1270, -1000, 760, 657, 532, -1000, + 1266, 412, 774, 488, -1000, 1264, 1259, 1055, -1000, 1055, + -1000, -1000, -1000, 602, 23218, -1000, -1000, -1000, -1000, -1000, + 19522, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 1755, -1000, -1000, -1000, -1000, 1716, -1000, -1000, -1000, + -1000, 24142, 21678, 21678, 1192, 23834, -1000, 777, -1000, -1000, + -1000, 1117, 1443, 1443, 1443, 1495, 153, 144, 137, -14, + 21678, -1000, 299, -14, 9347, 9347, -1000, -1000, 261, -1000, + 340, 16430, -1000, 7682, -1000, 796, 1352, 498, 880, 1346, + -100, 792, 789, 1345, 17058, 17982, -9, -31, -1000, -1000, + -1000, 5029, 17058, 30783, -1000, 11013, 11013, 11013, 11013, 11013, + 873, 334, -1000, 297, 296, 6336, -1000, -1000, 1711, -1000, + -1000, -1000, 152, -1000, -1000, 11013, 25, -1000, -1000, -1000, + -1000, 295, 1751, -1000, 461, -1000, -1000, -1000, 285, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 1300, 293, + 289, -1000, -1000, -1000, -1000, 288, 287, 282, 280, 279, + 278, 275, 274, 273, 272, 267, 266, 265, 264, 263, + 846, -1000, 440, -1000, -1000, 440, 440, -1000, 237, 237, + 241, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 237, + -1000, -1000, -1000, 393, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 262, 30783, 679, 15493, 25, -1000, -1000, -1000, 19522, + 21678, 21678, 709, 23526, -1000, 1342, 117, 1341, -1000, 115, + 1340, -1000, 115, 1339, -31, 1338, 20, -1000, -1000, 261, + 20138, 21678, 1585, 31161, -1000, 11013, -1000, -1000, 17366, 1115, + 30783, 30783, 17366, -1000, -1000, 1583, -1000, 21678, 11013, -13, + -1000, -1000, -1000, -1000, 1122, 1124, 505, 13608, 13288, 1402, + 1109, -1000, -1000, -1000, 27, 5349, 177, 672, -1000, -1000, + -1000, 19830, -1000, -1000, 21678, 1296, 17366, 21678, 21678, 21678, + 21678, 21678, -1000, -1000, -1000, 528, 1293, 21678, -1000, 1120, + -1000, -1000, 21678, 21678, 779, 644, -1000, -13, -1000, 23218, + -1000, 121, -1000, -1000, -1000, -1000, 259, 1083, 419, 147, + 22910, 419, 1082, -1000, 1117, -1000, 1007, 1183, 10014, 1158, + 11013, 137, -1000, -1000, 137, 137, 11013, -1000, -1000, 21678, + -14, 1579, 21678, 73, -1000, 29746, -1000, 73, -1000, -1000, + -1000, 21678, 16, -1000, 30783, -1000, -40, 853, -1000, 18906, + 1461, 1438, 1421, 19522, 1538, -22, 1258, 1514, -22, 1257, + 599, 21678, 21678, 597, 590, 19522, 369, -1000, 21678, -1000, + -1000, -29, -1000, 31144, 31161, 5349, 627, 11013, 11013, 11013, + 11013, 11013, 11013, 11013, 11013, 11013, 11013, 11013, 11013, 11013, + 11013, 11013, 11013, 11013, 11013, 11013, 11013, 11013, 11013, 1029, + 11013, 578, 11013, 11013, 11013, 11013, 877, 909, 229, 945, + -1000, 1744, 1744, 1744, 30990, 30990, 204, 334, -1000, 11013, + -1000, 9681, 144, 29111, -20, -1000, -1000, -1000, 7336, 436, + 30783, 25, 6002, -1000, 1709, 665, 1310, 1230, 247, 143, + 140, 11013, 11013, 11346, 11346, 11013, 11679, 11013, 11013, 6669, + 11013, 11013, 11013, 11013, 11013, 11013, -1000, 246, -1000, -1000, + -1000, -1000, 1707, -1000, -1000, 1685, -1000, 626, 612, 1683, + -1000, 1256, 14, -1000, -1000, 429, 146, 1577, 146, 15806, + -1000, 21678, 21678, -1000, 21678, -1000, -1000, 21678, -1000, 21678, + 21678, -1000, 21678, 21678, 177, 18290, 756, 1335, 764, 177, + 10, -1000, 1587, -1000, -1000, -1000, -1000, 126, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 241, 846, 237, 237, 237, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, 393, -1000, -1000, 440, 440, 440, -1000, -1000, + 9, 30783, 576, -1000, 1252, 515, -1000, 402, 1, 1055, + 966, -1000, -1000, -1000, -1000, -1000, -1000, -21, -1000, -1000, + -21, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 1747, 5349, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 21678, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 177, -1000, -1000, + -1000, -1000, 21678, 21678, 21678, -1000, -1000, 19522, 18598, 1574, + 1332, 842, -1000, 1573, 21678, 978, 1073, -1000, 633, 1331, + -1000, -1000, -1000, -1000, 30783, -1000, 386, -1000, -1000, 30783, + 738, 1177, -1000, 1177, -27, -1000, 29618, -1000, 236, -12, + 429, 9347, 15181, 5349, -1000, 429, 139, 7682, -1000, 756, + 21678, 21678, 21678, -1000, -1000, 1071, 22602, 1067, 31161, 21678, + -1000, 235, 234, 1145, 1142, 21678, 21678, 22294, 21986, 21678, + 786, -22, -1000, 233, -22, -1000, 230, 21678, 781, -1000, + 21678, 21678, 771, 1209, 995, -1000, 422, 17058, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 406, 377, + 377, 737, 737, 737, 737, 1600, 2316, 2702, 179, 3868, + 3868, 3868, 699, 368, 368, 3868, 3868, 3868, 30990, 30811, + 205, 11013, 11013, 575, 891, 229, 205, 11013, 205, 205, + 205, 205, -1000, 1074, -1000, -1000, -1000, -1000, 1250, 226, + 11679, 11679, -1000, -1000, -1000, 6336, 12012, -1000, -1000, -1000, + -1000, 225, 11013, -1000, 29256, -195, -16, -1000, -1000, 11013, + -17, -18, -1000, -1000, 671, -1000, 11013, -1000, 19, 11013, + 11013, 11013, 135, 133, -1000, 572, -1000, 571, 569, 567, + -1000, 224, 916, 223, 222, 11013, -1000, -1000, 30576, 3809, + 129, 1249, -124, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 128, 127, 30548, -124, 110, 30052, -1000, 11679, 11679, 11679, + 6336, 221, 106, 29507, -124, 30341, 9014, 9014, 9014, 105, + 30313, 11013, -124, 3748, 3459, 3399, -39, -41, -46, 1677, + -50, 99, 378, 376, 95, 673, 1247, 21678, 775, 11013, + 829, -1000, 14869, 462, 21678, 775, 46, -1000, -1000, -1000, + 360, 21678, -1000, -1000, -1000, 117, -1000, 115, 115, -31, + -1000, -1000, 19522, -1000, -1000, 31161, 332, 326, -1000, 1668, + -1000, 11013, 21678, 21678, 1171, -1000, -1000, -1000, 728, -1000, + 810, -1000, 14248, -1000, -66, -1000, -1000, -1000, -1000, 369, + -1000, 91, -55, -38, 31161, -1000, -1000, -1000, -1000, -1000, + 21678, 281, 21678, -22, 21678, -1000, 1741, -22, 21678, 1329, + 1360, 352, 21678, 738, -1000, 11013, 1661, -1000, -1000, -1000, + 11013, -1000, -1000, -1000, 177, -1000, 1227, -1000, -113, 1141, + 157, -187, 101, 373, -1000, 14557, -1000, 1227, -1000, -1000, + -1000, -1000, 564, 561, 1327, -1000, 1061, -1000, 469, -1000, + 770, 11013, 12654, 219, 217, 854, -1000, 1325, 993, 1323, + 993, -1000, -40, 819, -1000, 11013, -1000, 11013, -1000, 546, + -1000, -1000, 545, 422, 1241, 647, -1000, 933, -1000, 11013, + 205, 205, 11013, 11679, 11679, -1000, 205, -1000, -1000, -1000, + -1000, -1000, 1240, 216, 11013, 31161, 30196, 2832, -56, -1000, + 8681, -57, -1000, 11013, -1000, 29005, -1000, -1000, 207, 1358, + -1000, 11013, 30081, 86, 8348, -1000, 29953, -24, -24, -1000, + 1739, 1104, 1045, 830, 686, 1654, -1000, 16118, 434, 929, + 28860, 31144, 31161, -1000, 11013, -1000, -1000, 1239, 11013, -1000, + 31144, 31161, 11679, 11679, 11679, 11679, 11679, 11679, 11679, 11679, + 11679, 11679, 11679, 11679, 11679, 11679, 11679, 11679, 11679, 11679, + 11679, 1138, 11679, 1625, 1625, 1625, -65, 8015, -1000, 1292, + 1239, 11013, 11013, 31161, 85, 84, 83, -1000, 11013, -124, + 11013, 11013, 11013, -1000, -1000, -1000, 82, -1000, 1646, -1000, + -1000, -1000, -1000, -1000, 655, -1000, -1000, 7002, 30783, -1000, + 775, 1432, -61, -1000, -1000, -1000, 429, 15806, 15181, 7682, + -68, -1000, -1000, -1000, 756, -1000, 490, 1633, 79, 30783, + -66, -66, -1000, -1000, -1000, -1000, -1000, 21678, -1000, 1195, + -1000, 18598, 215, 21678, 214, -1000, 213, -1000, -1000, 212, + 21678, 1119, 352, 17674, -1000, 419, 939, 28754, -1000, 75, + 1219, 1489, -1000, 15181, 1148, 1147, 15181, 1157, 885, 885, + 885, -1000, 211, 315, 373, 4375, 11013, 19214, 912, 47, + 69, 1141, 1219, 21678, 21678, 21678, 1322, -1000, 1533, -1000, + 28609, -69, -1000, 323, 1452, 11013, -1000, -1000, 209, 12654, + 21678, -1000, 1151, 1167, 503, 21678, -1000, 21678, -1000, 21678, + 21678, 21678, -79, -81, 21678, 21678, -1000, 17058, 611, 208, + 1696, 205, 2369, 260, 11013, 31161, 3936, -90, 11013, 11013, + -1000, -98, -1000, 11013, 309, 30783, -1000, -1000, -1000, 30783, + 11013, 1720, 11013, 66, 64, 63, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, 62, -1000, -1000, 27530, 11013, 60, + -1000, 59, 58, 30783, 1292, 30783, -1000, -1000, 618, 618, + 662, 662, 662, 662, 1625, 1459, 449, 1401, 2172, 2172, + 2172, 2231, 660, 660, 2172, 2172, 2172, 1238, 1143, 203, + 30604, 11013, -104, -1000, -1000, -1000, 30783, 30783, 57, -1000, + -1000, -1000, -124, 327, 28503, 28358, -1000, 54, -1000, -83, + -1000, -1000, 206, -22, 775, -1000, -89, -1000, 355, -1000, + 307, 306, -1000, -1000, -1000, 1202, -1000, 12654, 202, 21678, + 18598, 1571, 12654, 976, 1129, 352, 17674, -1000, 633, -1000, + -1000, -1000, 426, 11013, 11013, 1141, 15181, 15181, 1052, 1139, + 15181, -1000, -1000, -1000, -1000, 305, 382, 373, 19214, -1000, + 1623, 1154, -105, -1000, -1000, 21678, 191, -1000, 373, 426, + -1000, -1000, -1000, 21678, -1000, 21678, -1000, 5349, 21678, 1233, + 1050, -1000, -1000, 1134, 186, 11679, 21678, -1000, 869, 12654, + 1449, 25, 5349, 1449, 28252, 6002, -106, -111, 1038, -1000, + 1014, 11013, -1000, 31161, 993, 993, -1000, 541, 539, 537, + 535, -1000, -1000, -95, 16750, 1726, 11013, 11013, 3936, -116, + -1000, 205, 205, -1000, 28107, -1000, 30783, -1000, 29953, -1000, + -1000, -1000, -1000, 862, -1000, 27900, -1000, -1000, -1000, -1000, + 11679, 1236, 185, 31161, 27872, -1000, -1000, 11013, -1000, -1000, + -1000, 1366, 21678, 1413, -1000, -1000, 184, -1000, -1000, 866, + -120, 12654, -125, 53, -22, -126, 21678, -1000, 352, 17674, + -1000, 1360, -1000, 21678, 30783, -124, -1000, 1052, -1000, 183, + 11013, 15181, -1000, -187, -1000, -127, -1000, 19214, -1000, 180, + -193, -1000, 351, -1000, 373, 182, 21678, 19214, -1000, -1000, + 1084, -1000, -1000, 21678, 1059, -1000, -1000, 11013, 30604, 181, + 1195, 178, -1000, -1000, -1000, -1000, -1000, -1000, 1452, 19, + -1000, 803, -1000, -1000, 30783, 1444, -1000, -1000, 21678, 21678, + 166, 165, -1000, 164, 25, -134, -1000, 350, 205, 205, + -1000, -1000, 52, 929, 1480, -1000, 30749, 11679, 31161, -140, + -1000, 27844, 608, -144, 21678, -1000, -1000, 5669, 21678, 869, + -146, -1000, 1195, -1000, 869, 163, 17674, -1000, 1119, -103, + -1000, 1567, -1000, 21678, 30783, -1000, 373, -1000, 1621, -1000, + -1000, 1154, -1000, 4706, 19214, 21678, -150, -1000, -1000, -1000, + 1321, 4000, 1085, 21678, -1000, 21678, 1449, 40, 21678, 476, + 5349, -1000, -1000, 11013, 11013, 11013, 1726, -1000, -1000, 1724, + -1000, 837, 11013, 30749, -151, -1000, -1000, 695, -1000, 429, + -1000, 162, 1195, 869, -1000, 1195, 12654, -1000, 1129, 21678, + 159, -157, 19214, -1000, -1000, -1000, 1615, -1000, -161, -1000, + 1313, -1000, 942, 884, 38, -162, -1000, -1000, 147, -1000, + 11013, -1000, -166, -167, -24, -1000, -1000, 37, 10680, 10680, + -124, -1000, 15806, -1000, 21678, -1000, 1195, -1000, -177, -1000, + -1000, -1000, -1000, -1000, 48, -1000, 21678, -1000, 957, 948, + 708, -1000, -1000, -1000, -1000, -1000, 1085, 30783, -1000, -1000, + 36, -1000, -1000, -1000, 12334, 944, 747, 29362, -1000, -156, + -178, -1000, 869, -1000, -1000, -1000, 1382, -1000, 492, 997, + 997, 942, 1720, 1591, -1000, -1000, -1000, -1000, -1000, -1000, + 992, 1195, -1000, 1598, -1000, -1000, 1128, -1000, -1000, 10347, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, } var sqlPgo = [...]int{ - 0, 1958, 1957, 1509, 1628, 1953, 1951, 1950, 1620, 1942, - 1941, 1931, 1930, 1929, 1927, 1597, 1594, 1578, 1551, 1926, - 108, 1923, 1922, 1920, 1535, 1915, 1914, 1913, 1912, 1910, - 1902, 41, 1901, 1900, 1533, 1530, 1527, 1524, 1898, 1897, - 1519, 1894, 1889, 18, 1888, 90, 1885, 29, 152, 2282, - 146, 1884, 1883, 1882, 23, 117, 67, 1879, 81, 1878, - 1873, 56, 44, 19, 21, 1870, 113, 1869, 1868, 1389, - 30, 1867, 1866, 144, 1865, 13, 26, 206, 155, 153, - 135, 133, 1864, 1859, 1858, 1857, 57, 1855, 1, 1854, - 1847, 8, 74, 12, 1840, 32, 75, 1838, 1835, 132, - 1826, 70, 99, 1482, 119, 124, 274, 1825, 71, 9, - 73, 1820, 1816, 156, 31, 1815, 39, 97, 139, 1812, - 76, 159, 64, 36, 59, 129, 1811, 1808, 1807, 109, - 1803, 121, 77, 1802, 1801, 84, 1800, 138, 140, 1798, - 1796, 103, 1794, 134, 1793, 1792, 151, 165, 1791, 157, - 1790, 1787, 160, 123, 5, 63, 60, 17, 1472, 1469, - 131, 89, 34, 24, 1786, 1383, 1388, 1939, 43, 112, - 68, 33, 115, 47, 83, 145, 22, 1785, 1784, 130, - 1781, 1780, 1779, 1778, 1777, 110, 1776, 1775, 62, 141, - 15, 27, 25, 102, 45, 98, 100, 107, 154, 118, - 1774, 93, 128, 1773, 46, 1772, 1771, 1827, 142, 1770, - 1769, 1766, 1672, 1587, 1350, 499, 1765, 1764, 1091, 921, - 1763, 1762, 80, 1761, 126, 120, 1760, 148, 147, 20, - 1758, 122, 65, 104, 1757, 116, 48, 0, 1591, 55, - 1755, 136, 96, 1754, 1753, 1752, 1751, 35, 3, 10, - 6, 7, 2, 101, 28, 1750, 1749, 137, 94, 66, - 1748, 158, 1747, 1746, 1745, 49, 1744, 11, 1742, 16, - 1740, 1739, 14, 4, 1738, 1737, 162, 1736, 111, 1735, - 1567, 1733, 149, 1732, 1730, 1518, 54, 114, + 0, 2020, 2019, 1498, 1720, 2016, 2014, 2013, 1704, 2012, + 2011, 2010, 2009, 2008, 2005, 1666, 1663, 1643, 1638, 2004, + 116, 2002, 2001, 1998, 1605, 1992, 1991, 1988, 1976, 1972, + 1971, 89, 1969, 1965, 1599, 1548, 1545, 1543, 1964, 1960, + 1541, 1954, 1951, 24, 1950, 77, 1945, 48, 177, 2224, + 133, 1943, 1939, 1936, 39, 110, 67, 1935, 66, 1934, + 1932, 47, 33, 22, 20, 1928, 105, 1927, 1926, 1397, + 44, 1924, 1922, 137, 1921, 21, 28, 2305, 149, 144, + 117, 132, 1920, 1919, 1918, 1916, 57, 1912, 2, 1910, + 1909, 9, 74, 16, 1907, 17, 80, 1905, 1904, 129, + 1899, 60, 106, 1490, 102, 128, 278, 1898, 64, 7, + 59, 1897, 1894, 146, 34, 1893, 43, 81, 135, 1892, + 93, 152, 56, 36, 63, 124, 1891, 1888, 1887, 109, + 1885, 118, 73, 1884, 1879, 75, 1877, 134, 136, 1876, + 1874, 100, 1872, 120, 1871, 1870, 145, 156, 1869, 153, + 1868, 1865, 154, 119, 8, 42, 65, 4, 1502, 1481, + 127, 95, 32, 18, 1861, 1391, 1388, 27, 26, 103, + 68, 45, 107, 62, 83, 139, 49, 1859, 1850, 123, + 1845, 1843, 1840, 1839, 1838, 99, 1835, 1830, 70, 138, + 14, 31, 25, 94, 41, 96, 84, 175, 148, 111, + 1825, 101, 122, 1823, 248, 1822, 1816, 1534, 142, 1814, + 1813, 1812, 1461, 1348, 1242, 520, 1811, 1810, 936, 818, + 1809, 1808, 71, 1806, 126, 115, 1803, 143, 141, 19, + 1792, 121, 55, 104, 1789, 108, 54, 0, 369, 159, + 1787, 131, 97, 1786, 1785, 1784, 1782, 23, 3, 12, + 6, 10, 5, 30, 29, 1781, 1779, 130, 112, 76, + 1778, 151, 1777, 1776, 1775, 35, 1774, 15, 1773, 11, + 1772, 1771, 13, 1, 1768, 1767, 147, 1766, 98, 1765, + 1536, 1764, 140, 1758, 1749, 1585, 46, 114, } var sqlR1 = [...]int{ @@ -5023,45 +5023,45 @@ var sqlR1 = [...]int{ 98, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 206, 206, 206, 206, 208, 208, 208, 207, 207, 207, 207, 207, - 207, 207, 207, 207, 207, 207, 207, 207, 207, 221, - 221, 221, 221, 221, 209, 209, 216, 216, 217, 217, - 218, 219, 210, 210, 211, 211, 212, 213, 220, 220, - 220, 220, 224, 224, 214, 214, 214, 214, 214, 215, - 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, - 131, 131, 131, 131, 132, 132, 165, 165, 165, 165, + 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, + 207, 207, 207, 221, 221, 221, 221, 221, 209, 209, + 216, 216, 217, 217, 218, 219, 210, 210, 211, 211, + 212, 213, 220, 220, 220, 220, 224, 224, 214, 214, + 214, 214, 214, 215, 131, 131, 131, 131, 131, 131, + 131, 131, 131, 131, 131, 131, 131, 131, 132, 132, + 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, - 165, 165, 165, 165, 165, 165, 165, 165, 165, 166, + 165, 165, 165, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 167, 167, - 167, 167, 169, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 253, 253, 253, 253, 253, 253, 253, - 255, 255, 256, 256, 254, 254, 254, 254, 254, 254, + 166, 166, 167, 167, 167, 167, 169, 169, 169, 169, + 169, 169, 169, 169, 169, 169, 169, 253, 253, 253, + 253, 253, 253, 253, 255, 255, 256, 256, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 262, 262, 263, 263, 265, 265, 266, 266, 267, - 268, 268, 268, 269, 270, 270, 264, 264, 271, 271, - 271, 272, 272, 273, 273, 273, 273, 273, 179, 179, - 179, 180, 180, 181, 187, 187, 187, 82, 82, 82, - 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, - 82, 82, 82, 74, 74, 74, 74, 74, 106, 106, - 176, 176, 174, 174, 174, 178, 178, 125, 125, 223, - 223, 223, 223, 223, 223, 223, 126, 126, 126, 133, - 127, 127, 128, 128, 128, 128, 128, 128, 170, 171, - 129, 129, 129, 172, 172, 182, 186, 186, 185, 184, - 184, 183, 183, 160, 160, 161, 161, 159, 158, 114, - 114, 113, 113, 112, 112, 287, 287, 188, 188, 115, - 115, 116, 108, 108, 199, 199, 199, 199, 102, 102, - 81, 81, 103, 103, 77, 77, 80, 80, 78, 78, - 78, 78, 96, 96, 97, 97, 75, 75, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 225, - 225, 225, 175, 69, 69, 69, 70, 70, 71, 71, - 230, 230, 230, 231, 231, 231, 231, 229, 229, 229, - 229, 229, 237, 237, 237, 237, 237, 237, 237, 237, + 254, 254, 254, 254, 254, 262, 262, 263, 263, 265, + 265, 266, 266, 267, 268, 268, 268, 269, 270, 270, + 264, 264, 271, 271, 271, 272, 272, 273, 273, 273, + 273, 273, 179, 179, 179, 180, 180, 181, 187, 187, + 187, 82, 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 74, 74, 74, + 74, 74, 106, 106, 176, 176, 174, 174, 174, 178, + 178, 125, 125, 223, 223, 223, 223, 223, 223, 223, + 126, 126, 126, 133, 127, 127, 128, 128, 128, 128, + 128, 128, 170, 171, 129, 129, 129, 172, 172, 182, + 186, 186, 185, 184, 184, 183, 183, 160, 160, 161, + 161, 159, 158, 114, 114, 113, 113, 112, 112, 287, + 287, 188, 188, 115, 115, 116, 108, 108, 199, 199, + 199, 199, 102, 102, 81, 81, 103, 103, 77, 77, + 80, 80, 78, 78, 78, 78, 96, 96, 97, 97, + 75, 75, 168, 168, 168, 168, 168, 168, 168, 168, + 168, 168, 168, 225, 225, 225, 175, 69, 69, 69, + 70, 70, 71, 71, 230, 230, 230, 231, 231, 231, + 231, 229, 229, 229, 229, 229, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, @@ -5076,13 +5076,14 @@ var sqlR1 = [...]int{ 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 238, 238, 238, 238, 238, 238, 238, 238, - 238, 238, 238, 238, 238, 238, 240, 240, 240, 240, + 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, + 238, 238, 238, 238, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, @@ -5090,7 +5091,7 @@ var sqlR1 = [...]int{ 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, - 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, } var sqlR2 = [...]int{ @@ -5153,43 +5154,44 @@ var sqlR2 = [...]int{ 0, 1, 1, 1, 1, 2, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 5, 0, 1, 1, 1, 1, 1, - 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, - 1, 1, 1, 1, 3, 0, 1, 1, 1, 1, - 5, 2, 1, 1, 1, 1, 4, 1, 2, 2, - 1, 1, 1, 0, 1, 1, 4, 1, 4, 1, - 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, - 3, 3, 3, 0, 1, 4, 1, 3, 3, 3, - 5, 2, 2, 2, 3, 3, 3, 3, 3, 3, + 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, + 2, 1, 1, 1, 1, 1, 1, 1, 3, 0, + 1, 1, 1, 1, 5, 2, 1, 1, 1, 1, + 4, 1, 2, 2, 1, 1, 1, 0, 1, 1, + 4, 1, 4, 1, 1, 1, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 3, 3, 0, 1, 4, + 1, 3, 3, 3, 5, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 2, 2, 3, 4, 3, - 4, 4, 5, 3, 3, 3, 3, 3, 4, 3, - 4, 3, 3, 4, 3, 4, 3, 4, 5, 6, - 6, 7, 6, 7, 6, 7, 3, 4, 4, 1, - 3, 3, 2, 2, 2, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, + 2, 3, 4, 3, 4, 4, 5, 3, 3, 3, + 3, 3, 4, 3, 4, 3, 3, 4, 3, 4, + 3, 4, 5, 6, 6, 7, 6, 7, 6, 7, + 3, 4, 4, 1, 3, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 5, 6, 6, 7, 1, 2, - 1, 2, 1, 1, 2, 1, 3, 1, 1, 2, - 2, 1, 1, 3, 5, 6, 8, 6, 6, 4, - 4, 1, 1, 1, 5, 1, 3, 1, 3, 1, - 1, 1, 1, 6, 6, 4, 4, 4, 4, 4, - 6, 5, 5, 5, 4, 8, 6, 6, 4, 4, - 4, 5, 0, 5, 0, 2, 0, 1, 3, 3, - 2, 2, 0, 6, 1, 0, 3, 0, 2, 2, - 0, 1, 4, 2, 2, 2, 2, 2, 4, 3, - 5, 4, 3, 5, 1, 1, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 3, 3, 3, 5, 6, + 6, 7, 1, 2, 1, 2, 1, 1, 2, 1, + 3, 1, 1, 2, 2, 1, 1, 3, 5, 6, + 8, 6, 6, 4, 4, 1, 1, 1, 5, 1, + 3, 1, 3, 1, 1, 1, 1, 6, 6, 4, + 4, 4, 4, 4, 6, 5, 5, 5, 4, 8, + 6, 6, 4, 4, 4, 5, 0, 5, 0, 2, + 0, 1, 3, 3, 2, 2, 0, 6, 1, 0, + 3, 0, 2, 2, 0, 1, 4, 2, 2, 2, + 2, 2, 4, 3, 5, 4, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, - 1, 3, 3, 3, 2, 1, 3, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 4, 3, 1, 2, - 3, 0, 3, 3, 2, 2, 1, 0, 2, 2, - 3, 2, 1, 1, 3, 5, 1, 2, 4, 2, - 0, 1, 0, 3, 5, 1, 0, 2, 2, 1, - 1, 1, 2, 1, 2, 1, 0, 1, 1, 1, - 3, 3, 1, 3, 3, 2, 1, 1, 1, 3, - 1, 3, 1, 3, 1, 2, 3, 1, 1, 1, - 2, 2, 1, 3, 3, 0, 1, 2, 1, 1, - 1, 1, 6, 2, 1, 5, 1, 1, 1, 1, - 2, 2, 3, 1, 1, 1, 1, 0, 3, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 1, 2, 1, 3, 1, 3, 3, 3, 2, 1, + 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, + 4, 3, 1, 2, 3, 0, 3, 3, 2, 2, + 1, 0, 2, 2, 3, 2, 1, 1, 3, 5, + 1, 2, 4, 2, 0, 1, 0, 3, 5, 1, + 0, 2, 2, 1, 1, 1, 2, 1, 2, 1, + 0, 1, 1, 1, 3, 3, 1, 3, 3, 2, + 1, 1, 1, 3, 1, 3, 1, 3, 1, 2, + 3, 1, 1, 1, 2, 2, 1, 3, 3, 0, + 1, 2, 1, 1, 1, 1, 6, 2, 1, 5, + 1, 1, 1, 1, 2, 2, 3, 1, 1, 1, + 1, 0, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -5220,230 +5222,231 @@ var sqlR2 = [...]int{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, } var sqlChk = [...]int{ -1000, -1, -2, -3, -4, -5, -6, -7, -8, -15, -16, -17, -18, -19, -21, -22, -23, -24, -25, -27, -29, -30, -32, -31, -33, -34, -35, -36, -37, -38, - -26, -28, -39, -40, -41, 23, 34, 230, 47, 67, - -9, -10, -11, -12, -13, -14, -260, 95, 104, 126, - 210, 102, 88, 120, 205, 232, 234, 241, -47, -49, - 251, -150, 254, 35, 263, 61, 98, 236, 228, 229, - 289, 298, 69, -258, -50, -48, 340, 314, 321, 245, - -51, 272, 306, 343, 272, 135, 81, 309, -276, -103, - 272, 81, -78, -69, 333, 4, -237, -239, 20, 21, + -26, -28, -39, -40, -41, 23, 34, 234, 47, 67, + -9, -10, -11, -12, -13, -14, -260, 95, 104, 128, + 214, 102, 88, 122, 209, 236, 238, 245, -47, -49, + 255, -150, 258, 35, 267, 61, 98, 240, 232, 233, + 293, 302, 69, -258, -50, -48, 344, 318, 325, 249, + -51, 276, 310, 347, 276, 137, 81, 313, -276, -103, + 276, 81, -78, -69, 337, 4, -237, -239, 20, 21, 23, 33, 34, 35, 40, 44, 47, 48, 55, 60, 61, 62, 64, 66, 67, 68, 71, 72, 79, 80, 82, 84, 88, 90, 94, 95, 97, 102, 103, 104, - 110, 111, 114, 116, 121, 126, 127, 128, 129, 136, - 139, 141, 134, 149, 150, 152, 153, 154, 157, 156, - 161, 164, 167, 169, 170, 171, 174, 172, 176, 177, - 179, 178, 184, 186, 187, 189, 192, 195, 198, 201, - 202, 203, 204, 205, 208, 210, 212, 213, 214, 215, - 216, 218, 219, 221, 222, 223, 224, 225, 228, 226, - 227, 229, 230, 231, 232, 234, 236, 237, 239, 252, - 253, 264, 241, 242, 243, 244, 247, 248, 249, 251, - 254, 256, 259, 262, 263, 265, 268, 266, 261, 271, - 273, 274, 275, 276, 277, 284, 285, 289, 290, 291, - 292, 295, 296, 297, 298, 300, 303, 304, 305, 310, - 315, 316, 317, 318, 319, 28, 36, 37, 38, 39, + 110, 111, 116, 118, 123, 128, 129, 130, 131, 138, + 141, 143, 136, 153, 154, 156, 157, 158, 161, 160, + 165, 168, 171, 173, 174, 175, 178, 176, 180, 181, + 183, 182, 188, 190, 191, 193, 196, 199, 202, 205, + 206, 207, 208, 209, 212, 214, 216, 217, 218, 219, + 220, 222, 223, 225, 226, 227, 228, 229, 232, 230, + 231, 233, 234, 235, 236, 238, 240, 241, 243, 256, + 257, 268, 245, 246, 247, 248, 251, 252, 253, 255, + 258, 260, 263, 266, 267, 269, 272, 270, 265, 275, + 277, 278, 279, 280, 281, 288, 289, 293, 294, 295, + 296, 299, 300, 301, 302, 304, 307, 308, 309, 314, + 319, 320, 321, 322, 323, 28, 36, 37, 38, 39, 41, 42, 45, 46, 51, 52, 53, 56, 83, 85, - 86, 101, 105, 106, 112, 122, 124, 130, 131, 140, - 142, 143, 144, 146, 159, 173, 183, 185, 196, 200, - 207, 209, 217, 238, 246, 257, 258, 267, 269, 279, - 280, 281, 286, 287, 302, 306, 307, -276, 150, 214, - -77, -69, 81, 90, 139, 297, 296, 81, 135, 272, - 309, 299, -20, 340, -31, -8, -16, -4, -24, -40, - -15, -34, -18, -35, -36, -37, -17, 23, -229, 4, - -237, -239, -238, -240, 58, 70, 119, 138, 132, 148, - 151, 160, 162, 175, 197, 199, 235, 255, 22, 24, - 25, 26, 27, 29, 30, 31, 32, 43, 49, 50, - 54, 57, 59, 65, 69, 73, 74, 75, 76, 77, - 78, 87, 89, 91, 92, 93, 96, 98, 100, 107, - 108, 109, 115, 117, 118, 120, 123, 125, 133, 135, - 137, 145, 147, 155, 158, 163, 165, 166, 180, 181, - 182, 188, 190, 191, 193, 194, 206, 211, 220, 233, - 245, 250, 260, 270, 272, 278, 282, 283, 288, 293, - 294, 299, 301, 308, 309, 311, 312, 313, 314, -69, - -69, -69, 210, 22, -280, 22, -281, -282, 69, 95, - 120, 245, 139, 90, 296, 150, 150, -280, -73, 241, - -69, -147, 164, 248, 55, 238, 285, -148, -146, -228, - 279, -151, -104, 174, -69, 4, 174, 250, 81, 284, - 22, 34, 55, 60, 82, 121, 135, 136, 65, 66, - 153, 213, 164, 248, 154, 249, 273, 279, 285, 69, - 300, 275, 103, -285, 285, 285, -285, -285, -72, 285, - 282, -73, 4, 81, 250, 174, -284, 272, -233, -226, - -189, 9, 288, 107, 190, -232, 8, 332, -225, -231, - 5, 7, 331, 4, -237, -239, -238, 272, 299, 309, - -134, 81, 294, -48, -50, -49, -92, -93, 293, 145, - 100, 194, -47, -49, -258, -261, 218, -257, -69, -261, - -89, -90, 22, 92, 344, -197, -77, 191, -116, 340, - -3, -197, 130, -77, -80, 130, -77, -69, -197, 130, - 282, 344, -103, -96, -69, -159, -158, 342, 118, -165, - -167, 331, 332, 326, 180, 320, -179, -169, -182, 101, - 238, 340, -77, -168, 345, 9, -255, -49, 29, -180, - -181, 49, -69, 7, 8, 5, 6, -75, -206, -175, - -215, 288, 107, 182, -253, -254, 4, -237, -230, -207, - -217, -211, -214, 146, 58, 74, 77, 75, 78, 250, - 299, 50, 28, 105, 106, 200, 207, 269, 286, 287, - 130, 183, 131, 56, 122, 159, 94, 37, 39, 41, - 42, 51, 52, 83, 85, 86, 112, 140, 142, 143, - 144, 185, 217, 257, 267, 280, 281, 307, -238, -218, - -219, -212, -213, -220, -165, 118, 340, -113, -114, -158, - -159, 118, 147, 147, -198, -197, -69, 130, -81, 130, - -80, -105, 130, -104, -105, 130, -96, 130, -203, -202, - -231, 306, 272, 135, -177, 340, -130, 340, -69, 22, - 190, 344, -165, -165, 190, -69, -147, 53, -147, 252, - 340, -152, -153, -66, -67, -68, 149, 212, 216, 282, - 325, 118, 319, -233, -85, 87, -107, 342, 115, 55, - -235, -232, 9, 252, 213, 249, 118, -277, 190, 118, - 118, 118, 118, 118, 213, 249, 284, 154, 284, 118, - 319, 149, 212, 264, 272, 309, 118, 118, -149, -152, - -149, 282, -73, -119, -197, 8, 7, 7, -104, 130, - -69, -104, 135, -69, 130, -92, -93, -118, -137, -138, - 163, 109, 188, -121, 22, 92, -121, -121, 44, 341, - 341, 344, -261, -97, 340, -108, -199, -165, 333, -108, - -116, 333, -77, 340, -115, -188, -165, 87, -56, 226, - -55, 21, 23, 95, 304, 101, 261, 276, 242, 261, - 276, 242, 226, 101, 345, 226, 226, 101, -235, -78, - 344, -229, 333, -236, -235, 10, 11, 57, 33, 331, - 332, 333, 334, 113, 335, 336, 329, 330, 328, 323, - 324, 325, 63, 168, 240, 13, 14, 15, 26, 193, - 162, 320, 132, 255, 326, 16, 17, 18, 148, 36, - 133, -74, -82, -165, -165, -165, -165, -165, 199, -112, - -160, 338, -49, 340, -49, -165, -106, 7, -49, -174, - 338, -183, -165, -113, 340, 5, 340, 5, -262, 315, - 115, 340, 340, 340, 340, 340, 340, 340, 340, 340, - 340, 340, 340, 340, 340, 340, 340, 340, 209, -224, - 310, -224, -224, -208, 340, -208, -209, 340, -208, 316, - 321, 340, 265, 341, -102, -77, -114, -198, -79, -77, - -79, 251, -69, 30, 101, -58, 344, 48, 231, 101, - -58, 344, 101, -58, 101, 101, 341, 344, -197, 130, - -80, 30, -176, -204, -205, -207, -216, -210, -214, -215, - 40, 46, 45, 277, 173, 246, 258, 302, 38, 189, - 141, 140, 142, 143, 144, 257, 37, 217, 112, 94, - 86, 85, 185, 42, 41, -218, -219, -212, -213, 83, - 280, 281, 146, 39, 52, 51, 307, 267, -106, -165, - -276, -282, -276, 30, -146, -228, -106, 344, 161, -84, - 167, 179, 127, 191, 317, -227, 87, -233, -227, 87, - 72, -234, 5, 4, -175, -189, 87, 164, -215, 342, - -229, -20, 253, -104, 22, -228, -279, 115, -276, -228, - -228, -228, -228, -228, 284, 115, -69, 161, -228, -228, - 272, 135, 272, -73, -58, 344, 340, -91, 180, -259, - 314, -91, 340, -70, 130, -69, -259, 180, -118, -138, - -137, -139, -165, 22, -142, 111, 176, -165, -167, -48, - -48, -48, -94, -193, -165, -257, 30, -96, -99, 344, - 118, 30, 4, -99, -77, 344, 341, 344, 282, -135, - 65, 59, -155, 130, 59, -241, -69, 65, -242, 54, - 294, 211, 117, -135, 65, -135, 65, 65, -197, 33, - -31, 118, 33, -31, 118, 282, -80, -69, 282, 282, - -197, -201, 322, -69, -201, 344, -222, -204, -221, 222, - 223, 221, 225, 224, -204, -229, 279, -165, -165, -165, + 86, 101, 105, 106, 112, 113, 114, 124, 126, 132, + 133, 142, 144, 145, 146, 147, 148, 150, 163, 177, + 187, 189, 200, 204, 211, 213, 221, 242, 250, 261, + 262, 271, 273, 283, 284, 285, 290, 291, 306, 310, + 311, -276, 154, 218, -77, -69, 81, 90, 141, 301, + 300, 81, 137, 276, 313, 303, -20, 344, -31, -8, + -16, -4, -24, -40, -15, -34, -18, -35, -36, -37, + -17, 23, -229, 4, -237, -239, -238, -240, 58, 70, + 121, 140, 134, 152, 155, 164, 166, 179, 201, 203, + 239, 259, 22, 24, 25, 26, 27, 29, 30, 31, + 32, 43, 49, 50, 54, 57, 59, 65, 69, 73, + 74, 75, 76, 77, 78, 87, 89, 91, 92, 93, + 96, 98, 100, 107, 108, 109, 117, 119, 120, 122, + 125, 127, 135, 137, 139, 149, 151, 159, 162, 167, + 169, 170, 184, 185, 186, 192, 194, 195, 197, 198, + 210, 215, 224, 237, 249, 254, 264, 274, 276, 282, + 286, 287, 292, 297, 298, 303, 305, 312, 313, 315, + 316, 317, 318, -69, -69, -69, 214, 22, -280, 22, + -281, -282, 69, 95, 122, 249, 141, 90, 300, 154, + 154, -280, -73, 245, -69, -147, 168, 252, 55, 242, + 289, -148, -146, -228, 283, -151, -104, 178, -69, 4, + 178, 254, 81, 288, 22, 34, 55, 60, 82, 123, + 137, 138, 65, 66, 157, 217, 168, 252, 158, 253, + 277, 283, 289, 69, 304, 279, 103, -285, 289, 289, + -285, -285, -72, 289, 286, -73, 4, 81, 254, 178, + -284, 276, -233, -226, -189, 9, 292, 107, 194, -232, + 8, 336, -225, -231, 5, 7, 335, 4, -237, -239, + -238, 276, 303, 313, -134, 81, 298, -48, -50, -49, + -92, -93, 297, 149, 100, 198, -47, -49, -258, -261, + 222, -257, -69, -261, -89, -90, 22, 92, 348, -197, + -77, 195, -116, 344, -3, -197, 132, -77, -80, 132, + -77, -69, -197, 132, 286, 348, -103, -96, -69, -159, + -158, 346, 120, -165, -167, 335, 336, 330, 184, 324, + -179, -169, -182, 101, 242, 344, -77, -168, 349, 9, + -255, -49, 29, -180, -181, 49, -69, 7, 8, 5, + 6, -75, -206, -175, -215, 292, 107, 186, -253, -254, + 4, -237, -230, -207, -217, -211, -214, 150, 58, 74, + 77, 75, 78, 254, 303, 50, 28, 105, 106, 204, + 211, 273, 290, 291, 132, 187, 133, 56, 124, 163, + 94, 37, 39, 41, 42, 51, 52, 83, 85, 86, + 112, 113, 114, 142, 144, 145, 146, 147, 148, 189, + 221, 261, 271, 284, 285, 311, -238, -218, -219, -212, + -213, -220, -165, 120, 344, -113, -114, -158, -159, 120, + 151, 151, -198, -197, -69, 132, -81, 132, -80, -105, + 132, -104, -105, 132, -96, 132, -203, -202, -231, 310, + 276, 137, -177, 344, -130, 344, -69, 22, 194, 348, + -165, -165, 194, -69, -147, 53, -147, 256, 344, -152, + -153, -66, -67, -68, 153, 216, 220, 286, 329, 120, + 323, -233, -85, 87, -107, 346, 117, 55, -235, -232, + 9, 256, 217, 253, 120, -277, 194, 120, 120, 120, + 120, 120, 217, 253, 288, 158, 288, 120, 323, 153, + 216, 268, 276, 313, 120, 120, -149, -152, -149, 286, + -73, -119, -197, 8, 7, 7, -104, 132, -69, -104, + 137, -69, 132, -92, -93, -118, -137, -138, 167, 109, + 192, -121, 22, 92, -121, -121, 44, 345, 345, 348, + -261, -97, 344, -108, -199, -165, 337, -108, -116, 337, + -77, 344, -115, -188, -165, 87, -56, 230, -55, 21, + 23, 95, 308, 101, 265, 280, 246, 265, 280, 246, + 230, 101, 349, 230, 230, 101, -235, -78, 348, -229, + 337, -236, -235, 10, 11, 57, 33, 335, 336, 337, + 338, 115, 339, 340, 333, 334, 332, 327, 328, 329, + 63, 172, 244, 13, 14, 15, 26, 197, 166, 324, + 134, 259, 330, 16, 17, 18, 152, 36, 135, -74, + -82, -165, -165, -165, -165, -165, 203, -112, -160, 342, + -49, 344, -49, -165, -106, 7, -49, -174, 342, -183, + -165, -113, 344, 5, 344, 5, -262, 319, 117, 344, + 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, + 344, 344, 344, 344, 344, 344, 213, -224, 314, -224, + -224, -208, 344, -208, -209, 344, -208, 320, 325, 344, + 269, 345, -102, -77, -114, -198, -79, -77, -79, 255, + -69, 30, 101, -58, 348, 48, 235, 101, -58, 348, + 101, -58, 101, 101, 345, 348, -197, 132, -80, 30, + -176, -204, -205, -207, -216, -210, -214, -215, 40, 46, + 45, 281, 177, 250, 262, 306, 38, 193, 143, 142, + 144, 145, 146, 147, 148, 261, 37, 221, 113, 114, + 112, 94, 86, 85, 189, 42, 41, -218, -219, -212, + -213, 83, 284, 285, 150, 39, 52, 51, 311, 271, + -106, -165, -276, -282, -276, 30, -146, -228, -106, 348, + 165, -84, 171, 183, 129, 195, 321, -227, 87, -233, + -227, 87, 72, -234, 5, 4, -175, -189, 87, 168, + -215, 346, -229, -20, 257, -104, 22, -228, -279, 117, + -276, -228, -228, -228, -228, -228, 288, 117, -69, 165, + -228, -228, 276, 137, 276, -73, -58, 348, 344, -91, + 184, -259, 318, -91, 344, -70, 132, -69, -259, 184, + -118, -138, -137, -139, -165, 22, -142, 111, 180, -165, + -167, -48, -48, -48, -94, -193, -165, -257, 30, -96, + -99, 348, 120, 30, 4, -99, -77, 348, 345, 348, + 286, -135, 65, 59, -155, 132, 59, -241, -69, 65, + -242, 54, 298, 215, 119, -135, 65, -135, 65, 65, + -197, 33, -31, 120, 33, -31, 120, 286, -80, -69, + 286, 286, -197, -201, 326, -69, -201, 348, -222, -204, + -221, 226, 227, 225, 229, 228, -204, -229, 283, -165, -165, -165, -165, -165, -165, -165, -165, -165, -165, -165, - -165, -165, -165, -165, -165, -165, -165, -165, -165, 162, - 132, 255, 36, 133, -165, 282, -165, -165, -165, -165, - 172, 180, 182, 288, 107, 295, 92, 186, -287, 270, - 32, -172, -49, 340, -187, 27, 260, 22, -179, 238, - 340, -160, -165, -161, -106, 341, 341, 344, -106, -178, - 339, -174, -186, -185, 311, 341, -106, 308, 22, 92, - 333, 7, -131, 318, 171, 84, 128, 170, -132, 244, - -263, 110, 123, 340, 341, 341, -165, -165, -125, -223, - -106, 4, 318, 171, 84, 128, 170, 244, -125, -126, - -165, -106, -127, -166, -167, 331, 332, 326, 340, 238, - -128, -165, -106, -165, 43, 158, 283, -129, -165, 118, - -106, -165, -165, -165, -106, -106, -106, 340, 7, 7, - 279, 279, 7, 118, 341, 344, -157, 312, -143, -31, - 340, 87, 30, -143, -109, -110, -200, -111, -77, 340, - -69, -69, -80, -81, -104, -105, -105, -96, -20, -202, - 101, -20, 341, 344, -98, 29, -131, 340, 341, 344, - 282, 118, 285, 341, -153, -83, 216, 259, 227, 247, - 344, -229, -278, -69, -20, -77, -80, -77, -197, -86, - -96, -87, -69, -156, -155, -243, -244, -241, 135, 294, - 108, 30, 101, -65, 204, 30, 190, 180, -61, 274, - 101, -140, -225, 340, 332, -141, 238, 239, 344, -54, - 31, 91, 340, 341, -157, -199, -101, -195, 338, -197, - -77, -49, -196, 340, -229, -157, 341, -188, -55, -77, - -69, -69, 180, -155, 130, -60, 180, -204, -69, 340, - 340, 152, 152, -69, -69, 130, -69, 130, -69, -69, - -56, 226, -31, 340, -31, 340, -69, 226, -69, -77, - 226, -42, 129, 186, -45, 314, -235, 319, -165, -165, - 282, -287, 270, -172, -165, 172, 182, 288, 107, 295, - 92, 186, 118, 340, -166, -166, -106, -169, 340, -106, - 339, 348, 341, -165, 339, 339, 344, -184, -185, 96, - -165, -93, 344, -92, -165, -106, -106, 341, 341, 282, - 282, 282, 282, 340, -268, 198, 340, 340, -165, 30, - 344, 341, 118, 341, 341, -133, 206, 341, 10, 11, - 331, 332, 333, 334, 113, 335, 336, 329, 330, 328, - 323, 324, 325, 63, 168, 240, 13, 14, 15, 148, - 133, -166, -166, -166, -106, 340, 341, -170, -171, 118, - 115, 30, -129, -129, -129, 341, 118, -106, 344, 344, - 344, 341, 341, 341, 7, 341, 344, 341, 319, 319, - 341, 265, 118, -77, -120, 233, -165, -120, -145, 190, - -102, 306, -69, -120, -100, 344, 118, 325, -102, -58, - -58, -58, -197, -204, 338, 338, 7, -165, -278, -278, - -66, 292, 62, 216, -233, 344, -201, 341, 341, 344, - -70, 135, -70, -31, -104, 5, -31, -77, 101, -62, - 97, -286, 325, -69, -141, -165, -193, -20, -117, 123, - -201, 344, 70, -124, 151, 175, 119, 160, 235, 138, - 7, -20, -162, 345, 340, -192, 321, -49, -196, -195, - -117, 282, 282, 101, 180, 303, -245, -242, -165, -95, - -194, -69, -256, 340, -253, -254, -75, 340, 340, -53, - 95, 251, -136, 101, -58, 101, -58, 282, -135, 65, - -106, -106, 282, 282, -45, 118, 271, 192, -165, -165, - -166, -166, 118, 340, -165, -176, 26, 26, 341, -106, - 341, 344, -161, -165, 341, -174, 98, -165, 278, 341, - 308, -93, -93, -93, 5, 171, 128, 170, -132, 170, - -132, -132, 7, -269, -69, 340, 312, -92, 341, -222, - -204, -165, -170, -165, -222, -204, -166, -166, -166, -166, + -165, -165, -165, -165, -165, -165, -165, -165, -165, -165, + -165, 166, 134, 259, 36, 135, -165, 286, -165, -165, + -165, -165, 176, 184, 186, 292, 107, 299, 92, 190, + -287, 274, 32, -172, -49, 344, -187, 27, 264, 22, + -179, 242, 344, -160, -165, -161, -106, 345, 345, 348, + -106, -178, 343, -174, -186, -185, 315, 345, -106, 312, + 22, 92, 337, 7, -131, 322, 175, 84, 130, 174, + -132, 248, -263, 110, 125, 344, 345, 345, -165, -165, + -125, -223, -106, 4, 322, 175, 84, 130, 174, 248, + -125, -126, -165, -106, -127, -166, -167, 335, 336, 330, + 344, 242, -128, -165, -106, -165, 43, 162, 287, -129, + -165, 120, -106, -165, -165, -165, -106, -106, -106, 344, + 7, 7, 283, 283, 7, 120, 345, 348, -157, 316, + -143, -31, 344, 87, 30, -143, -109, -110, -200, -111, + -77, 344, -69, -69, -80, -81, -104, -105, -105, -96, + -20, -202, 101, -20, 345, 348, -98, 29, -131, 344, + 345, 348, 286, 120, 289, 345, -153, -83, 220, 263, + 231, 251, 348, -229, -278, -69, -20, -77, -80, -77, + -197, -86, -96, -87, -69, -156, -155, -243, -244, -241, + 137, 298, 108, 30, 101, -65, 208, 30, 194, 184, + -61, 278, 101, -140, -225, 344, 336, -141, 242, 243, + 348, -54, 31, 91, 344, 345, -157, -199, -101, -195, + 342, -197, -77, -49, -196, 344, -229, -157, 345, -188, + -55, -77, -69, -69, 184, -155, 132, -60, 184, -204, + -69, 344, 344, 156, 156, -69, -69, 132, -69, 132, + -69, -69, -56, 230, -31, 344, -31, 344, -69, 230, + -69, -77, 230, -42, 131, 190, -45, 318, -235, 323, + -165, -165, 286, -287, 274, -172, -165, 176, 186, 292, + 107, 299, 92, 190, 120, 344, -166, -166, -106, -169, + 344, -106, 343, 352, 345, -165, 343, 343, 348, -184, + -185, 96, -165, -93, 348, -92, -165, -106, -106, 345, + 345, 286, 286, 286, 286, 344, -268, 202, 344, 344, + -165, 30, 348, 345, 120, 345, 345, -133, 210, 345, + 10, 11, 335, 336, 337, 338, 115, 339, 340, 333, + 334, 332, 327, 328, 329, 63, 172, 244, 13, 14, + 15, 152, 135, -166, -166, -166, -106, 344, 345, -170, + -171, 120, 117, 30, -129, -129, -129, 345, 120, -106, + 348, 348, 348, 345, 345, 345, 7, 345, 348, 345, + 323, 323, 345, 269, 120, -77, -120, 237, -165, -120, + -145, 194, -102, 310, -69, -120, -100, 348, 120, 329, + -102, -58, -58, -58, -197, -204, 342, 342, 7, -165, + -278, -278, -66, 296, 62, 220, -233, 348, -201, 345, + 345, 348, -70, 137, -70, -31, -104, 5, -31, -77, + 101, -62, 97, -286, 329, -69, -141, -165, -193, -20, + -117, 125, -201, 348, 70, -124, 155, 179, 121, 164, + 239, 140, 7, -20, -162, 349, 344, -192, 325, -49, + -196, -195, -117, 286, 286, 101, 184, 307, -245, -242, + -165, -95, -194, -69, -256, 344, -253, -254, -75, 344, + 344, -53, 95, 255, -136, 101, -58, 101, -58, 286, + -135, 65, -106, -106, 286, 286, -45, 120, 275, 196, + -165, -165, -166, -166, 120, 344, -165, -176, 26, 26, + 345, -106, 345, 348, -161, -165, 345, -174, 98, -165, + 282, 345, 312, -93, -93, -93, 5, 175, 130, 174, + -132, 174, -132, -132, 7, -269, -69, 344, 316, -92, + 345, -222, -204, -165, -170, -165, -222, -204, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, - -166, -166, -166, -166, -166, 92, 180, 186, -166, 344, - -106, 341, -171, -170, -165, -165, -204, 341, 341, 341, - -106, -165, -165, -165, 341, 7, 265, -108, 181, -120, - 64, 341, -157, -110, -101, -188, 341, 339, 7, 7, - 341, -69, -88, 134, -156, 340, -70, 340, 340, -91, - 340, -69, -63, 157, -286, -232, -259, 191, 341, 341, - -173, 125, 44, -195, 151, 151, -195, -124, 151, -122, - 197, -122, -122, -274, 340, 339, -192, -229, 338, 346, - -106, -191, -190, 30, -69, 195, 341, -173, -69, -69, - -155, 101, -246, 65, -247, 57, 108, 69, 180, 182, - 294, 211, 54, 87, 220, 341, 341, 344, -76, -113, - 57, -76, -165, 340, -95, -96, 180, 87, 180, 87, - 80, 290, -69, -69, -77, -69, -69, 341, 341, -69, - -77, -236, 279, 340, 26, 26, -165, -176, 341, -165, - -165, 341, -165, 339, -165, 5, -165, 341, 341, 341, - 341, -270, -69, -165, 341, 341, 341, -171, 118, 92, - 186, 340, -165, 341, 341, 344, 341, 341, 341, -144, - 340, 190, -31, -120, 325, 339, 339, 133, -95, 340, - -96, -86, 30, -95, 190, -64, 156, -286, -232, -61, - -265, 313, -165, -106, -195, -195, -123, 301, 190, 151, - -195, 339, 341, -275, 7, -192, -191, 7, -164, -163, - 116, 178, 341, -69, 340, -192, -265, -155, -69, -229, - -69, 108, 130, 182, 152, 340, -166, -77, -154, -283, - 68, 268, -194, -54, -229, -54, 341, -106, 341, 341, - 182, 182, -165, -204, -58, -58, 282, 282, 282, 282, - -168, -75, -69, -44, -43, 5, -165, -165, 341, 341, - -93, -264, 203, 341, -166, 118, 340, -176, 341, -165, - 93, -96, 65, -116, -49, 340, 201, 341, -95, 341, - 341, -31, 341, -77, -286, -232, -62, -266, -267, -69, - -123, 340, -165, -195, -162, 341, 344, -191, 339, 344, - 347, 325, -192, 340, -96, -190, -247, -70, 180, -165, - -71, 340, -88, 340, -76, -93, 220, -57, 57, -69, - -69, 340, 340, 340, 344, 341, -46, 325, 341, -93, - 44, -166, -176, 341, 341, 296, 181, 341, -69, -69, - -154, 341, -88, -154, 340, -232, -63, 344, 30, -96, - -192, 7, -163, -229, 338, -191, -96, 341, 101, 341, - -250, 169, -69, -96, -54, 341, -77, -52, 301, -229, - -106, -106, -106, -43, 5, -271, 215, 239, -106, 341, - 251, -157, 340, -88, -154, -88, -95, -64, -267, -269, - 341, -190, 7, 341, 108, -248, -251, -249, 190, 119, - 202, 256, 341, 341, -91, -165, 341, 341, -93, 341, - -272, -273, 36, 291, 72, -165, -272, -109, -96, -88, - 341, 339, -69, -249, 190, -251, 190, 296, 90, -250, - 341, -273, 208, 114, 238, 208, 114, -157, 341, -154, - -252, 177, 231, 48, 251, -252, -248, 26, -59, 48, - 231, -88, 20, 182, 87, -273, + -166, -166, -166, -166, -166, -166, -166, 92, 184, 190, + -166, 348, -106, 345, -171, -170, -165, -165, -204, 345, + 345, 345, -106, -165, -165, -165, 345, 7, 269, -108, + 185, -120, 64, 345, -157, -110, -101, -188, 345, 343, + 7, 7, 345, -69, -88, 136, -156, 344, -70, 344, + 344, -91, 344, -69, -63, 161, -286, -232, -259, 195, + 345, 345, -173, 127, 44, -195, 155, 155, -195, -124, + 155, -122, 201, -122, -122, -274, 344, 343, -192, -229, + 342, 350, -106, -191, -190, 30, -69, 199, 345, -173, + -69, -69, -155, 101, -246, 65, -247, 57, 108, 69, + 184, 186, 298, 215, 54, 87, 224, 345, 345, 348, + -76, -113, 57, -76, -165, 344, -95, -96, 184, 87, + 184, 87, 80, 294, -69, -69, -77, -69, -69, 345, + 345, -69, -77, -236, 283, 344, 26, 26, -165, -176, + 345, -165, -165, 345, -165, 343, -165, 5, -165, 345, + 345, 345, 345, -270, -69, -165, 345, 345, 345, -171, + 120, 92, 190, 344, -165, 345, 345, 348, 345, 345, + 345, -144, 344, 194, -31, -120, 329, 343, 343, 135, + -95, 344, -96, -86, 30, -95, 194, -64, 160, -286, + -232, -61, -265, 317, -165, -106, -195, -195, -123, 305, + 194, 155, -195, 343, 345, -275, 7, -192, -191, 7, + -164, -163, 118, 182, 345, -69, 344, -192, -265, -155, + -69, -229, -69, 108, 132, 186, 156, 344, -166, -77, + -154, -283, 68, 272, -194, -54, -229, -54, 345, -106, + 345, 345, 186, 186, -165, -204, -58, -58, 286, 286, + 286, 286, -168, -75, -69, -44, -43, 5, -165, -165, + 345, 345, -93, -264, 207, 345, -166, 120, 344, -176, + 345, -165, 93, -96, 65, -116, -49, 344, 205, 345, + -95, 345, 345, -31, 345, -77, -286, -232, -62, -266, + -267, -69, -123, 344, -165, -195, -162, 345, 348, -191, + 343, 348, 351, 329, -192, 344, -96, -190, -247, -70, + 184, -165, -71, 344, -88, 344, -76, -93, 224, -57, + 57, -69, -69, 344, 344, 344, 348, 345, -46, 329, + 345, -93, 44, -166, -176, 345, 345, 300, 185, 345, + -69, -69, -154, 345, -88, -154, 344, -232, -63, 348, + 30, -96, -192, 7, -163, -229, 342, -191, -96, 345, + 101, 345, -250, 173, -69, -96, -54, 345, -77, -52, + 305, -229, -106, -106, -106, -43, 5, -271, 219, 243, + -106, 345, 255, -157, 344, -88, -154, -88, -95, -64, + -267, -269, 345, -190, 7, 345, 108, -248, -251, -249, + 194, 121, 206, 260, 345, 345, -91, -165, 345, 345, + -93, 345, -272, -273, 36, 295, 72, -165, -272, -109, + -96, -88, 345, 343, -69, -249, 194, -251, 194, 300, + 90, -250, 345, -273, 212, 116, 242, 212, 116, -157, + 345, -154, -252, 181, 235, 48, 255, -252, -248, 26, + -59, 48, 235, -88, 20, 186, 87, -273, } var sqlDef = [...]int{ @@ -5456,233 +5459,234 @@ var sqlDef = [...]int{ 0, 165, 0, 371, 0, 371, 371, 375, 0, 0, 457, 0, 336, 454, -2, 465, 0, 0, 0, 463, 441, 0, 0, -2, 0, 0, 0, 0, 0, 139, - 0, 994, 922, 928, 929, 953, 954, 955, 972, 973, - 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, - 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, - 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, - 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, - 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, - 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, - 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, - 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, - 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, - 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, - 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, - 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, - 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, - 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, - 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, - 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, - 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, - 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, - 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, - 1165, 1166, 1167, 1168, 1169, 1170, 1171, 0, 0, 0, - 0, 924, 994, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 109, 0, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 0, 247, 967, - 968, 969, 970, 971, 1172, 1173, 1174, 1175, 1176, 1177, - 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, - 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, - 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, - 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, - 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, - 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, - 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, - 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, - 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 129, - 132, 133, 1050, 135, 0, 142, 143, 144, 146, 147, - 148, 149, 150, 151, 152, 0, 0, 0, 364, 1077, - 377, 160, 1026, 1082, 982, 1158, 1101, 168, 173, 0, - 1164, 176, 181, -2, 105, 207, 208, 209, 210, 211, - 212, 0, 0, 0, 218, 249, 0, 0, 0, 0, - 0, 225, 0, 0, 0, 232, 236, 0, 0, 0, - 243, 0, 0, 379, 370, 379, 367, 368, 369, 372, - 0, 362, 155, 156, 157, 158, 0, 456, 159, 184, - 185, 186, 195, 196, 197, 198, 325, 0, 327, 205, - 206, 949, 0, 963, 964, 965, 966, 0, 0, 0, - 0, 0, 335, -2, 437, 438, -2, 0, 460, 460, - 460, 0, 0, 438, 0, 446, 1056, 449, 935, 447, - 0, 0, 462, 461, 0, 442, 542, 0, 491, 0, - 2, 0, 1142, 542, 0, 1142, 927, 0, 0, 1142, - 0, 0, 140, 141, 932, 930, 931, 0, 0, 84, - 646, 0, 0, 0, 0, 0, 0, 738, 740, 1136, - 1158, 0, 742, 743, 0, 745, 747, 748, 0, 751, - 752, 892, 924, 938, 939, 940, 941, 0, 0, 944, - 0, 946, 947, 948, 792, 761, -2, -2, 936, 578, - 579, 580, 581, -2, 1172, 765, 767, 769, 770, 771, - 772, 0, 1120, 1137, 1138, 1154, 1155, 1163, 1167, 1168, - 1142, 1151, 1143, 1132, 1140, 1149, 999, -2, -2, -2, + 0, 998, 926, 932, 933, 957, 958, 959, 976, 977, + 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, + 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, + 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, + 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, + 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, + 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, + 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, + 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, + 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, + 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, + 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, + 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, + 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, + 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, + 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, + 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, + 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, + 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, + 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, + 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, + 1179, 0, 0, 0, 0, 928, 998, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 109, 0, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 0, 247, 971, 972, 973, 974, 975, 1180, 1181, + 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, + 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, + 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, + 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, + 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, + 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, + 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, + 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, + 1272, 1273, 1274, 129, 132, 133, 1054, 135, 0, 142, + 143, 144, 146, 147, 148, 149, 150, 151, 152, 0, + 0, 0, 364, 1081, 377, 160, 1030, 1086, 986, 1166, + 1105, 168, 173, 0, 1172, 176, 181, -2, 105, 207, + 208, 209, 210, 211, 212, 0, 0, 0, 218, 249, + 0, 0, 0, 0, 0, 225, 0, 0, 0, 232, + 236, 0, 0, 0, 243, 0, 0, 379, 370, 379, + 367, 368, 369, 372, 0, 362, 155, 156, 157, 158, + 0, 456, 159, 184, 185, 186, 195, 196, 197, 198, + 325, 0, 327, 205, 206, 953, 0, 967, 968, 969, + 970, 0, 0, 0, 0, 0, 335, -2, 437, 438, + -2, 0, 460, 460, 460, 0, 0, 438, 0, 446, + 1060, 449, 939, 447, 0, 0, 462, 461, 0, 442, + 542, 0, 491, 0, 2, 0, 1148, 542, 0, 1148, + 931, 0, 0, 1148, 0, 0, 140, 141, 936, 934, + 935, 0, 0, 84, 650, 0, 0, 0, 0, 0, + 0, 742, 744, 1140, 1166, 0, 746, 747, 0, 749, + 751, 752, 0, 755, 756, 896, 928, 942, 943, 944, + 945, 0, 0, 948, 0, 950, 951, 952, 796, 765, + -2, -2, 940, 578, 579, 580, 581, -2, 1180, 769, + 771, 773, 774, 775, 776, 0, 1124, 1141, 1142, 1162, + 1163, 1171, 1175, 1176, 1148, 1159, 1149, 1136, 1146, 1157, + 1003, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, - -2, -2, -2, -2, -2, -2, -2, -2, 962, 608, - 609, 614, 615, 617, 85, 0, 0, 925, 901, 899, - 900, 0, 0, 0, 0, 548, 93, 1142, 59, 1142, - 920, 59, 1142, 103, 59, 1142, 101, 1142, 0, 124, - 126, 1170, 0, 0, 0, 0, 130, 0, 134, 136, - 0, 0, 252, 363, 0, 376, 161, 1131, 163, 0, - 0, 167, 380, 382, 383, 384, 0, 0, 0, 0, - 0, 0, 0, 177, 178, 179, 106, 0, 455, 0, - 213, 68, 69, 0, 226, 233, 0, 251, 0, 0, - 0, 0, 0, 0, 227, 234, 228, 0, 0, 0, - 237, 0, 239, 240, 0, 0, 0, 0, 365, 378, - 366, 0, 374, 59, 546, 326, 951, 950, 308, 1142, - 453, 308, 957, 453, 1142, -2, 0, 433, 472, 473, - 0, 0, 0, 0, 458, 459, 0, 0, 0, 429, - 430, 0, 448, 0, 0, 494, 912, 916, 917, 494, - 492, 543, 544, 0, 0, 909, 907, 908, 36, 359, - 38, 0, 359, 359, 0, 0, 0, 0, 257, 0, - 0, 259, 0, 0, 0, 0, 0, 0, 533, 923, - 0, 897, 898, 533, 70, 0, 0, 0, 0, 827, - 828, 829, 830, 831, 832, 835, 836, 833, 834, 837, - 838, 839, 0, 0, 0, 840, 841, 842, 0, 0, - 844, 0, 846, 0, 0, 0, 0, 0, 0, 906, - 0, 0, 843, 651, 652, 653, 675, 676, 0, 739, - 903, 896, 741, 0, -2, 848, 0, 744, 749, 750, - 0, 0, 891, -2, 0, 943, 0, 643, 794, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 871, 877, - 0, 0, 0, 0, 0, 0, 0, 0, 593, 611, - 622, 619, 618, 595, 0, 594, 592, 0, 596, 0, - 0, 0, 81, 0, 0, 918, 902, 552, 0, 404, - 0, 0, 549, 0, 0, 95, 0, 57, 58, 0, - 97, 0, 0, 99, 0, 0, 455, 0, 0, 1142, - 0, 455, 0, 850, 560, 561, 562, 563, 564, 643, - 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 585, 586, 587, 588, 589, 590, 591, 605, 0, - 584, 584, 584, 597, 598, 606, 607, 612, 613, 624, - 625, 627, 629, 623, 623, 623, 620, 621, 0, 848, - 0, 145, 0, 0, 164, 0, 0, 0, 0, 385, - 192, 193, 194, 387, 388, 169, 171, 182, 170, 172, - 174, 175, 199, 200, 201, 202, 203, 204, 0, 0, - 107, 230, 216, 214, 215, 217, 219, 0, 248, 220, - 221, 222, 223, 224, 229, 455, 235, 238, 241, 242, - 0, 0, 0, 373, 328, 0, 266, 0, 0, 331, - 452, 0, 0, 0, 1142, 956, 392, 0, 436, 470, - 471, 474, 478, 479, 482, 485, 486, 476, 646, 443, - 444, 445, 466, 467, 346, 450, 0, 0, 552, 0, - 0, 0, 915, 552, 0, 0, 911, 0, 0, 0, - 0, 358, 40, 1142, 0, 61, 0, 0, 298, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 255, 0, 0, 256, 0, 0, 0, 926, 0, 0, - 0, 73, 0, 933, 80, 0, 647, 556, 557, 599, - 600, 601, 602, 603, 648, 649, 0, 654, 655, 656, - 657, 658, 659, 660, 661, 662, 663, -2, -2, -2, - 667, 668, 669, -2, -2, -2, 673, 674, -2, 845, - 847, 0, 906, 0, -2, 0, -2, -2, -2, -2, - 687, 0, 689, 692, 694, 696, 0, 0, 0, 0, - 905, 706, 883, 0, 0, 824, 825, 826, 691, 0, - 0, 904, 895, 0, 0, -2, 746, 0, 0, 0, - 854, 855, 890, 886, 0, 753, 465, 0, 0, 0, - 0, 0, 952, 630, 631, 632, 633, 634, 635, 644, - 802, 0, 0, 0, 766, 768, 0, 0, 0, 0, - 858, -2, -2, -2, -2, -2, -2, -2, 0, 0, - 848, 868, 0, 0, 709, 0, 0, 0, 0, 1158, - 0, 848, 876, 0, 0, 0, 0, 0, 848, 0, - 882, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 416, 0, 416, 406, - 0, 0, 0, 416, 419, 420, 422, 423, 0, 0, - 550, 94, 921, 59, 104, 59, 59, 102, 110, 125, - 0, 127, 128, 0, 553, 555, 565, 0, 131, 0, - 0, 0, 0, 166, 381, 386, 0, 189, 0, 191, - 0, 108, 250, 153, 231, 244, 245, 533, 547, 0, - 0, 265, 932, 267, 269, 270, 271, 272, 957, 0, - 957, 0, 0, 329, 0, 0, 0, 0, 394, 400, - 0, 0, 480, 0, 0, 477, 483, 484, 0, 469, - 344, 345, 455, 934, 488, 913, 533, 495, 455, 505, - 542, 519, 510, 0, 914, 488, 545, 910, 39, 348, - 0, 0, 0, 42, 1142, 50, 0, 280, 0, 0, - 0, 0, 0, 361, 51, 1142, 59, 1142, 59, 52, - 37, 359, 253, 0, 254, 0, 352, 0, 347, 350, - 0, 80, 0, 0, 67, 0, 71, 0, -2, -2, - 0, 0, 0, 707, -2, 688, 690, 693, 695, 697, - 0, 0, 0, 0, 0, 0, 0, 708, 0, 0, - 893, 896, -2, 849, 852, 853, 0, 0, 887, 0, - 0, 0, 0, 464, 465, 465, 465, 759, 0, 0, - 0, 0, 0, 0, 760, 0, 0, 0, 0, 0, - 0, 775, 0, 776, 777, 0, 0, 778, 0, 0, + -2, -2, -2, -2, -2, -2, 966, 612, 613, 618, + 619, 621, 85, 0, 0, 929, 905, 903, 904, 0, + 0, 0, 0, 548, 93, 1148, 59, 1148, 924, 59, + 1148, 103, 59, 1148, 101, 1148, 0, 124, 126, 1178, + 0, 0, 0, 0, 130, 0, 134, 136, 0, 0, + 252, 363, 0, 376, 161, 1135, 163, 0, 0, 167, + 380, 382, 383, 384, 0, 0, 0, 0, 0, 0, + 0, 177, 178, 179, 106, 0, 455, 0, 213, 68, + 69, 0, 226, 233, 0, 251, 0, 0, 0, 0, + 0, 0, 227, 234, 228, 0, 0, 0, 237, 0, + 239, 240, 0, 0, 0, 0, 365, 378, 366, 0, + 374, 59, 546, 326, 955, 954, 308, 1148, 453, 308, + 961, 453, 1148, -2, 0, 433, 472, 473, 0, 0, + 0, 0, 458, 459, 0, 0, 0, 429, 430, 0, + 448, 0, 0, 494, 916, 920, 921, 494, 492, 543, + 544, 0, 0, 913, 911, 912, 36, 359, 38, 0, + 359, 359, 0, 0, 0, 0, 257, 0, 0, 259, + 0, 0, 0, 0, 0, 0, 533, 927, 0, 901, + 902, 533, 70, 0, 0, 0, 0, 831, 832, 833, + 834, 835, 836, 839, 840, 837, 838, 841, 842, 843, + 0, 0, 0, 844, 845, 846, 0, 0, 848, 0, + 850, 0, 0, 0, 0, 0, 0, 910, 0, 0, + 847, 655, 656, 657, 679, 680, 0, 743, 907, 900, + 745, 0, -2, 852, 0, 748, 753, 754, 0, 0, + 895, -2, 0, 947, 0, 647, 798, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 875, 881, 0, 0, + 0, 0, 0, 0, 0, 0, 597, 615, 626, 623, + 622, 599, 0, 598, 596, 0, 600, 0, 0, 0, + 81, 0, 0, 922, 906, 552, 0, 404, 0, 0, + 549, 0, 0, 95, 0, 57, 58, 0, 97, 0, + 0, 99, 0, 0, 455, 0, 0, 1148, 0, 455, + 0, 854, 560, 561, 562, 563, 564, 647, 567, 568, + 569, 570, 571, 572, 573, 574, 575, 576, 577, 585, + 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, + 609, 0, 584, 584, 584, 601, 602, 610, 611, 616, + 617, 628, 629, 631, 633, 627, 627, 627, 624, 625, + 0, 852, 0, 145, 0, 0, 164, 0, 0, 0, + 0, 385, 192, 193, 194, 387, 388, 169, 171, 182, + 170, 172, 174, 175, 199, 200, 201, 202, 203, 204, + 0, 0, 107, 230, 216, 214, 215, 217, 219, 0, + 248, 220, 221, 222, 223, 224, 229, 455, 235, 238, + 241, 242, 0, 0, 0, 373, 328, 0, 266, 0, + 0, 331, 452, 0, 0, 0, 1148, 960, 392, 0, + 436, 470, 471, 474, 478, 479, 482, 485, 486, 476, + 650, 443, 444, 445, 466, 467, 346, 450, 0, 0, + 552, 0, 0, 0, 919, 552, 0, 0, 915, 0, + 0, 0, 0, 358, 40, 1148, 0, 61, 0, 0, + 298, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 255, 0, 0, 256, 0, 0, 0, 930, + 0, 0, 0, 73, 0, 937, 80, 0, 651, 556, + 557, 603, 604, 605, 606, 607, 652, 653, 0, 658, + 659, 660, 661, 662, 663, 664, 665, 666, 667, -2, + -2, -2, 671, 672, 673, -2, -2, -2, 677, 678, + -2, 849, 851, 0, 910, 0, -2, 0, -2, -2, + -2, -2, 691, 0, 693, 696, 698, 700, 0, 0, + 0, 0, 909, 710, 887, 0, 0, 828, 829, 830, + 695, 0, 0, 908, 899, 0, 0, -2, 750, 0, + 0, 0, 858, 859, 894, 890, 0, 757, 465, 0, + 0, 0, 0, 0, 956, 634, 635, 636, 637, 638, + 639, 648, 806, 0, 0, 0, 770, 772, 0, 0, + 0, 0, 862, -2, -2, -2, -2, -2, -2, -2, + 0, 0, 852, 872, 0, 0, 713, 0, 0, 0, + 0, 1166, 0, 852, 880, 0, 0, 0, 0, 0, + 852, 0, 886, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 416, 406, 0, 0, 0, 416, 419, 420, 422, 423, + 0, 0, 550, 94, 925, 59, 104, 59, 59, 102, + 110, 125, 0, 127, 128, 0, 553, 555, 565, 0, + 131, 0, 0, 0, 0, 166, 381, 386, 0, 189, + 0, 191, 0, 108, 250, 153, 231, 244, 245, 533, + 547, 0, 0, 265, 936, 267, 269, 270, 271, 272, + 961, 0, 961, 0, 0, 329, 0, 0, 0, 0, + 394, 400, 0, 0, 480, 0, 0, 477, 483, 484, + 0, 469, 344, 345, 455, 938, 488, 917, 533, 495, + 455, 505, 542, 519, 510, 0, 918, 488, 545, 914, + 39, 348, 0, 0, 0, 42, 1148, 50, 0, 280, + 0, 0, 0, 0, 0, 361, 51, 1148, 59, 1148, + 59, 52, 37, 359, 253, 0, 254, 0, 352, 0, + 347, 350, 0, 80, 0, 0, 67, 0, 71, 0, + -2, -2, 0, 0, 0, 711, -2, 692, 694, 697, + 699, 701, 0, 0, 0, 0, 0, 0, 0, 712, + 0, 0, 897, 900, -2, 853, 856, 857, 0, 0, + 891, 0, 0, 0, 0, 464, 465, 465, 465, 763, + 0, 0, 0, 0, 0, 0, 764, 0, 0, 0, + 0, 0, 0, 779, 0, 780, 781, 0, 0, 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 712, 713, 714, 0, 0, 779, 874, 875, 0, - 0, 0, 0, 0, 0, 784, 0, 881, 0, 0, - 0, 788, 789, 790, 0, 582, 0, 604, 626, 628, - 616, 82, 0, 919, 92, 0, 551, 401, 416, 0, - 0, 408, 405, 403, 552, 0, 0, 0, 0, 96, - 98, 100, 0, 851, 0, 0, 0, 849, 137, 138, - 162, 187, 188, 190, 183, 0, 246, 274, 307, 0, - 0, 957, 0, 263, 308, 330, 332, 0, 0, 396, - 400, 0, 399, 453, 0, 0, 468, 0, 490, 0, - 493, 0, 0, 0, 0, 0, 539, 539, 539, 537, - 513, 0, 519, 0, 0, 531, 0, -2, 510, 0, - 490, 0, 0, 0, 0, 60, 278, 297, 0, 0, - 337, 343, 343, 0, 762, 763, 0, 0, 0, 44, - 0, 0, 0, 0, 48, 0, 54, 0, 0, 0, - 0, 0, 0, 0, 66, 0, 0, 0, 650, -2, - 0, 0, 0, 0, -2, 0, 0, 0, 884, 0, - 819, 0, 0, 895, -2, 856, 885, 889, 0, 754, - 0, 0, 0, 0, 945, 636, 637, 638, 639, 640, - 641, 642, 0, 800, 801, 805, 0, 0, 764, 0, - 0, 857, 867, 869, 710, 711, 715, 716, 717, 718, - 719, 720, 721, 722, 723, 724, -2, -2, -2, 728, - 729, 730, -2, -2, -2, 0, 0, 0, 870, 0, - 0, 822, 872, 873, 878, 879, 0, 781, 782, 783, - 880, 0, 0, 0, 610, 0, 83, 414, 415, 402, - 413, 0, 416, 421, 418, 424, 0, 558, 0, 0, - 566, 154, 261, 0, 268, 0, 0, 0, 266, 0, - 0, 0, 398, 400, 0, 391, 392, 475, 481, 451, - 796, 0, 0, 496, 0, 0, 0, 0, 0, 534, - 538, 535, 536, 0, 0, 519, 531, 502, 0, 0, - 0, 509, 530, 0, 529, 518, -2, 796, 354, 356, - 41, 0, 279, 0, 282, 0, 0, 0, 0, 288, - 289, 0, 0, 0, 0, 299, 306, 0, 346, 937, - 0, 346, 0, 0, 0, 0, 0, 56, 0, 0, - 360, 0, 59, 59, 349, 0, 0, 0, 0, 353, - 351, 72, 0, 0, 0, 0, -2, 0, 700, -2, - -2, 818, 849, 894, 888, 942, 465, 755, 757, 758, - 645, 807, 804, 0, 791, 773, 774, 866, 0, 0, - 0, 0, 849, 821, 780, 0, 786, 787, 583, 0, - 0, 0, 407, 417, 0, 559, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 389, 400, 0, 393, 394, - 439, 0, 489, 487, 521, 0, 523, 0, 0, 0, - 525, 505, 514, 0, 516, 531, 507, 0, 0, 500, - 0, 499, 519, 527, 0, 0, 440, 43, 0, 283, - 284, 957, 0, 287, 290, 0, 292, 959, 274, 0, - 303, 304, 338, 339, 342, 340, 343, 465, 301, 0, - 45, 46, 55, 63, 47, 53, 0, 0, 0, 0, - 532, 0, 0, 0, 77, 75, -2, -2, 701, 820, - 0, 465, 0, 793, -2, 0, 0, 0, 823, 0, - 0, 0, 0, 425, 426, 0, 0, 306, 0, 296, - 274, 264, 306, 0, 0, 395, 396, 795, 797, 0, - 522, 0, 541, 524, 519, 515, 0, 512, 503, 0, - 504, 0, 531, 0, 0, 511, 281, 285, 0, 0, - 312, 0, 300, 0, 346, 0, 0, 65, 0, 355, - 357, 0, 0, 0, 0, 79, 76, 0, 756, 810, - 0, -2, 0, 736, 785, 0, 410, 552, 412, 0, - 274, 306, 262, 274, 0, 397, 398, 0, 0, 0, - 0, 517, 501, 497, 0, 508, 0, 528, 0, 291, - 317, 0, 0, 0, 341, 754, 308, 49, 0, 62, - 0, 0, 465, 78, 74, 0, 0, 0, 806, 737, - 0, 411, 0, 294, 274, 333, 0, 390, 798, 799, - 540, 506, 0, 526, 0, 293, 313, 314, 0, 309, - 310, 311, 958, 305, 312, 64, 258, 260, 0, 803, - 808, 811, -2, 1104, 991, 0, 809, 552, 0, 295, - 306, 498, 286, 315, 0, 316, 0, 0, 0, 317, - 0, 0, 813, 814, 815, 816, 817, 409, 277, 274, - 318, 0, 321, 322, 0, 319, 302, 0, 273, 275, - 276, 334, 320, 323, 324, 812, + 0, 0, 0, 716, 717, 718, 0, 0, 783, 878, + 879, 0, 0, 0, 0, 0, 0, 788, 0, 885, + 0, 0, 0, 792, 793, 794, 0, 582, 0, 608, + 630, 632, 620, 82, 0, 923, 92, 0, 551, 401, + 416, 0, 0, 408, 405, 403, 552, 0, 0, 0, + 0, 96, 98, 100, 0, 855, 0, 0, 0, 853, + 137, 138, 162, 187, 188, 190, 183, 0, 246, 274, + 307, 0, 0, 961, 0, 263, 308, 330, 332, 0, + 0, 396, 400, 0, 399, 453, 0, 0, 468, 0, + 490, 0, 493, 0, 0, 0, 0, 0, 539, 539, + 539, 537, 513, 0, 519, 0, 0, 531, 0, -2, + 510, 0, 490, 0, 0, 0, 0, 60, 278, 297, + 0, 0, 337, 343, 343, 0, 766, 767, 0, 0, + 0, 44, 0, 0, 0, 0, 48, 0, 54, 0, + 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, + 654, -2, 0, 0, 0, 0, -2, 0, 0, 0, + 888, 0, 823, 0, 0, 899, -2, 860, 889, 893, + 0, 758, 0, 0, 0, 0, 949, 640, 641, 642, + 643, 644, 645, 646, 0, 804, 805, 809, 0, 0, + 768, 0, 0, 861, 871, 873, 714, 715, 719, 720, + 721, 722, 723, 724, 725, 726, 727, 728, -2, -2, + -2, 732, 733, 734, -2, -2, -2, 0, 0, 0, + 874, 0, 0, 826, 876, 877, 882, 883, 0, 785, + 786, 787, 884, 0, 0, 0, 614, 0, 83, 414, + 415, 402, 413, 0, 416, 421, 418, 424, 0, 558, + 0, 0, 566, 154, 261, 0, 268, 0, 0, 0, + 266, 0, 0, 0, 398, 400, 0, 391, 392, 475, + 481, 451, 800, 0, 0, 496, 0, 0, 0, 0, + 0, 534, 538, 535, 536, 0, 0, 519, 531, 502, + 0, 0, 0, 509, 530, 0, 529, 518, -2, 800, + 354, 356, 41, 0, 279, 0, 282, 0, 0, 0, + 0, 288, 289, 0, 0, 0, 0, 299, 306, 0, + 346, 941, 0, 346, 0, 0, 0, 0, 0, 56, + 0, 0, 360, 0, 59, 59, 349, 0, 0, 0, + 0, 353, 351, 72, 0, 0, 0, 0, -2, 0, + 704, -2, -2, 822, 853, 898, 892, 946, 465, 759, + 761, 762, 649, 811, 808, 0, 795, 777, 778, 870, + 0, 0, 0, 0, 853, 825, 784, 0, 790, 791, + 583, 0, 0, 0, 407, 417, 0, 559, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 389, 400, 0, + 393, 394, 439, 0, 489, 487, 521, 0, 523, 0, + 0, 0, 525, 505, 514, 0, 516, 531, 507, 0, + 0, 500, 0, 499, 519, 527, 0, 0, 440, 43, + 0, 283, 284, 961, 0, 287, 290, 0, 292, 963, + 274, 0, 303, 304, 338, 339, 342, 340, 343, 465, + 301, 0, 45, 46, 55, 63, 47, 53, 0, 0, + 0, 0, 532, 0, 0, 0, 77, 75, -2, -2, + 705, 824, 0, 465, 0, 797, -2, 0, 0, 0, + 827, 0, 0, 0, 0, 425, 426, 0, 0, 306, + 0, 296, 274, 264, 306, 0, 0, 395, 396, 799, + 801, 0, 522, 0, 541, 524, 519, 515, 0, 512, + 503, 0, 504, 0, 531, 0, 0, 511, 281, 285, + 0, 0, 312, 0, 300, 0, 346, 0, 0, 65, + 0, 355, 357, 0, 0, 0, 0, 79, 76, 0, + 760, 814, 0, -2, 0, 740, 789, 0, 410, 552, + 412, 0, 274, 306, 262, 274, 0, 397, 398, 0, + 0, 0, 0, 517, 501, 497, 0, 508, 0, 528, + 0, 291, 317, 0, 0, 0, 341, 758, 308, 49, + 0, 62, 0, 0, 465, 78, 74, 0, 0, 0, + 810, 741, 0, 411, 0, 294, 274, 333, 0, 390, + 802, 803, 540, 506, 0, 526, 0, 293, 313, 314, + 0, 309, 310, 311, 962, 305, 312, 64, 258, 260, + 0, 807, 812, 815, -2, 1108, 995, 0, 813, 552, + 0, 295, 306, 498, 286, 315, 0, 316, 0, 0, + 0, 317, 0, 0, 817, 818, 819, 820, 821, 409, + 277, 274, 318, 0, 321, 322, 0, 319, 302, 0, + 273, 275, 276, 334, 320, 323, 324, 816, } var sqlTok1 = [...]int{ 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 329, 3, 335, 330, 3, - 340, 341, 333, 331, 344, 332, 342, 334, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 348, 343, - 323, 325, 324, 3, 345, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 333, 3, 339, 334, 3, + 344, 345, 337, 335, 348, 336, 346, 338, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 352, 347, + 327, 329, 328, 3, 349, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 338, 3, 339, 336, 3, 3, 3, 3, 3, + 3, 342, 3, 343, 340, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 346, 328, 347, 326, + 3, 3, 3, 350, 332, 351, 330, } var sqlTok2 = [...]int{ @@ -5727,7 +5731,8 @@ var sqlTok3 = [...]int{ 57650, 308, 57651, 309, 57652, 310, 57653, 311, 57654, 312, 57655, 313, 57656, 314, 57657, 315, 57658, 316, 57659, 317, 57660, 318, 57661, 319, 57662, 320, 57663, 321, 57664, 322, - 57665, 327, 57666, 337, 0, + 57665, 323, 57666, 324, 57667, 325, 57668, 326, 57669, 331, + 57670, 341, 0, } var sqlErrorMessages = [...]struct { @@ -9354,41 +9359,65 @@ sqldefault: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3591 { - sqlVAL.union.val = intColTypeInt8 + sqlVAL.union.val = intColTypeInt2 } case 587: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3595 { - sqlVAL.union.val = intColTypeInt64 + sqlVAL.union.val = intColTypeInt4 } case 588: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3599 { - sqlVAL.union.val = intColTypeInteger + sqlVAL.union.val = intColTypeInt8 } case 589: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3603 { - sqlVAL.union.val = intColTypeSmallInt + sqlVAL.union.val = intColTypeInt64 } case 590: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3607 { - sqlVAL.union.val = intColTypeBigInt + sqlVAL.union.val = intColTypeInteger } case 591: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3611 { - sqlVAL.union.val = floatColTypeReal + sqlVAL.union.val = intColTypeSmallInt } case 592: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] + sqlDollar = sqlS[sqlpt-1 : sqlpt+1] //line sql.y:3615 + { + sqlVAL.union.val = intColTypeBigInt + } + case 593: + sqlDollar = sqlS[sqlpt-1 : sqlpt+1] + //line sql.y:3619 + { + sqlVAL.union.val = floatColTypeReal + } + case 594: + sqlDollar = sqlS[sqlpt-1 : sqlpt+1] + //line sql.y:3623 + { + sqlVAL.union.val = floatColTypeFloat4 + } + case 595: + sqlDollar = sqlS[sqlpt-1 : sqlpt+1] + //line sql.y:3627 + { + sqlVAL.union.val = floatColTypeFloat8 + } + case 596: + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] + //line sql.y:3631 { nv := sqlDollar[2].union.numVal() prec, err := nv.AsInt64() @@ -9398,15 +9427,15 @@ sqldefault: } sqlVAL.union.val = NewFloatColType(int(prec), len(nv.OrigString) > 0) } - case 593: + case 597: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3625 + //line sql.y:3641 { sqlVAL.union.val = floatColTypeDouble } - case 594: + case 598: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3629 + //line sql.y:3645 { sqlVAL.union.val = sqlDollar[2].union.colType() if sqlVAL.union.val == nil { @@ -9415,9 +9444,9 @@ sqldefault: sqlVAL.union.val.(*DecimalColType).Name = "DECIMAL" } } - case 595: + case 599: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3638 + //line sql.y:3654 { sqlVAL.union.val = sqlDollar[2].union.colType() if sqlVAL.union.val == nil { @@ -9426,9 +9455,9 @@ sqldefault: sqlVAL.union.val.(*DecimalColType).Name = "DEC" } } - case 596: + case 600: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3647 + //line sql.y:3663 { sqlVAL.union.val = sqlDollar[2].union.colType() if sqlVAL.union.val == nil { @@ -9437,63 +9466,63 @@ sqldefault: sqlVAL.union.val.(*DecimalColType).Name = "NUMERIC" } } - case 597: + case 601: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3656 + //line sql.y:3672 { sqlVAL.union.val = boolColTypeBoolean } - case 598: + case 602: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3660 + //line sql.y:3676 { sqlVAL.union.val = boolColTypeBool } - case 599: + case 603: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3667 + //line sql.y:3683 { sqlVAL.union.val = oidColTypeRegProc } - case 600: + case 604: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3671 + //line sql.y:3687 { sqlVAL.union.val = oidColTypeRegProcedure } - case 601: + case 605: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3675 + //line sql.y:3691 { sqlVAL.union.val = oidColTypeRegClass } - case 602: + case 606: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3679 + //line sql.y:3695 { sqlVAL.union.val = oidColTypeRegType } - case 603: + case 607: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3683 + //line sql.y:3699 { sqlVAL.union.val = oidColTypeRegNamespace } - case 604: + case 608: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3689 + //line sql.y:3705 { sqlVAL.union.val = sqlDollar[2].union.numVal() } - case 605: + case 609: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:3693 + //line sql.y:3709 { sqlVAL.union.val = &NumVal{Value: constant.MakeInt64(0)} } - case 610: + case 614: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:3711 + //line sql.y:3727 { n, err := sqlDollar[4].union.numVal().AsInt64() if err != nil { @@ -9507,15 +9536,15 @@ sqldefault: } sqlVAL.union.val = bit } - case 611: + case 615: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3727 + //line sql.y:3743 { sqlVAL.union.val = intColTypeBit } - case 616: + case 620: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:3743 + //line sql.y:3759 { n, err := sqlDollar[3].union.numVal().AsInt64() if err != nil { @@ -9529,547 +9558,547 @@ sqldefault: sqlVAL.union.val = strType } } - case 617: + case 621: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3759 + //line sql.y:3775 { sqlVAL.union.val = sqlDollar[1].union.colType() } - case 618: + case 622: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3765 + //line sql.y:3781 { sqlVAL.union.val = stringColTypeChar } - case 619: + case 623: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3769 + //line sql.y:3785 { sqlVAL.union.val = stringColTypeChar } - case 620: + case 624: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3773 + //line sql.y:3789 { sqlVAL.union.val = stringColTypeVarChar } - case 621: + case 625: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3777 + //line sql.y:3793 { sqlVAL.union.val = stringColTypeString } - case 622: + case 626: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3782 + //line sql.y:3798 { } - case 623: + case 627: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:3783 + //line sql.y:3799 { } - case 624: + case 628: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3788 + //line sql.y:3804 { sqlVAL.union.val = dateColTypeDate } - case 625: + case 629: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3792 + //line sql.y:3808 { sqlVAL.union.val = timestampColTypeTimestamp } - case 626: + case 630: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:3796 + //line sql.y:3812 { sqlVAL.union.val = timestampColTypeTimestamp } - case 627: + case 631: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3800 + //line sql.y:3816 { sqlVAL.union.val = timestampTzColTypeTimestampWithTZ } - case 628: + case 632: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:3804 + //line sql.y:3820 { sqlVAL.union.val = timestampTzColTypeTimestampWithTZ } - case 629: + case 633: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3809 + //line sql.y:3825 { sqlVAL.union.val = intervalColTypeInterval } - case 630: + case 634: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3815 + //line sql.y:3831 { sqlVAL.union.val = year } - case 631: + case 635: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3819 + //line sql.y:3835 { sqlVAL.union.val = month } - case 632: + case 636: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3823 + //line sql.y:3839 { sqlVAL.union.val = day } - case 633: + case 637: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3827 + //line sql.y:3843 { sqlVAL.union.val = hour } - case 634: + case 638: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3831 + //line sql.y:3847 { sqlVAL.union.val = minute } - case 635: + case 639: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3835 + //line sql.y:3851 { sqlVAL.union.val = sqlDollar[1].union.durationField() } - case 636: + case 640: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3841 + //line sql.y:3857 { sqlVAL.union.val = month } - case 637: + case 641: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3845 + //line sql.y:3861 { sqlVAL.union.val = hour } - case 638: + case 642: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3849 + //line sql.y:3865 { sqlVAL.union.val = minute } - case 639: + case 643: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3853 + //line sql.y:3869 { sqlVAL.union.val = sqlDollar[3].union.durationField() } - case 640: + case 644: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3857 + //line sql.y:3873 { sqlVAL.union.val = minute } - case 641: + case 645: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3861 + //line sql.y:3877 { sqlVAL.union.val = sqlDollar[3].union.durationField() } - case 642: + case 646: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3865 + //line sql.y:3881 { sqlVAL.union.val = sqlDollar[3].union.durationField() } - case 643: + case 647: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:3869 + //line sql.y:3885 { sqlVAL.union.val = nil } - case 644: + case 648: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:3875 + //line sql.y:3891 { sqlVAL.union.val = second } - case 645: + case 649: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:3878 + //line sql.y:3894 { return unimplemented(sqllex, "interval_second") } - case 647: + case 651: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3902 + //line sql.y:3918 { sqlVAL.union.val = &CastExpr{Expr: sqlDollar[1].union.expr(), Type: sqlDollar[3].union.castTargetType(), syntaxMode: castShort} } - case 648: + case 652: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3906 + //line sql.y:3922 { sqlVAL.union.val = &AnnotateTypeExpr{Expr: sqlDollar[1].union.expr(), Type: sqlDollar[3].union.colType(), syntaxMode: annotateShort} } - case 649: + case 653: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3910 + //line sql.y:3926 { sqlVAL.union.val = &CollateExpr{Expr: sqlDollar[1].union.expr(), Locale: sqlDollar[3].str} } - case 650: + case 654: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:3913 + //line sql.y:3929 { return unimplemented(sqllex, "at tz") } - case 651: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3922 - { - sqlVAL.union.val = &UnaryExpr{Operator: UnaryPlus, Expr: sqlDollar[2].union.expr()} - } - case 652: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3926 - { - sqlVAL.union.val = &UnaryExpr{Operator: UnaryMinus, Expr: sqlDollar[2].union.expr()} - } - case 653: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:3930 - { - sqlVAL.union.val = &UnaryExpr{Operator: UnaryComplement, Expr: sqlDollar[2].union.expr()} - } - case 654: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:3934 - { - sqlVAL.union.val = &BinaryExpr{Operator: Plus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} - } case 655: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] //line sql.y:3938 { - sqlVAL.union.val = &BinaryExpr{Operator: Minus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &UnaryExpr{Operator: UnaryPlus, Expr: sqlDollar[2].union.expr()} } case 656: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] //line sql.y:3942 { - sqlVAL.union.val = &BinaryExpr{Operator: Mult, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &UnaryExpr{Operator: UnaryMinus, Expr: sqlDollar[2].union.expr()} } case 657: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] //line sql.y:3946 { - sqlVAL.union.val = &BinaryExpr{Operator: Div, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &UnaryExpr{Operator: UnaryComplement, Expr: sqlDollar[2].union.expr()} } case 658: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3950 { - sqlVAL.union.val = &BinaryExpr{Operator: FloorDiv, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Plus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 659: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3954 { - sqlVAL.union.val = &BinaryExpr{Operator: Mod, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Minus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 660: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3958 { - sqlVAL.union.val = &BinaryExpr{Operator: Pow, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Mult, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 661: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3962 { - sqlVAL.union.val = &BinaryExpr{Operator: Bitxor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Div, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 662: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3966 { - sqlVAL.union.val = &BinaryExpr{Operator: Bitand, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: FloorDiv, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 663: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3970 { - sqlVAL.union.val = &BinaryExpr{Operator: Bitor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Mod, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 664: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3974 { - sqlVAL.union.val = &ComparisonExpr{Operator: LT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Pow, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 665: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3978 { - sqlVAL.union.val = &ComparisonExpr{Operator: GT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Bitxor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 666: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3982 { - sqlVAL.union.val = &ComparisonExpr{Operator: EQ, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Bitand, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 667: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3986 { - sqlVAL.union.val = &BinaryExpr{Operator: Concat, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Bitor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 668: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3990 { - sqlVAL.union.val = &BinaryExpr{Operator: LShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: LT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 669: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3994 { - sqlVAL.union.val = &BinaryExpr{Operator: RShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: GT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 670: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:3998 { - sqlVAL.union.val = &ComparisonExpr{Operator: LE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: EQ, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 671: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4002 { - sqlVAL.union.val = &ComparisonExpr{Operator: GE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: Concat, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 672: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4006 { - sqlVAL.union.val = &ComparisonExpr{Operator: NE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: LShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 673: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4010 { - sqlVAL.union.val = &AndExpr{Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &BinaryExpr{Operator: RShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 674: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4014 { - sqlVAL.union.val = &OrExpr{Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: LE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 675: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4018 { - sqlVAL.union.val = &NotExpr{Expr: sqlDollar[2].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: GE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 676: - sqlDollar = sqlS[sqlpt-2 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4022 { - sqlVAL.union.val = &NotExpr{Expr: sqlDollar[2].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: NE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 677: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4026 { - sqlVAL.union.val = &ComparisonExpr{Operator: Like, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &AndExpr{Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 678: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4030 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotLike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} + sqlVAL.union.val = &OrExpr{Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 679: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] //line sql.y:4034 { - sqlVAL.union.val = &ComparisonExpr{Operator: ILike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &NotExpr{Expr: sqlDollar[2].union.expr()} } case 680: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-2 : sqlpt+1] //line sql.y:4038 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotILike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} + sqlVAL.union.val = &NotExpr{Expr: sqlDollar[2].union.expr()} } case 681: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4042 { - sqlVAL.union.val = &ComparisonExpr{Operator: SimilarTo, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: Like, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 682: - sqlDollar = sqlS[sqlpt-5 : sqlpt+1] + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4046 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotSimilarTo, Left: sqlDollar[1].union.expr(), Right: sqlDollar[5].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: NotLike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} } case 683: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4050 { - sqlVAL.union.val = &ComparisonExpr{Operator: RegMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: ILike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 684: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4054 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotRegMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: NotILike, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} } case 685: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4058 { - sqlVAL.union.val = &ComparisonExpr{Operator: RegIMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: SimilarTo, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} } case 686: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-5 : sqlpt+1] //line sql.y:4062 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotRegIMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: NotSimilarTo, Left: sqlDollar[1].union.expr(), Right: sqlDollar[5].union.expr()} } case 687: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4066 { - sqlVAL.union.val = &FuncExpr{Func: wrapFunction("ISNAN"), Exprs: Exprs{sqlDollar[1].union.expr()}} + sqlVAL.union.val = &ComparisonExpr{Operator: RegMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 688: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4070 { - sqlVAL.union.val = &NotExpr{Expr: &FuncExpr{Func: wrapFunction("ISNAN"), Exprs: Exprs{sqlDollar[1].union.expr()}}} + sqlVAL.union.val = &ComparisonExpr{Operator: NotRegMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 689: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4074 { - sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: DNull} + sqlVAL.union.val = &ComparisonExpr{Operator: RegIMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 690: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4078 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: DNull} + sqlVAL.union.val = &ComparisonExpr{Operator: NotRegIMatch, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } case 691: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4081 + //line sql.y:4082 { - return unimplemented(sqllex, "overlaps") + sqlVAL.union.val = &FuncExpr{Func: wrapFunction("ISNAN"), Exprs: Exprs{sqlDollar[1].union.expr()}} } case 692: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4083 + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + //line sql.y:4086 { - sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: MakeDBool(true)} + sqlVAL.union.val = &NotExpr{Expr: &FuncExpr{Func: wrapFunction("ISNAN"), Exprs: Exprs{sqlDollar[1].union.expr()}}} } case 693: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4087 + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + //line sql.y:4090 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: MakeDBool(true)} + sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: DNull} } case 694: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4091 + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + //line sql.y:4094 { - sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: MakeDBool(false)} + sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: DNull} } case 695: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4095 + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + //line sql.y:4097 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: MakeDBool(false)} + return unimplemented(sqllex, "overlaps") } case 696: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4099 { - sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: DNull} + sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: MakeDBool(true)} } case 697: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4103 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: DNull} + sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: MakeDBool(true)} } case 698: - sqlDollar = sqlS[sqlpt-5 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4107 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[5].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: MakeDBool(false)} } case 699: - sqlDollar = sqlS[sqlpt-6 : sqlpt+1] + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4111 { - sqlVAL.union.val = &ComparisonExpr{Operator: IsNotDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[6].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: MakeDBool(false)} } case 700: - sqlDollar = sqlS[sqlpt-6 : sqlpt+1] + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] //line sql.y:4115 { - sqlVAL.union.val = &IsOfTypeExpr{Expr: sqlDollar[1].union.expr(), Types: sqlDollar[5].union.colTypes()} + sqlVAL.union.val = &ComparisonExpr{Operator: Is, Left: sqlDollar[1].union.expr(), Right: DNull} } case 701: - sqlDollar = sqlS[sqlpt-7 : sqlpt+1] + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] //line sql.y:4119 { - sqlVAL.union.val = &IsOfTypeExpr{Not: true, Expr: sqlDollar[1].union.expr(), Types: sqlDollar[6].union.colTypes()} + sqlVAL.union.val = &ComparisonExpr{Operator: IsNot, Left: sqlDollar[1].union.expr(), Right: DNull} } case 702: - sqlDollar = sqlS[sqlpt-6 : sqlpt+1] + sqlDollar = sqlS[sqlpt-5 : sqlpt+1] //line sql.y:4123 { - sqlVAL.union.val = &RangeCond{Left: sqlDollar[1].union.expr(), From: sqlDollar[4].union.expr(), To: sqlDollar[6].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: IsDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[5].union.expr()} } case 703: - sqlDollar = sqlS[sqlpt-7 : sqlpt+1] + sqlDollar = sqlS[sqlpt-6 : sqlpt+1] //line sql.y:4127 { - sqlVAL.union.val = &RangeCond{Not: true, Left: sqlDollar[1].union.expr(), From: sqlDollar[5].union.expr(), To: sqlDollar[7].union.expr()} + sqlVAL.union.val = &ComparisonExpr{Operator: IsNotDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[6].union.expr()} } case 704: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] //line sql.y:4131 { - sqlVAL.union.val = &RangeCond{Left: sqlDollar[1].union.expr(), From: sqlDollar[4].union.expr(), To: sqlDollar[6].union.expr()} + sqlVAL.union.val = &IsOfTypeExpr{Expr: sqlDollar[1].union.expr(), Types: sqlDollar[5].union.colTypes()} } case 705: sqlDollar = sqlS[sqlpt-7 : sqlpt+1] //line sql.y:4135 { - sqlVAL.union.val = &RangeCond{Not: true, Left: sqlDollar[1].union.expr(), From: sqlDollar[5].union.expr(), To: sqlDollar[7].union.expr()} + sqlVAL.union.val = &IsOfTypeExpr{Not: true, Expr: sqlDollar[1].union.expr(), Types: sqlDollar[6].union.colTypes()} } case 706: - sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + sqlDollar = sqlS[sqlpt-6 : sqlpt+1] //line sql.y:4139 { - sqlVAL.union.val = &ComparisonExpr{Operator: In, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + sqlVAL.union.val = &RangeCond{Left: sqlDollar[1].union.expr(), From: sqlDollar[4].union.expr(), To: sqlDollar[6].union.expr()} } case 707: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-7 : sqlpt+1] //line sql.y:4143 { - sqlVAL.union.val = &ComparisonExpr{Operator: NotIn, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} + sqlVAL.union.val = &RangeCond{Not: true, Left: sqlDollar[1].union.expr(), From: sqlDollar[5].union.expr(), To: sqlDollar[7].union.expr()} } case 708: - sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + sqlDollar = sqlS[sqlpt-6 : sqlpt+1] //line sql.y:4147 + { + sqlVAL.union.val = &RangeCond{Left: sqlDollar[1].union.expr(), From: sqlDollar[4].union.expr(), To: sqlDollar[6].union.expr()} + } + case 709: + sqlDollar = sqlS[sqlpt-7 : sqlpt+1] + //line sql.y:4151 + { + sqlVAL.union.val = &RangeCond{Not: true, Left: sqlDollar[1].union.expr(), From: sqlDollar[5].union.expr(), To: sqlDollar[7].union.expr()} + } + case 710: + sqlDollar = sqlS[sqlpt-3 : sqlpt+1] + //line sql.y:4155 + { + sqlVAL.union.val = &ComparisonExpr{Operator: In, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} + } + case 711: + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + //line sql.y:4159 + { + sqlVAL.union.val = &ComparisonExpr{Operator: NotIn, Left: sqlDollar[1].union.expr(), Right: sqlDollar[4].union.expr()} + } + case 712: + sqlDollar = sqlS[sqlpt-4 : sqlpt+1] + //line sql.y:4163 { op := sqlDollar[3].union.cmpOp() subOp := sqlDollar[2].union.op() @@ -10086,198 +10115,198 @@ sqldefault: Right: sqlDollar[4].union.expr(), } } - case 710: + case 714: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4175 + //line sql.y:4191 { sqlVAL.union.val = &CastExpr{Expr: sqlDollar[1].union.expr(), Type: sqlDollar[3].union.castTargetType(), syntaxMode: castShort} } - case 711: + case 715: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4179 + //line sql.y:4195 { sqlVAL.union.val = &AnnotateTypeExpr{Expr: sqlDollar[1].union.expr(), Type: sqlDollar[3].union.colType(), syntaxMode: annotateShort} } - case 712: + case 716: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4183 + //line sql.y:4199 { sqlVAL.union.val = &UnaryExpr{Operator: UnaryPlus, Expr: sqlDollar[2].union.expr()} } - case 713: + case 717: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4187 + //line sql.y:4203 { sqlVAL.union.val = &UnaryExpr{Operator: UnaryMinus, Expr: sqlDollar[2].union.expr()} } - case 714: + case 718: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4191 + //line sql.y:4207 { sqlVAL.union.val = &UnaryExpr{Operator: UnaryComplement, Expr: sqlDollar[2].union.expr()} } - case 715: + case 719: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4195 + //line sql.y:4211 { sqlVAL.union.val = &BinaryExpr{Operator: Plus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 716: + case 720: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4199 + //line sql.y:4215 { sqlVAL.union.val = &BinaryExpr{Operator: Minus, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 717: + case 721: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4203 + //line sql.y:4219 { sqlVAL.union.val = &BinaryExpr{Operator: Mult, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 718: + case 722: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4207 + //line sql.y:4223 { sqlVAL.union.val = &BinaryExpr{Operator: Div, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 719: + case 723: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4211 + //line sql.y:4227 { sqlVAL.union.val = &BinaryExpr{Operator: FloorDiv, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 720: + case 724: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4215 + //line sql.y:4231 { sqlVAL.union.val = &BinaryExpr{Operator: Mod, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 721: + case 725: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4219 + //line sql.y:4235 { sqlVAL.union.val = &BinaryExpr{Operator: Pow, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 722: + case 726: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4223 + //line sql.y:4239 { sqlVAL.union.val = &BinaryExpr{Operator: Bitxor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 723: + case 727: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4227 + //line sql.y:4243 { sqlVAL.union.val = &BinaryExpr{Operator: Bitand, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 724: + case 728: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4231 + //line sql.y:4247 { sqlVAL.union.val = &BinaryExpr{Operator: Bitor, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 725: + case 729: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4235 + //line sql.y:4251 { sqlVAL.union.val = &ComparisonExpr{Operator: LT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 726: + case 730: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4239 + //line sql.y:4255 { sqlVAL.union.val = &ComparisonExpr{Operator: GT, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 727: + case 731: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4243 + //line sql.y:4259 { sqlVAL.union.val = &ComparisonExpr{Operator: EQ, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 728: + case 732: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4247 + //line sql.y:4263 { sqlVAL.union.val = &BinaryExpr{Operator: Concat, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 729: + case 733: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4251 + //line sql.y:4267 { sqlVAL.union.val = &BinaryExpr{Operator: LShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 730: + case 734: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4255 + //line sql.y:4271 { sqlVAL.union.val = &BinaryExpr{Operator: RShift, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 731: + case 735: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4259 + //line sql.y:4275 { sqlVAL.union.val = &ComparisonExpr{Operator: LE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 732: + case 736: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4263 + //line sql.y:4279 { sqlVAL.union.val = &ComparisonExpr{Operator: GE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 733: + case 737: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4267 + //line sql.y:4283 { sqlVAL.union.val = &ComparisonExpr{Operator: NE, Left: sqlDollar[1].union.expr(), Right: sqlDollar[3].union.expr()} } - case 734: + case 738: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4271 + //line sql.y:4287 { sqlVAL.union.val = &ComparisonExpr{Operator: IsDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[5].union.expr()} } - case 735: + case 739: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4275 + //line sql.y:4291 { sqlVAL.union.val = &ComparisonExpr{Operator: IsNotDistinctFrom, Left: sqlDollar[1].union.expr(), Right: sqlDollar[6].union.expr()} } - case 736: + case 740: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4279 + //line sql.y:4295 { sqlVAL.union.val = &IsOfTypeExpr{Expr: sqlDollar[1].union.expr(), Types: sqlDollar[5].union.colTypes()} } - case 737: + case 741: sqlDollar = sqlS[sqlpt-7 : sqlpt+1] - //line sql.y:4283 + //line sql.y:4299 { sqlVAL.union.val = &IsOfTypeExpr{Not: true, Expr: sqlDollar[1].union.expr(), Types: sqlDollar[6].union.colTypes()} } - case 739: + case 743: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4296 + //line sql.y:4312 { sqlVAL.union.val = &IndirectionExpr{ Expr: sqlDollar[1].union.expr(), Indirection: sqlDollar[2].union.arraySubscripts(), } } - case 741: + case 745: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4304 + //line sql.y:4320 { sqlVAL.union.val = &ExistsExpr{Subquery: &Subquery{Select: sqlDollar[2].union.selectStmt()}} } - case 742: + case 746: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4315 + //line sql.y:4331 { sqlVAL.union.val = sqlDollar[1].union.unresolvedName() } - case 744: + case 748: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4320 + //line sql.y:4336 { /* SKIP DOC */ colNum, err := sqlDollar[2].union.numVal().AsInt64() @@ -10291,355 +10320,355 @@ sqldefault: } sqlVAL.union.val = NewOrdinalReference(int(colNum - 1)) } - case 745: + case 749: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4333 + //line sql.y:4349 { sqlVAL.union.val = NewPlaceholder(sqlDollar[1].str) } - case 746: + case 750: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4337 + //line sql.y:4353 { sqlVAL.union.val = &ParenExpr{Expr: sqlDollar[2].union.expr()} } - case 748: + case 752: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4342 + //line sql.y:4358 { sqlVAL.union.val = &Subquery{Select: sqlDollar[1].union.selectStmt()} } - case 749: + case 753: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4346 + //line sql.y:4362 { sqlVAL.union.val = &ArrayFlatten{Subquery: &Subquery{Select: sqlDollar[2].union.selectStmt()}} } - case 750: + case 754: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4350 + //line sql.y:4366 { sqlVAL.union.val = sqlDollar[2].union.expr() } - case 751: + case 755: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4354 + //line sql.y:4370 { sqlVAL.union.val = sqlDollar[1].union.expr() } - case 752: + case 756: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4358 + //line sql.y:4374 { sqlVAL.union.val = sqlDollar[1].union.expr() } - case 753: + case 757: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4366 + //line sql.y:4382 { sqlVAL.union.val = &FuncExpr{Func: sqlDollar[1].union.resolvableFunctionReference()} } - case 754: + case 758: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4370 + //line sql.y:4386 { sqlVAL.union.val = &FuncExpr{Func: sqlDollar[1].union.resolvableFunctionReference(), Exprs: sqlDollar[3].union.exprs()} } - case 755: + case 759: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4373 + //line sql.y:4389 { return unimplemented(sqllex, "variadic") } - case 756: + case 760: sqlDollar = sqlS[sqlpt-8 : sqlpt+1] - //line sql.y:4374 + //line sql.y:4390 { return unimplemented(sqllex, "variadic") } - case 757: + case 761: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4376 + //line sql.y:4392 { sqlVAL.union.val = &FuncExpr{Func: sqlDollar[1].union.resolvableFunctionReference(), Type: AllFuncType, Exprs: sqlDollar[4].union.exprs()} } - case 758: + case 762: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4380 + //line sql.y:4396 { sqlVAL.union.val = &FuncExpr{Func: sqlDollar[1].union.resolvableFunctionReference(), Type: DistinctFuncType, Exprs: sqlDollar[4].union.exprs()} } - case 759: + case 763: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4384 + //line sql.y:4400 { sqlVAL.union.val = &FuncExpr{Func: sqlDollar[1].union.resolvableFunctionReference(), Exprs: Exprs{StarExpr()}} } - case 760: + case 764: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4397 + //line sql.y:4413 { f := sqlDollar[1].union.expr().(*FuncExpr) f.Filter = sqlDollar[3].union.expr() f.WindowDef = sqlDollar[4].union.windowDef() sqlVAL.union.val = f } - case 761: + case 765: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4404 + //line sql.y:4420 { sqlVAL.union.val = sqlDollar[1].union.expr() } - case 762: + case 766: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4413 + //line sql.y:4429 { return unimplemented(sqllex, "func_application") } - case 763: + case 767: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4414 + //line sql.y:4430 { return unimplemented(sqllex, "func_expr_common_subexpr") } - case 764: + case 768: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4418 + //line sql.y:4434 { return unimplemented(sqllex, "func_expr_common_subexpr collation") } - case 765: + case 769: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4420 + //line sql.y:4436 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str)} } - case 766: + case 770: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4424 + //line sql.y:4440 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str)} } - case 767: + case 771: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4428 + //line sql.y:4444 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str)} } - case 768: + case 772: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4432 + //line sql.y:4448 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str)} } - case 769: + case 773: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4435 + //line sql.y:4451 { return unimplemented(sqllex, "current role") } - case 770: + case 774: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4436 + //line sql.y:4452 { return unimplemented(sqllex, "current user") } - case 771: + case 775: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4437 + //line sql.y:4453 { return unimplemented(sqllex, "session user") } - case 772: + case 776: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4438 + //line sql.y:4454 { return unimplemented(sqllex, "user") } - case 773: + case 777: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4440 + //line sql.y:4456 { sqlVAL.union.val = &CastExpr{Expr: sqlDollar[3].union.expr(), Type: sqlDollar[5].union.castTargetType(), syntaxMode: castExplicit} } - case 774: + case 778: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4444 + //line sql.y:4460 { sqlVAL.union.val = &AnnotateTypeExpr{Expr: sqlDollar[3].union.expr(), Type: sqlDollar[5].union.colType(), syntaxMode: annotateExplicit} } - case 775: + case 779: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4448 + //line sql.y:4464 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 776: + case 780: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4452 + //line sql.y:4468 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 777: + case 781: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4456 + //line sql.y:4472 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 778: + case 782: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4460 + //line sql.y:4476 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction("STRPOS"), Exprs: sqlDollar[3].union.exprs()} } - case 779: + case 783: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4464 + //line sql.y:4480 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 780: + case 784: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4467 + //line sql.y:4483 { return unimplemented(sqllex, "treat") } - case 781: + case 785: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4469 + //line sql.y:4485 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction("BTRIM"), Exprs: sqlDollar[4].union.exprs()} } - case 782: + case 786: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4473 + //line sql.y:4489 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction("LTRIM"), Exprs: sqlDollar[4].union.exprs()} } - case 783: + case 787: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4477 + //line sql.y:4493 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction("RTRIM"), Exprs: sqlDollar[4].union.exprs()} } - case 784: + case 788: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4481 + //line sql.y:4497 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction("BTRIM"), Exprs: sqlDollar[3].union.exprs()} } - case 785: + case 789: sqlDollar = sqlS[sqlpt-8 : sqlpt+1] - //line sql.y:4485 + //line sql.y:4501 { sqlVAL.union.val = &IfExpr{Cond: sqlDollar[3].union.expr(), True: sqlDollar[5].union.expr(), Else: sqlDollar[7].union.expr()} } - case 786: + case 790: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4489 + //line sql.y:4505 { sqlVAL.union.val = &NullIfExpr{Expr1: sqlDollar[3].union.expr(), Expr2: sqlDollar[5].union.expr()} } - case 787: + case 791: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4493 + //line sql.y:4509 { sqlVAL.union.val = &CoalesceExpr{Name: "IFNULL", Exprs: Exprs{sqlDollar[3].union.expr(), sqlDollar[5].union.expr()}} } - case 788: + case 792: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4497 + //line sql.y:4513 { sqlVAL.union.val = &CoalesceExpr{Name: "COALESCE", Exprs: sqlDollar[3].union.exprs()} } - case 789: + case 793: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4501 + //line sql.y:4517 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 790: + case 794: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4505 + //line sql.y:4521 { sqlVAL.union.val = &FuncExpr{Func: wrapFunction(sqlDollar[1].str), Exprs: sqlDollar[3].union.exprs()} } - case 791: + case 795: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4511 + //line sql.y:4527 { return unimplemented(sqllex, "within group") } - case 792: + case 796: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4512 + //line sql.y:4528 { } - case 793: + case 797: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4516 + //line sql.y:4532 { sqlVAL.union.val = sqlDollar[4].union.expr() } - case 794: + case 798: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4520 + //line sql.y:4536 { sqlVAL.union.val = Expr(nil) } - case 795: + case 799: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4527 + //line sql.y:4543 { sqlVAL.union.val = sqlDollar[2].union.window() } - case 796: + case 800: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4531 + //line sql.y:4547 { sqlVAL.union.val = Window(nil) } - case 797: + case 801: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4537 + //line sql.y:4553 { sqlVAL.union.val = Window{sqlDollar[1].union.windowDef()} } - case 798: + case 802: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4541 + //line sql.y:4557 { sqlVAL.union.val = append(sqlDollar[1].union.window(), sqlDollar[3].union.windowDef()) } - case 799: + case 803: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4547 + //line sql.y:4563 { n := sqlDollar[3].union.windowDef() n.Name = Name(sqlDollar[1].str) sqlVAL.union.val = n } - case 800: + case 804: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4555 + //line sql.y:4571 { sqlVAL.union.val = sqlDollar[2].union.windowDef() } - case 801: + case 805: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4559 + //line sql.y:4575 { sqlVAL.union.val = &WindowDef{Name: Name(sqlDollar[2].str)} } - case 802: + case 806: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4563 + //line sql.y:4579 { sqlVAL.union.val = (*WindowDef)(nil) } - case 803: + case 807: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:4570 + //line sql.y:4586 { sqlVAL.union.val = &WindowDef{ RefName: Name(sqlDollar[2].str), @@ -10647,817 +10676,817 @@ sqldefault: OrderBy: sqlDollar[4].union.orderBy(), } } - case 805: + case 809: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4589 + //line sql.y:4605 { sqlVAL.str = "" } - case 806: + case 810: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4595 + //line sql.y:4611 { sqlVAL.union.val = sqlDollar[3].union.exprs() } - case 807: + case 811: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4599 + //line sql.y:4615 { sqlVAL.union.val = Exprs(nil) } - case 808: + case 812: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4609 + //line sql.y:4625 { return unimplemented(sqllex, "frame range") } - case 809: + case 813: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4610 + //line sql.y:4626 { return unimplemented(sqllex, "frame rows") } - case 810: + case 814: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4611 + //line sql.y:4627 { } - case 811: + case 815: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4614 + //line sql.y:4630 { return unimplemented(sqllex, "frame_extent") } - case 812: + case 816: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4615 + //line sql.y:4631 { return unimplemented(sqllex, "frame_extent") } - case 813: + case 817: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4621 + //line sql.y:4637 { return unimplemented(sqllex, "frame_bound") } - case 814: + case 818: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4622 + //line sql.y:4638 { return unimplemented(sqllex, "frame_bound") } - case 815: + case 819: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4623 + //line sql.y:4639 { return unimplemented(sqllex, "frame_bound") } - case 816: + case 820: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4624 + //line sql.y:4640 { return unimplemented(sqllex, "frame_bound") } - case 817: + case 821: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4625 + //line sql.y:4641 { return unimplemented(sqllex, "frame_bound") } - case 818: + case 822: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4636 + //line sql.y:4652 { sqlVAL.union.val = &Tuple{Exprs: sqlDollar[3].union.exprs(), row: true} } - case 819: + case 823: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4640 + //line sql.y:4656 { sqlVAL.union.val = &Tuple{Exprs: nil, row: true} } - case 820: + case 824: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4644 + //line sql.y:4660 { sqlVAL.union.val = &Tuple{Exprs: append(sqlDollar[2].union.exprs(), sqlDollar[4].union.expr())} } - case 821: + case 825: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4650 + //line sql.y:4666 { sqlVAL.union.val = &Tuple{Exprs: sqlDollar[3].union.exprs(), row: true} } - case 822: + case 826: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4654 + //line sql.y:4670 { sqlVAL.union.val = &Tuple{Exprs: nil, row: true} } - case 823: + case 827: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4660 + //line sql.y:4676 { sqlVAL.union.val = &Tuple{Exprs: append(sqlDollar[2].union.exprs(), sqlDollar[4].union.expr())} } - case 824: + case 828: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4666 + //line sql.y:4682 { sqlVAL.union.val = Any } - case 825: + case 829: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4670 + //line sql.y:4686 { sqlVAL.union.val = Some } - case 826: + case 830: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4674 + //line sql.y:4690 { sqlVAL.union.val = All } - case 827: + case 831: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4679 + //line sql.y:4695 { sqlVAL.union.val = Plus } - case 828: + case 832: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4680 + //line sql.y:4696 { sqlVAL.union.val = Minus } - case 829: + case 833: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4681 + //line sql.y:4697 { sqlVAL.union.val = Mult } - case 830: + case 834: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4682 + //line sql.y:4698 { sqlVAL.union.val = Div } - case 831: + case 835: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4683 + //line sql.y:4699 { sqlVAL.union.val = FloorDiv } - case 832: + case 836: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4684 + //line sql.y:4700 { sqlVAL.union.val = Mod } - case 833: + case 837: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4685 + //line sql.y:4701 { sqlVAL.union.val = Bitand } - case 834: + case 838: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4686 + //line sql.y:4702 { sqlVAL.union.val = Bitor } - case 835: + case 839: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4687 + //line sql.y:4703 { sqlVAL.union.val = Pow } - case 836: + case 840: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4688 + //line sql.y:4704 { sqlVAL.union.val = Bitxor } - case 837: + case 841: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4689 + //line sql.y:4705 { sqlVAL.union.val = LT } - case 838: + case 842: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4690 + //line sql.y:4706 { sqlVAL.union.val = GT } - case 839: + case 843: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4691 + //line sql.y:4707 { sqlVAL.union.val = EQ } - case 840: + case 844: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4692 + //line sql.y:4708 { sqlVAL.union.val = LE } - case 841: + case 845: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4693 + //line sql.y:4709 { sqlVAL.union.val = GE } - case 842: + case 846: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4694 + //line sql.y:4710 { sqlVAL.union.val = NE } - case 844: + case 848: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4698 + //line sql.y:4714 { sqlVAL.union.val = Like } - case 845: + case 849: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4699 + //line sql.y:4715 { sqlVAL.union.val = NotLike } - case 846: + case 850: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4700 + //line sql.y:4716 { sqlVAL.union.val = ILike } - case 847: + case 851: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4701 + //line sql.y:4717 { sqlVAL.union.val = NotILike } - case 848: + case 852: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4712 + //line sql.y:4728 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr()} } - case 849: + case 853: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4716 + //line sql.y:4732 { sqlVAL.union.val = append(sqlDollar[1].union.exprs(), sqlDollar[3].union.expr()) } - case 850: + case 854: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4722 + //line sql.y:4738 { sqlVAL.union.val = []ColumnType{sqlDollar[1].union.colType()} } - case 851: + case 855: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4726 + //line sql.y:4742 { sqlVAL.union.val = append(sqlDollar[1].union.colTypes(), sqlDollar[3].union.colType()) } - case 852: + case 856: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4732 + //line sql.y:4748 { sqlVAL.union.val = &Array{Exprs: sqlDollar[2].union.exprs()} } - case 853: + case 857: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4736 + //line sql.y:4752 { sqlVAL.union.val = &Array{Exprs: sqlDollar[2].union.exprs()} } - case 854: + case 858: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4740 + //line sql.y:4756 { sqlVAL.union.val = &Array{Exprs: nil} } - case 855: + case 859: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4746 + //line sql.y:4762 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr()} } - case 856: + case 860: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4750 + //line sql.y:4766 { sqlVAL.union.val = append(sqlDollar[1].union.exprs(), sqlDollar[3].union.expr()) } - case 857: + case 861: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4756 + //line sql.y:4772 { sqlVAL.union.val = Exprs{&StrVal{s: sqlDollar[1].str}, sqlDollar[3].union.expr()} } - case 858: + case 862: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4760 + //line sql.y:4776 { sqlVAL.union.val = sqlDollar[1].union.exprs() } - case 866: + case 870: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4782 + //line sql.y:4798 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), sqlDollar[2].union.expr(), sqlDollar[3].union.expr(), sqlDollar[4].union.expr()} } - case 867: + case 871: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4786 + //line sql.y:4802 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), sqlDollar[2].union.expr(), sqlDollar[3].union.expr()} } - case 868: + case 872: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4790 + //line sql.y:4806 { sqlVAL.union.val = sqlDollar[1].union.exprs() } - case 869: + case 873: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4796 + //line sql.y:4812 { sqlVAL.union.val = sqlDollar[2].union.expr() } - case 870: + case 874: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4803 + //line sql.y:4819 { sqlVAL.union.val = Exprs{sqlDollar[3].union.expr(), sqlDollar[1].union.expr()} } - case 871: + case 875: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4807 + //line sql.y:4823 { sqlVAL.union.val = Exprs(nil) } - case 872: + case 876: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4824 + //line sql.y:4840 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), sqlDollar[2].union.expr(), sqlDollar[3].union.expr()} } - case 873: + case 877: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4828 + //line sql.y:4844 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), sqlDollar[3].union.expr(), sqlDollar[2].union.expr()} } - case 874: + case 878: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4832 + //line sql.y:4848 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), sqlDollar[2].union.expr()} } - case 875: + case 879: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4836 + //line sql.y:4852 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr(), NewDInt(1), sqlDollar[2].union.expr()} } - case 876: + case 880: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4840 + //line sql.y:4856 { sqlVAL.union.val = sqlDollar[1].union.exprs() } - case 877: + case 881: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4844 + //line sql.y:4860 { sqlVAL.union.val = Exprs(nil) } - case 878: + case 882: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4850 + //line sql.y:4866 { sqlVAL.union.val = sqlDollar[2].union.expr() } - case 879: + case 883: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4856 + //line sql.y:4872 { sqlVAL.union.val = sqlDollar[2].union.expr() } - case 880: + case 884: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4862 + //line sql.y:4878 { sqlVAL.union.val = append(sqlDollar[3].union.exprs(), sqlDollar[1].union.expr()) } - case 881: + case 885: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4866 + //line sql.y:4882 { sqlVAL.union.val = sqlDollar[2].union.exprs() } - case 882: + case 886: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4870 + //line sql.y:4886 { sqlVAL.union.val = sqlDollar[1].union.exprs() } - case 883: + case 887: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4876 + //line sql.y:4892 { sqlVAL.union.val = &Subquery{Select: sqlDollar[1].union.selectStmt()} } - case 884: + case 888: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4880 + //line sql.y:4896 { sqlVAL.union.val = &Tuple{Exprs: sqlDollar[2].union.exprs()} } - case 885: + case 889: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4891 + //line sql.y:4907 { sqlVAL.union.val = &CaseExpr{Expr: sqlDollar[2].union.expr(), Whens: sqlDollar[3].union.whens(), Else: sqlDollar[4].union.expr()} } - case 886: + case 890: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4898 + //line sql.y:4914 { sqlVAL.union.val = []*When{sqlDollar[1].union.when()} } - case 887: + case 891: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4902 + //line sql.y:4918 { sqlVAL.union.val = append(sqlDollar[1].union.whens(), sqlDollar[2].union.when()) } - case 888: + case 892: sqlDollar = sqlS[sqlpt-4 : sqlpt+1] - //line sql.y:4908 + //line sql.y:4924 { sqlVAL.union.val = &When{Cond: sqlDollar[2].union.expr(), Val: sqlDollar[4].union.expr()} } - case 889: + case 893: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4914 + //line sql.y:4930 { sqlVAL.union.val = sqlDollar[2].union.expr() } - case 890: + case 894: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4918 + //line sql.y:4934 { sqlVAL.union.val = Expr(nil) } - case 892: + case 896: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4925 + //line sql.y:4941 { sqlVAL.union.val = Expr(nil) } - case 893: + case 897: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:4931 + //line sql.y:4947 { sqlVAL.union.val = &ArraySubscript{Begin: sqlDollar[2].union.expr()} } - case 894: + case 898: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:4935 + //line sql.y:4951 { sqlVAL.union.val = &ArraySubscript{Begin: sqlDollar[2].union.expr(), End: sqlDollar[4].union.expr(), Slice: true} } - case 896: + case 900: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4942 + //line sql.y:4958 { sqlVAL.union.val = Expr(nil) } - case 897: + case 901: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4948 + //line sql.y:4964 { sqlVAL.union.val = Name(sqlDollar[2].str) } - case 898: + case 902: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4954 + //line sql.y:4970 { sqlVAL.union.val = UnqualifiedStar{} } - case 899: + case 903: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4960 + //line sql.y:4976 { sqlVAL.union.val = sqlDollar[1].union.namePart() } - case 900: + case 904: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4964 + //line sql.y:4980 { sqlVAL.union.val = sqlDollar[1].union.namePart() } - case 901: + case 905: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4970 + //line sql.y:4986 { sqlVAL.union.val = UnresolvedName{sqlDollar[1].union.namePart()} } - case 902: + case 906: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4974 + //line sql.y:4990 { sqlVAL.union.val = append(sqlDollar[1].union.unresolvedName(), sqlDollar[2].union.namePart()) } - case 903: + case 907: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4980 + //line sql.y:4996 { sqlVAL.union.val = ArraySubscripts{sqlDollar[1].union.arraySubscript()} } - case 904: + case 908: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:4984 + //line sql.y:5000 { sqlVAL.union.val = append(sqlDollar[1].union.arraySubscripts(), sqlDollar[2].union.arraySubscript()) } - case 905: + case 909: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4989 + //line sql.y:5005 { } - case 906: + case 910: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:4990 + //line sql.y:5006 { } - case 908: + case 912: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:4999 + //line sql.y:5015 { sqlVAL.union.val = DefaultVal{} } - case 909: + case 913: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5005 + //line sql.y:5021 { sqlVAL.union.val = Exprs{sqlDollar[1].union.expr()} } - case 910: + case 914: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5009 + //line sql.y:5025 { sqlVAL.union.val = append(sqlDollar[1].union.exprs(), sqlDollar[3].union.expr()) } - case 911: + case 915: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5018 + //line sql.y:5034 { sqlVAL.union.val = sqlDollar[2].union.exprs() } - case 912: + case 916: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5024 + //line sql.y:5040 { sqlVAL.union.val = SelectExprs{sqlDollar[1].union.selExpr()} } - case 913: + case 917: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5028 + //line sql.y:5044 { sqlVAL.union.val = append(sqlDollar[1].union.selExprs(), sqlDollar[3].union.selExpr()) } - case 914: + case 918: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5034 + //line sql.y:5050 { sqlVAL.union.val = SelectExpr{Expr: sqlDollar[1].union.expr(), As: Name(sqlDollar[3].str)} } - case 915: + case 919: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5043 + //line sql.y:5059 { sqlVAL.union.val = SelectExpr{Expr: sqlDollar[1].union.expr(), As: Name(sqlDollar[2].str)} } - case 916: + case 920: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5047 + //line sql.y:5063 { sqlVAL.union.val = SelectExpr{Expr: sqlDollar[1].union.expr()} } - case 917: + case 921: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5051 + //line sql.y:5067 { sqlVAL.union.val = starSelectExpr() } - case 918: + case 922: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5059 + //line sql.y:5075 { sqlVAL.union.val = UnresolvedNames{sqlDollar[1].union.unresolvedName()} } - case 919: + case 923: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5063 + //line sql.y:5079 { sqlVAL.union.val = append(sqlDollar[1].union.unresolvedNames(), sqlDollar[3].union.unresolvedName()) } - case 920: + case 924: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5069 + //line sql.y:5085 { sqlVAL.union.val = TableNameWithIndexList{sqlDollar[1].union.tableWithIdx()} } - case 921: + case 925: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5073 + //line sql.y:5089 { sqlVAL.union.val = append(sqlDollar[1].union.tableWithIdxList(), sqlDollar[3].union.tableWithIdx()) } - case 922: + case 926: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5079 + //line sql.y:5095 { sqlVAL.union.val = TablePatterns{sqlDollar[1].union.unresolvedName()} } - case 923: + case 927: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5083 + //line sql.y:5099 { sqlVAL.union.val = append(sqlDollar[1].union.tablePatterns(), sqlDollar[3].union.unresolvedName()) } - case 924: + case 928: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5094 + //line sql.y:5110 { sqlVAL.union.val = UnresolvedName{Name(sqlDollar[1].str)} } - case 925: + case 929: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5098 + //line sql.y:5114 { sqlVAL.union.val = append(UnresolvedName{Name(sqlDollar[1].str)}, sqlDollar[2].union.unresolvedName()...) } - case 926: + case 930: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5104 + //line sql.y:5120 { sqlVAL.union.val = &TableNameWithIndex{Table: sqlDollar[1].union.normalizableTableName(), Index: Name(sqlDollar[3].str)} } - case 927: + case 931: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5108 + //line sql.y:5124 { // This case allows specifying just an index name (potentially schema-qualified). // We temporarily store the index name in Table (see TableNameWithIndex). sqlVAL.union.val = &TableNameWithIndex{Table: sqlDollar[1].union.normalizableTableName(), SearchTable: true} } - case 928: + case 932: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5121 + //line sql.y:5137 { sqlVAL.union.val = UnresolvedName{Name(sqlDollar[1].str)} } - case 929: + case 933: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5125 + //line sql.y:5141 { sqlVAL.union.val = UnresolvedName{UnqualifiedStar{}} } - case 930: + case 934: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5129 + //line sql.y:5145 { sqlVAL.union.val = UnresolvedName{Name(sqlDollar[1].str), sqlDollar[2].union.namePart()} } - case 931: + case 935: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5133 + //line sql.y:5149 { sqlVAL.union.val = UnresolvedName{Name(sqlDollar[1].str), sqlDollar[2].union.namePart()} } - case 932: + case 936: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5139 + //line sql.y:5155 { sqlVAL.union.val = NameList{Name(sqlDollar[1].str)} } - case 933: + case 937: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5143 + //line sql.y:5159 { sqlVAL.union.val = append(sqlDollar[1].union.nameList(), Name(sqlDollar[3].str)) } - case 934: + case 938: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5149 + //line sql.y:5165 { sqlVAL.union.val = sqlDollar[2].union.nameList() } - case 935: + case 939: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:5152 + //line sql.y:5168 { } - case 936: + case 940: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5162 + //line sql.y:5178 { sqlVAL.union.val = UnresolvedName{Name(sqlDollar[1].str)} } - case 937: + case 941: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5166 + //line sql.y:5182 { sqlVAL.union.val = append(UnresolvedName{Name(sqlDollar[1].str)}, sqlDollar[2].union.unresolvedName()...) } - case 938: + case 942: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5173 + //line sql.y:5189 { sqlVAL.union.val = sqlDollar[1].union.numVal() } - case 939: + case 943: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5177 + //line sql.y:5193 { sqlVAL.union.val = sqlDollar[1].union.numVal() } - case 940: + case 944: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5181 + //line sql.y:5197 { sqlVAL.union.val = &StrVal{s: sqlDollar[1].str} } - case 941: + case 945: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5185 + //line sql.y:5201 { sqlVAL.union.val = &StrVal{s: sqlDollar[1].str, bytesEsc: true} } - case 942: + case 946: sqlDollar = sqlS[sqlpt-6 : sqlpt+1] - //line sql.y:5188 + //line sql.y:5204 { return unimplemented(sqllex, "func const") } - case 943: + case 947: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5190 + //line sql.y:5206 { sqlVAL.union.val = &CastExpr{Expr: &StrVal{s: sqlDollar[2].str}, Type: sqlDollar[1].union.colType(), syntaxMode: castPrepend} } - case 944: + case 948: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5194 + //line sql.y:5210 { sqlVAL.union.val = sqlDollar[1].union.expr() } - case 945: + case 949: sqlDollar = sqlS[sqlpt-5 : sqlpt+1] - //line sql.y:5197 + //line sql.y:5213 { return unimplemented(sqllex, "expr_const const_interval") } - case 946: + case 950: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5199 + //line sql.y:5215 { sqlVAL.union.val = MakeDBool(true) } - case 947: + case 951: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5203 + //line sql.y:5219 { sqlVAL.union.val = MakeDBool(false) } - case 948: + case 952: sqlDollar = sqlS[sqlpt-1 : sqlpt+1] - //line sql.y:5207 + //line sql.y:5223 { sqlVAL.union.val = DNull } - case 950: + case 954: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5214 + //line sql.y:5230 { sqlVAL.union.val = sqlDollar[2].union.numVal() } - case 951: + case 955: sqlDollar = sqlS[sqlpt-2 : sqlpt+1] - //line sql.y:5218 + //line sql.y:5234 { sqlVAL.union.val = &NumVal{Value: constant.UnaryOp(token.SUB, sqlDollar[2].union.numVal().Value, 0)} } - case 952: + case 956: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5224 + //line sql.y:5240 { // We don't carry opt_interval information into the column type, so we need // to parse the interval directly. @@ -11474,21 +11503,21 @@ sqldefault: } sqlVAL.union.val = d } - case 957: + case 961: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:5259 + //line sql.y:5275 { sqlVAL.str = "" } - case 958: + case 962: sqlDollar = sqlS[sqlpt-3 : sqlpt+1] - //line sql.y:5265 + //line sql.y:5281 { sqlVAL.str = sqlDollar[2].str } - case 959: + case 963: sqlDollar = sqlS[sqlpt-0 : sqlpt+1] - //line sql.y:5269 + //line sql.y:5285 { sqlVAL.str = "" } diff --git a/pkg/sql/parser/sql.y b/pkg/sql/parser/sql.y index 3e0b943b11fa..4169992951b5 100644 --- a/pkg/sql/parser/sql.y +++ b/pkg/sql/parser/sql.y @@ -392,7 +392,7 @@ func (u *sqlSymUnion) transactionModes() TransactionModes { %token ELSE ENCODING END ESCAPE EXCEPT %token EXISTS EXECUTE EXPERIMENTAL_FINGERPRINTS EXPLAIN EXTRACT EXTRACT_DURATION -%token FALSE FAMILY FETCH FILTER FIRST FLOAT FLOORDIV FOLLOWING FOR +%token FALSE FAMILY FETCH FILTER FIRST FLOAT FLOAT4 FLOAT8 FLOORDIV FOLLOWING FOR %token FORCE_INDEX FOREIGN FROM FULL %token GRANT GRANTS GREATEST GROUP GROUPING @@ -401,7 +401,7 @@ func (u *sqlSymUnion) transactionModes() TransactionModes { %token INCREMENTAL IF IFNULL ILIKE IN INTERLEAVE %token INDEX INDEXES INITIALLY -%token INNER INSERT INT INT2VECTOR INT8 INT64 INTEGER +%token INNER INSERT INT INT2VECTOR INT2 INT4 INT8 INT64 INTEGER %token INTERSECT INTERVAL INTO IS ISOLATION %token JOB JOIN @@ -3619,6 +3619,14 @@ numeric: { $$.val = intColTypeInt } +| INT2 + { + $$.val = intColTypeInt2 + } +| INT4 + { + $$.val = intColTypeInt4 + } | INT8 { $$.val = intColTypeInt8 @@ -3643,6 +3651,14 @@ numeric: { $$.val = floatColTypeReal } +| FLOAT4 + { + $$.val = floatColTypeFloat4 + } +| FLOAT8 + { + $$.val = floatColTypeFloat8 + } | FLOAT opt_float { nv := $2.numVal() @@ -5517,11 +5533,15 @@ col_name_keyword: | EXTRACT | EXTRACT_DURATION | FLOAT +| FLOAT4 +| FLOAT8 | GREATEST | GROUPING | IF | IFNULL | INT +| INT2 +| INT4 | INT8 | INT64 | INTEGER diff --git a/pkg/sql/sqlbase/structured.go b/pkg/sql/sqlbase/structured.go index a61db5f98c14..dd2c1fff7ac0 100644 --- a/pkg/sql/sqlbase/structured.go +++ b/pkg/sql/sqlbase/structured.go @@ -1709,7 +1709,7 @@ func ColumnsSelectors(cols []ColumnDescriptor) parser.SelectExprs { func (c *ColumnType) SQLString() string { switch c.SemanticType { case ColumnType_INT: - if c.Width > 0 { + if c.Width > 0 && c.VisibleType == ColumnType_BIT { // A non-zero width indicates a bit array. The syntax "INT(N)" // is invalid so be sure to use "BIT". return fmt.Sprintf("BIT(%d)", c.Width) @@ -1719,7 +1719,7 @@ func (c *ColumnType) SQLString() string { return fmt.Sprintf("%s(%d)", c.SemanticType.String(), c.Width) } case ColumnType_FLOAT: - if c.Precision > 0 { + if c.Precision > 0 && c.VisibleType == ColumnType_NONE { return fmt.Sprintf("%s(%d)", c.SemanticType.String(), c.Precision) } case ColumnType_DECIMAL: diff --git a/pkg/sql/sqlbase/structured.pb.go b/pkg/sql/sqlbase/structured.pb.go index d02a94f4c52b..2ed727247f66 100644 --- a/pkg/sql/sqlbase/structured.pb.go +++ b/pkg/sql/sqlbase/structured.pb.go @@ -148,20 +148,38 @@ func (ColumnType_SemanticType) EnumDescriptor() ([]byte, []int) { type ColumnType_VisibleType int32 const ( - ColumnType_NONE ColumnType_VisibleType = 0 - ColumnType_INT8 ColumnType_VisibleType = 1 - ColumnType_INT64 ColumnType_VisibleType = 2 + ColumnType_NONE ColumnType_VisibleType = 0 + ColumnType_INT8 ColumnType_VisibleType = 1 + ColumnType_INT64 ColumnType_VisibleType = 2 + ColumnType_INT2 ColumnType_VisibleType = 3 + ColumnType_INT4 ColumnType_VisibleType = 4 + ColumnType_SMALLINT ColumnType_VisibleType = 5 + ColumnType_FLOAT4 ColumnType_VisibleType = 6 + ColumnType_FLOAT8 ColumnType_VisibleType = 7 + ColumnType_BIT ColumnType_VisibleType = 8 ) var ColumnType_VisibleType_name = map[int32]string{ 0: "NONE", 1: "INT8", 2: "INT64", + 3: "INT2", + 4: "INT4", + 5: "SMALLINT", + 6: "FLOAT4", + 7: "FLOAT8", + 8: "BIT", } var ColumnType_VisibleType_value = map[string]int32{ - "NONE": 0, - "INT8": 1, - "INT64": 2, + "NONE": 0, + "INT8": 1, + "INT64": 2, + "INT2": 3, + "INT4": 4, + "SMALLINT": 5, + "FLOAT4": 6, + "FLOAT8": 7, + "BIT": 8, } func (x ColumnType_VisibleType) Enum() *ColumnType_VisibleType { @@ -6009,152 +6027,154 @@ func init() { } var fileDescriptorStructured = []byte{ - // 2337 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0x5b, 0x6f, 0xdb, 0xd8, - 0xf1, 0x37, 0x75, 0xd7, 0xe8, 0x46, 0x9f, 0xdc, 0x14, 0xff, 0xf7, 0x6f, 0x2b, 0xda, 0xdd, 0xd4, - 0x49, 0xb3, 0x72, 0xd6, 0x49, 0x17, 0x41, 0x2f, 0x8b, 0xd5, 0xcd, 0x09, 0x1d, 0x59, 0x72, 0x68, - 0xd9, 0x69, 0x16, 0x6d, 0x05, 0x5a, 0x3c, 0xb6, 0x99, 0x50, 0xa4, 0x42, 0x52, 0x5e, 0xeb, 0x0b, - 0x14, 0xfb, 0x58, 0xf4, 0x03, 0x2c, 0x8a, 0x7d, 0xed, 0x6b, 0x1f, 0x8a, 0xa2, 0x1f, 0x20, 0x8f, - 0x7d, 0x2a, 0xfa, 0x64, 0xb4, 0xde, 0x0f, 0x51, 0x20, 0x4f, 0xc5, 0xb9, 0x91, 0x94, 0x65, 0x65, - 0xe5, 0xe4, 0x41, 0x80, 0x38, 0x97, 0x1f, 0x67, 0xe6, 0xcc, 0xcc, 0x99, 0x21, 0xdc, 0xed, 0xdb, - 0xfd, 0x57, 0x8e, 0xad, 0xf5, 0x8f, 0xd6, 0x86, 0xaf, 0x0e, 0xd7, 0xdc, 0xd7, 0x26, 0xf9, 0xed, - 0x6b, 0x2e, 0x5e, 0x73, 0x3d, 0x67, 0xd4, 0xf7, 0x46, 0x0e, 0xd6, 0x2b, 0x43, 0xc7, 0xf6, 0x6c, - 0x74, 0xcd, 0x97, 0xad, 0xb8, 0xaf, 0xcd, 0x0a, 0x97, 0x5b, 0x2a, 0x4d, 0x42, 0xd0, 0x7f, 0xc3, - 0xfd, 0x35, 0x5d, 0xf3, 0x34, 0xa6, 0xb8, 0x74, 0x7b, 0x52, 0x62, 0xe4, 0x19, 0xe6, 0xda, 0x91, - 0xd9, 0x5f, 0xf3, 0x8c, 0x01, 0x76, 0x3d, 0x6d, 0x30, 0xe4, 0x72, 0x77, 0x66, 0x1b, 0x33, 0x74, - 0x8c, 0x63, 0xc3, 0xc4, 0x87, 0x98, 0x8b, 0x5e, 0x3d, 0xb4, 0x0f, 0x6d, 0xfa, 0x77, 0x8d, 0xfc, - 0x63, 0xd4, 0xf2, 0x3f, 0x63, 0x00, 0x75, 0xdb, 0x1c, 0x0d, 0xac, 0xee, 0x78, 0x88, 0xd1, 0x0b, - 0xc8, 0xb9, 0x78, 0xa0, 0x59, 0x9e, 0xd1, 0xef, 0x79, 0xe3, 0x21, 0x2e, 0x4a, 0x25, 0x69, 0x35, - 0xbf, 0x5e, 0xa9, 0x5c, 0xe8, 0x48, 0x25, 0xd0, 0xac, 0xec, 0x70, 0x35, 0xf2, 0x50, 0x8b, 0xbd, - 0x39, 0x5d, 0x59, 0x50, 0xb3, 0x6e, 0x88, 0x86, 0x96, 0x20, 0xfe, 0x8d, 0xa1, 0x7b, 0x47, 0xc5, - 0x48, 0x49, 0x5a, 0x8d, 0x73, 0x11, 0x46, 0x42, 0x65, 0x48, 0x0f, 0x1d, 0xdc, 0x37, 0x5c, 0xc3, - 0xb6, 0x8a, 0xd1, 0x10, 0x3f, 0x20, 0xa3, 0x3b, 0x20, 0x6b, 0x8e, 0xa3, 0x8d, 0x7b, 0xba, 0x31, - 0xc0, 0x16, 0x21, 0xb9, 0xc5, 0x58, 0x29, 0xba, 0x1a, 0x57, 0x0b, 0x94, 0xde, 0xf0, 0xc9, 0xe8, - 0x3a, 0x24, 0x4c, 0xbb, 0xaf, 0x99, 0xb8, 0x18, 0x2f, 0x49, 0xab, 0x69, 0x95, 0x3f, 0xa1, 0x3d, - 0xc8, 0x1e, 0x1b, 0xae, 0xb1, 0x6f, 0x62, 0xe6, 0x5c, 0x82, 0x3a, 0xf7, 0xd9, 0x8f, 0x3b, 0xb7, - 0xc7, 0xb4, 0x42, 0xbe, 0x65, 0x8e, 0x03, 0x52, 0xf9, 0x07, 0x09, 0xb2, 0x61, 0xff, 0x51, 0x0a, - 0x62, 0xb5, 0x4e, 0xa7, 0x25, 0x2f, 0xa0, 0x24, 0x44, 0x95, 0x76, 0x57, 0x96, 0x50, 0x1a, 0xe2, - 0x1b, 0xad, 0x4e, 0xb5, 0x2b, 0x47, 0x50, 0x06, 0x92, 0x8d, 0x66, 0x5d, 0xd9, 0xaa, 0xb6, 0xe4, - 0x28, 0x11, 0x6d, 0x54, 0xbb, 0x4d, 0x39, 0x86, 0x72, 0x90, 0xee, 0x2a, 0x5b, 0xcd, 0x9d, 0x6e, - 0x75, 0x6b, 0x5b, 0x8e, 0xa3, 0x2c, 0xa4, 0x94, 0x76, 0xb7, 0xa9, 0xee, 0x55, 0x5b, 0x72, 0x02, - 0x01, 0x24, 0x76, 0xba, 0xaa, 0xd2, 0x7e, 0x2c, 0x27, 0x09, 0x54, 0xed, 0x45, 0xb7, 0xb9, 0x23, - 0xa7, 0x50, 0x01, 0x32, 0xbe, 0x4e, 0xf7, 0x6b, 0x39, 0x8d, 0x10, 0xe4, 0xeb, 0x9d, 0x56, 0xab, - 0xda, 0x6d, 0x36, 0xb8, 0x3c, 0x90, 0x57, 0xb4, 0xab, 0x5b, 0x4d, 0x39, 0x43, 0xac, 0xe9, 0x28, - 0x0d, 0x39, 0x4b, 0x49, 0xbb, 0xad, 0x96, 0x9c, 0x23, 0xff, 0x76, 0x77, 0x95, 0x86, 0x9c, 0x27, - 0xef, 0x57, 0xda, 0xdd, 0x5e, 0x55, 0x55, 0xab, 0x2f, 0x64, 0x1d, 0x15, 0x00, 0x94, 0x76, 0x77, - 0x7d, 0xaf, 0x59, 0xef, 0x76, 0x54, 0xf9, 0x8d, 0x54, 0xbe, 0x07, 0x99, 0x50, 0x1c, 0x28, 0x44, - 0xa7, 0xdd, 0x94, 0x17, 0xc8, 0x3f, 0xa5, 0xdd, 0x7d, 0xc4, 0x9c, 0x54, 0xda, 0xdd, 0x2f, 0x1e, - 0xca, 0x91, 0xf2, 0x7f, 0x25, 0xb8, 0xb2, 0x61, 0x3b, 0xd8, 0x38, 0xb4, 0x9e, 0xe2, 0xb1, 0x8a, - 0x0f, 0xb0, 0x83, 0xad, 0x3e, 0x46, 0x25, 0x88, 0x7b, 0xda, 0xbe, 0xc9, 0x32, 0x2b, 0x57, 0x03, - 0x12, 0xcd, 0xb7, 0xa7, 0x2b, 0x11, 0xa5, 0xa1, 0x32, 0x06, 0xfa, 0x14, 0xe2, 0x86, 0xa5, 0xe3, - 0x13, 0x9a, 0x28, 0xb9, 0x5a, 0x81, 0x4b, 0x24, 0x15, 0x42, 0x24, 0x62, 0x94, 0x8b, 0x8a, 0x10, - 0xb3, 0xb4, 0x01, 0xa6, 0xe9, 0x92, 0xe6, 0xa7, 0x42, 0x29, 0xe8, 0x29, 0xa4, 0x8e, 0x35, 0xd3, - 0xd0, 0x0d, 0x6f, 0x5c, 0x8c, 0xd1, 0x23, 0xbe, 0x33, 0xf3, 0x88, 0x2d, 0xd7, 0x73, 0x34, 0xc3, - 0xf2, 0xf6, 0xb8, 0x02, 0x07, 0xf2, 0x01, 0xd0, 0x7d, 0x58, 0x74, 0x8f, 0x34, 0x07, 0xeb, 0xbd, - 0xa1, 0x83, 0x0f, 0x8c, 0x93, 0x9e, 0x89, 0x2d, 0x9a, 0x56, 0x22, 0x45, 0x0b, 0x8c, 0xbd, 0x4d, - 0xb9, 0x2d, 0x6c, 0x95, 0x7f, 0x1f, 0x01, 0x99, 0xe5, 0x4e, 0x03, 0xbb, 0x7d, 0xc7, 0x18, 0x7a, - 0xb6, 0xe3, 0x5b, 0x2b, 0x4d, 0x59, 0x7b, 0x1b, 0x22, 0x86, 0xce, 0x7d, 0xbd, 0x4e, 0xe8, 0x67, - 0x34, 0x1a, 0x6f, 0x4f, 0x57, 0x52, 0x0c, 0x45, 0x69, 0xa8, 0x11, 0x43, 0x47, 0xbf, 0x80, 0x18, - 0x4d, 0x5a, 0xe2, 0x6f, 0x66, 0xfd, 0xd6, 0x8f, 0x26, 0xad, 0x78, 0x09, 0x51, 0x42, 0x25, 0x48, - 0x59, 0x23, 0xd3, 0xa4, 0x81, 0x27, 0x21, 0x49, 0x09, 0x3f, 0x05, 0x15, 0xdd, 0x82, 0xac, 0x8e, - 0x0f, 0xb4, 0x91, 0xe9, 0xf5, 0xf0, 0xc9, 0xd0, 0xe1, 0x95, 0x93, 0xe1, 0xb4, 0xe6, 0xc9, 0xd0, - 0x41, 0x1f, 0x41, 0xe2, 0xc8, 0xd0, 0x75, 0x6c, 0xd1, 0xc2, 0x11, 0x10, 0x9c, 0xb6, 0x19, 0x4b, - 0xa5, 0xe4, 0xf4, 0x66, 0x2c, 0x95, 0x96, 0x61, 0x33, 0x96, 0x4a, 0xca, 0xa9, 0xf2, 0xb7, 0x11, - 0xb8, 0xce, 0xec, 0xd9, 0xd0, 0x06, 0x86, 0x39, 0xfe, 0xd0, 0x70, 0x30, 0x14, 0x1e, 0x8e, 0x5b, - 0x90, 0xed, 0x53, 0xec, 0x1e, 0x51, 0x73, 0x8b, 0xd1, 0x52, 0x94, 0xd8, 0xcb, 0x68, 0x6d, 0x42, - 0x42, 0x8f, 0x00, 0xb8, 0x88, 0xa1, 0xb3, 0x5e, 0x91, 0xab, 0xdd, 0x3c, 0x3b, 0x5d, 0x49, 0x8b, - 0xb8, 0xba, 0x13, 0x41, 0x4e, 0x33, 0x61, 0x45, 0x77, 0x51, 0x07, 0x16, 0x45, 0x30, 0x7c, 0x04, - 0x1a, 0x91, 0x5c, 0xed, 0x63, 0x6e, 0x53, 0xa1, 0xc1, 0x04, 0x84, 0xfa, 0x04, 0x54, 0x41, 0x9f, - 0x60, 0xea, 0xe5, 0x3f, 0x47, 0xe0, 0xaa, 0x62, 0x79, 0xd8, 0x31, 0xb1, 0x76, 0x8c, 0x43, 0x81, - 0xf8, 0x35, 0xa4, 0x35, 0xab, 0x8f, 0x5d, 0xcf, 0x76, 0xdc, 0xa2, 0x54, 0x8a, 0xae, 0x66, 0xd6, - 0x1f, 0xce, 0x38, 0xda, 0x8b, 0xf4, 0x2b, 0x55, 0xae, 0x2c, 0xfa, 0xa5, 0x0f, 0xb6, 0xf4, 0x57, - 0x09, 0x52, 0x82, 0x8b, 0xee, 0x43, 0x8a, 0x16, 0x17, 0xf1, 0x83, 0x15, 0xde, 0x35, 0xee, 0x47, - 0xb2, 0x4b, 0xe8, 0xd4, 0x7e, 0x52, 0x83, 0x49, 0x2a, 0xa6, 0xe8, 0xe8, 0x67, 0x90, 0xa2, 0x75, - 0xd6, 0xf3, 0x4f, 0x63, 0x49, 0x68, 0xf0, 0x42, 0x0c, 0xd7, 0x64, 0x92, 0xca, 0x2a, 0x3a, 0xaa, - 0x5f, 0x54, 0x2e, 0x51, 0xaa, 0x7f, 0x43, 0x44, 0x6e, 0x67, 0xb2, 0x60, 0xa6, 0x2b, 0xe8, 0x6f, - 0x49, 0x28, 0x50, 0xe4, 0xb9, 0x32, 0xe6, 0xd3, 0x50, 0xc6, 0x5c, 0x9b, 0xc8, 0x18, 0xdf, 0x3c, - 0x92, 0x30, 0x1f, 0x41, 0x62, 0x64, 0x19, 0xaf, 0x47, 0xac, 0x82, 0xfc, 0xec, 0x65, 0xb4, 0xa9, - 0x74, 0x8a, 0x4d, 0xa7, 0xd3, 0x3d, 0x40, 0x24, 0x96, 0xb8, 0x37, 0x21, 0x18, 0xa7, 0x82, 0x32, - 0xe5, 0xd4, 0x67, 0x26, 0x5f, 0xe2, 0x12, 0xc9, 0xf7, 0x04, 0x64, 0x7c, 0xe2, 0x39, 0x5a, 0x2f, - 0xa4, 0x9f, 0xa4, 0xfa, 0xcb, 0x67, 0xa7, 0x2b, 0xf9, 0x26, 0xe1, 0x5d, 0x0c, 0x92, 0xc7, 0x21, - 0x9e, 0xee, 0xa2, 0xdf, 0xc2, 0x22, 0xc7, 0xd0, 0x0d, 0x07, 0xf7, 0x3d, 0x7a, 0x67, 0xa6, 0x4a, - 0xd1, 0xd5, 0xfc, 0xfa, 0xfd, 0x99, 0x49, 0x36, 0x11, 0xf6, 0x4a, 0x43, 0x28, 0xaa, 0x32, 0x83, - 0xf2, 0x09, 0x2e, 0x7a, 0x06, 0x99, 0x03, 0xd6, 0xe1, 0x7b, 0xaf, 0xf0, 0xb8, 0x98, 0xa6, 0x8d, - 0xe9, 0xee, 0x0c, 0xe0, 0x0b, 0xee, 0x02, 0x7e, 0x04, 0x70, 0xe0, 0xb3, 0xd0, 0x2e, 0xe4, 0x1c, - 0xc1, 0xd6, 0x7b, 0xfb, 0xe3, 0x22, 0xd0, 0x92, 0xb8, 0x3c, 0x68, 0x36, 0x80, 0xa9, 0x8d, 0xd1, - 0x33, 0x00, 0xc3, 0xaf, 0x9e, 0x62, 0x86, 0x1a, 0xfa, 0xd3, 0x4b, 0x94, 0x99, 0xb0, 0x34, 0x00, - 0x41, 0xcf, 0x21, 0x1f, 0x3c, 0x51, 0x53, 0xb3, 0xef, 0x69, 0x6a, 0x2e, 0x84, 0x53, 0x1b, 0xa3, - 0x2e, 0x5c, 0xed, 0xdb, 0x83, 0xa1, 0xed, 0x1a, 0x1e, 0x0e, 0xa7, 0x40, 0x8e, 0xa6, 0x40, 0xf9, - 0xec, 0x74, 0x05, 0xd5, 0x05, 0xff, 0xe2, 0x34, 0x40, 0xfd, 0x73, 0x7c, 0x96, 0x54, 0x13, 0xc9, - 0x4b, 0x10, 0xf3, 0x41, 0x52, 0xed, 0x04, 0xe9, 0x3b, 0x95, 0x54, 0xa1, 0xd4, 0x56, 0x74, 0xb7, - 0xbc, 0x0c, 0x69, 0x3f, 0x07, 0xc8, 0x40, 0x51, 0xdd, 0xa9, 0xb3, 0x19, 0xa0, 0xd1, 0xdc, 0xa9, - 0xcb, 0x52, 0xf9, 0xef, 0x31, 0x40, 0x41, 0xe4, 0xb6, 0x46, 0x9e, 0x46, 0x25, 0xab, 0x90, 0x60, - 0xaf, 0xa6, 0x15, 0x9c, 0x59, 0xff, 0xc9, 0x3b, 0x2f, 0xb0, 0x00, 0xe0, 0xc9, 0x82, 0xca, 0x15, - 0xd1, 0x97, 0xe1, 0xc1, 0x20, 0xb3, 0x7e, 0x7b, 0xbe, 0x14, 0x7e, 0xb2, 0x20, 0x26, 0x86, 0xa7, - 0x10, 0x77, 0x3d, 0xcd, 0x63, 0x0d, 0x20, 0xbf, 0xbe, 0x36, 0x43, 0x7f, 0xda, 0xf8, 0xca, 0x0e, - 0x51, 0x13, 0x23, 0x2b, 0xc5, 0x40, 0xcf, 0x21, 0xed, 0x17, 0x15, 0x9f, 0x32, 0x1e, 0xcc, 0x0f, - 0xe8, 0x47, 0x50, 0xf4, 0x6d, 0x1f, 0x0b, 0x55, 0x21, 0x33, 0xe0, 0x62, 0xc1, 0xad, 0x53, 0xe2, - 0x7d, 0x0d, 0x04, 0x02, 0xed, 0x6f, 0xa1, 0x27, 0x15, 0x84, 0x92, 0xa2, 0xa3, 0xaf, 0x20, 0xeb, - 0x60, 0x77, 0x34, 0xc0, 0x3d, 0x77, 0xa8, 0x59, 0xac, 0xfb, 0x64, 0xd6, 0x6f, 0x84, 0xcc, 0xe3, - 0x2b, 0x47, 0x65, 0x67, 0xa8, 0x09, 0x13, 0x32, 0x4c, 0x85, 0x50, 0xdc, 0xf2, 0x57, 0x10, 0xa7, - 0x3e, 0x93, 0x59, 0x75, 0xb7, 0xfd, 0xb4, 0xdd, 0x79, 0xde, 0x96, 0x17, 0xc8, 0xb4, 0xd9, 0x68, - 0xb6, 0x9a, 0xdd, 0x66, 0xaf, 0xd3, 0x6e, 0xbd, 0x90, 0x25, 0x74, 0x13, 0xae, 0x71, 0x42, 0xb5, - 0xdd, 0xe8, 0x3d, 0x57, 0x15, 0xc1, 0x8a, 0x94, 0x57, 0xc3, 0x69, 0x12, 0xcc, 0x8a, 0x24, 0x61, - 0x1a, 0x0d, 0x59, 0xa2, 0x09, 0xa3, 0x76, 0xb6, 0xe5, 0x48, 0x2d, 0x0b, 0xa0, 0xfb, 0x11, 0x2a, - 0xff, 0xe5, 0x0a, 0x14, 0xe8, 0x95, 0x34, 0x57, 0xef, 0x2f, 0xd1, 0xde, 0xcf, 0xee, 0x17, 0x79, - 0xa2, 0xf7, 0x47, 0x78, 0xdb, 0x7f, 0x00, 0xe9, 0xa1, 0xe6, 0x60, 0xcb, 0x23, 0xc1, 0x8c, 0x4d, - 0x8c, 0x15, 0xa9, 0x6d, 0xca, 0xf0, 0xc5, 0x53, 0x4c, 0x50, 0x21, 0x4a, 0xc9, 0x63, 0xec, 0xd0, - 0x6d, 0x84, 0xc5, 0xff, 0x26, 0x1f, 0x42, 0x17, 0x03, 0xab, 0xf6, 0x98, 0x80, 0x2a, 0x24, 0xd1, - 0xc7, 0x00, 0xa3, 0x61, 0x4f, 0xe8, 0x85, 0x47, 0xa4, 0xf4, 0x68, 0xc8, 0xa5, 0xd1, 0x36, 0x2c, - 0x0e, 0x6c, 0xdd, 0x38, 0x30, 0xfa, 0xec, 0x84, 0xc9, 0x42, 0x57, 0x4c, 0xd2, 0x7c, 0xfe, 0xff, - 0xd0, 0xf9, 0x90, 0x85, 0xaf, 0x72, 0x64, 0xf6, 0x2b, 0x5d, 0xb1, 0xf0, 0x71, 0x28, 0x39, 0xac, - 0x4d, 0x98, 0xe8, 0x31, 0x24, 0x59, 0x7d, 0xb0, 0xd6, 0x3e, 0x7f, 0x65, 0x71, 0x44, 0xa1, 0x8d, - 0x36, 0x20, 0x6f, 0xe1, 0x93, 0xf0, 0xc4, 0x93, 0x9e, 0xc8, 0xbd, 0x6c, 0x1b, 0x9f, 0x5c, 0x3c, - 0xee, 0x64, 0xad, 0x80, 0xa3, 0xa3, 0x67, 0x90, 0x1b, 0x3a, 0xc6, 0x40, 0x73, 0xc6, 0x3d, 0x56, - 0xae, 0x70, 0x99, 0x72, 0x15, 0xfd, 0x9b, 0x43, 0x50, 0x2e, 0xda, 0x00, 0x36, 0x60, 0x60, 0xb7, - 0x98, 0xa1, 0x3e, 0x5e, 0x0e, 0x4c, 0x28, 0xa3, 0x1a, 0xe4, 0xa8, 0x8b, 0xfe, 0x64, 0x93, 0xa5, - 0x1e, 0x2e, 0x73, 0x0f, 0x33, 0xc4, 0xc3, 0x0b, 0xa6, 0x9b, 0x8c, 0xe5, 0xd3, 0x75, 0xb4, 0x09, - 0xe0, 0xaf, 0xd6, 0xa4, 0x2b, 0xbf, 0xeb, 0xd2, 0xdb, 0x16, 0x82, 0x81, 0x49, 0x6a, 0x48, 0x1b, - 0x6d, 0x41, 0x5a, 0x94, 0x2d, 0x6b, 0xc7, 0x99, 0x99, 0xab, 0xca, 0x74, 0x13, 0x11, 0xc9, 0xe5, - 0x23, 0xa0, 0x36, 0xc4, 0x4d, 0xac, 0xb9, 0xb8, 0x58, 0xa0, 0x56, 0x3d, 0x9a, 0x01, 0x75, 0xae, - 0xbc, 0x2a, 0x3b, 0xfd, 0x23, 0x3c, 0xd0, 0xea, 0x47, 0x9a, 0x75, 0x88, 0x5b, 0x44, 0x5f, 0x65, - 0x30, 0xa8, 0x0d, 0x32, 0x0d, 0x57, 0xb8, 0x1f, 0xc9, 0x34, 0x62, 0x9f, 0xf0, 0x88, 0xe5, 0x49, - 0xc4, 0x66, 0xf6, 0x24, 0x9a, 0x4f, 0x5b, 0x41, 0x5f, 0xfa, 0x25, 0xe4, 0x0f, 0x6c, 0x67, 0xa0, - 0x79, 0x7e, 0x95, 0x2c, 0x06, 0x53, 0xdb, 0xdb, 0xd3, 0x95, 0xdc, 0x06, 0xe5, 0x8a, 0xca, 0xca, - 0x1d, 0x84, 0x1f, 0xd1, 0x13, 0xd1, 0xbe, 0xaf, 0xd0, 0x6e, 0x7b, 0x6f, 0x5e, 0xef, 0xa6, 0x7b, - 0x77, 0x1b, 0x12, 0xfd, 0x23, 0xdc, 0x7f, 0xe5, 0x16, 0xaf, 0xd2, 0x98, 0x7f, 0x31, 0x27, 0x54, - 0x9d, 0x28, 0x05, 0x3b, 0xa3, 0xca, 0x51, 0xd0, 0x33, 0x48, 0x3a, 0x98, 0x8d, 0x83, 0xd7, 0x28, - 0xe0, 0xe7, 0x73, 0x02, 0xaa, 0x54, 0x4b, 0xb1, 0x0e, 0x6c, 0x91, 0xa9, 0x1c, 0x07, 0x75, 0x20, - 0x75, 0x40, 0xd6, 0x1d, 0x03, 0xbb, 0xc5, 0xeb, 0x14, 0xf3, 0xdd, 0x9f, 0x29, 0xce, 0x6f, 0x58, - 0x62, 0xbf, 0x13, 0x20, 0x7e, 0x75, 0x53, 0xc2, 0x98, 0x9c, 0xe4, 0x8d, 0xe9, 0xea, 0x16, 0x1b, - 0xd6, 0xc4, 0xb6, 0x45, 0xab, 0x9b, 0x3f, 0xe9, 0xa4, 0xcb, 0x1d, 0x1b, 0xf8, 0x9b, 0xde, 0xeb, - 0x11, 0x76, 0xc6, 0xc5, 0x62, 0xa8, 0x23, 0xa7, 0x09, 0xfd, 0x19, 0x21, 0xa3, 0xcf, 0x21, 0xad, - 0xe3, 0x21, 0xb6, 0x74, 0xb7, 0x63, 0x15, 0x6f, 0xd2, 0x31, 0xe3, 0x0a, 0x99, 0x7d, 0x1b, 0x82, - 0xc8, 0x3b, 0x6e, 0x20, 0x85, 0x5e, 0x92, 0xfd, 0x93, 0x3c, 0x60, 0xbd, 0x63, 0xd5, 0xc6, 0xc5, - 0x25, 0xea, 0xf4, 0xfd, 0xb9, 0x03, 0x29, 0x66, 0xaa, 0xab, 0xc2, 0x9f, 0x46, 0x08, 0x4d, 0x9d, - 0xc0, 0x46, 0xbf, 0x81, 0xac, 0x48, 0xe9, 0x4d, 0x7b, 0xdf, 0x2d, 0xfe, 0x1f, 0x7d, 0xd7, 0xfa, - 0x9c, 0xef, 0xda, 0x0a, 0x54, 0x45, 0xb3, 0x0a, 0xa3, 0x2d, 0x7d, 0x2f, 0xc1, 0xe2, 0x54, 0x49, - 0xa1, 0xdf, 0x41, 0xd2, 0xb2, 0xf5, 0xd0, 0x02, 0xd6, 0xe4, 0x86, 0x26, 0xda, 0xb6, 0xce, 0xf6, - 0xaf, 0x07, 0x87, 0x86, 0x77, 0x34, 0xda, 0xaf, 0xf4, 0xed, 0xc1, 0x9a, 0x6f, 0x8a, 0xbe, 0xbf, - 0x76, 0xe1, 0xd7, 0xc2, 0x0a, 0x53, 0x53, 0x13, 0x04, 0x55, 0xd1, 0xd1, 0x67, 0x50, 0xc0, 0x27, - 0x43, 0xc3, 0x09, 0x5d, 0x2b, 0x64, 0x4c, 0x8a, 0x72, 0x13, 0xf3, 0x01, 0x93, 0xdc, 0x1a, 0x4b, - 0x7f, 0x94, 0xa0, 0x70, 0x2e, 0x9d, 0xc9, 0x35, 0x4b, 0x57, 0xff, 0x89, 0x6b, 0x96, 0x50, 0xfc, - 0x0b, 0x38, 0xf2, 0xce, 0x6f, 0x2d, 0xd1, 0x0f, 0xfc, 0xd6, 0xb2, 0x64, 0x02, 0x04, 0x15, 0x81, - 0x7e, 0x05, 0x39, 0xdb, 0xd4, 0x7b, 0xc1, 0xed, 0x2d, 0x05, 0x57, 0x31, 0x69, 0xd6, 0x1d, 0x53, - 0x3f, 0x77, 0x81, 0x67, 0x6c, 0x9f, 0xa4, 0xa3, 0x15, 0x48, 0x11, 0xf5, 0x29, 0xbb, 0x93, 0xb6, - 0xa9, 0x93, 0x15, 0x6d, 0xe9, 0x3b, 0x09, 0xd2, 0xe1, 0xef, 0x52, 0x11, 0xff, 0x15, 0x17, 0x4f, - 0x12, 0xef, 0xb9, 0x11, 0x4f, 0x2e, 0x82, 0xd1, 0xf9, 0x17, 0xc1, 0xa5, 0x63, 0xc8, 0x84, 0x72, - 0xed, 0xfc, 0x60, 0x28, 0xbd, 0xc7, 0x60, 0xf8, 0x09, 0x24, 0x5e, 0xda, 0xfb, 0xc2, 0x81, 0x68, - 0x2d, 0xc7, 0xb5, 0xe3, 0x9b, 0xf6, 0xbe, 0xd2, 0x50, 0xe3, 0x2f, 0xed, 0x7d, 0x45, 0x2f, 0xdf, - 0x16, 0xc3, 0x1f, 0x40, 0x62, 0x7b, 0xb7, 0xd6, 0x52, 0xea, 0x17, 0x0e, 0x6e, 0x3f, 0x8f, 0x7d, - 0xfb, 0xa7, 0x15, 0x69, 0x33, 0x96, 0x42, 0xf2, 0x95, 0xf2, 0xf7, 0x12, 0xa0, 0x86, 0xe6, 0x69, - 0xe4, 0xa8, 0x2f, 0x31, 0xb9, 0x45, 0xde, 0x11, 0xef, 0xc9, 0x8b, 0x36, 0xfa, 0x21, 0x17, 0x2d, - 0x33, 0xb5, 0xfc, 0x9d, 0x04, 0x10, 0x32, 0xee, 0xcb, 0xf0, 0xa7, 0xc8, 0xd9, 0x33, 0xc5, 0xb9, - 0xfa, 0x27, 0xfb, 0x04, 0xfb, 0x50, 0xf9, 0x18, 0x52, 0x3a, 0x77, 0x99, 0xaf, 0x24, 0x33, 0x2f, - 0xef, 0xa9, 0xc8, 0x3c, 0x59, 0x50, 0x7d, 0xe5, 0x5a, 0x12, 0xe2, 0x23, 0xcb, 0xb0, 0xad, 0xbb, - 0x0f, 0x01, 0x4d, 0x97, 0x09, 0xca, 0x41, 0x9a, 0xfe, 0xd7, 0x3c, 0xac, 0xb3, 0x29, 0x7c, 0xd7, - 0x3a, 0xf6, 0x09, 0x52, 0xed, 0xd6, 0x9b, 0xff, 0x2c, 0x2f, 0xbc, 0x39, 0x5b, 0x96, 0xfe, 0x71, - 0xb6, 0x2c, 0xfd, 0xeb, 0x6c, 0x59, 0xfa, 0xf7, 0xd9, 0xb2, 0xf4, 0x87, 0x1f, 0x96, 0x17, 0xbe, - 0x4e, 0x72, 0x03, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0x19, 0x0e, 0xa5, 0x2b, 0xb5, 0x18, 0x00, - 0x00, + // 2372 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0xcb, 0x73, 0xdb, 0xe6, + 0x11, 0x17, 0xf8, 0xe6, 0xf2, 0x05, 0x7d, 0x7e, 0xd1, 0x6a, 0x2a, 0xd1, 0x4c, 0xe2, 0xca, 0x6e, + 0x42, 0x39, 0xb2, 0x9b, 0xf1, 0xf4, 0x91, 0x09, 0x5f, 0xb2, 0x21, 0x53, 0xa4, 0x0c, 0x52, 0x72, + 0x9d, 0x69, 0xcb, 0x81, 0x88, 0x4f, 0x12, 0x6c, 0x10, 0xa0, 0x01, 0x50, 0x11, 0xff, 0x81, 0x4e, + 0x8e, 0x9d, 0xde, 0x7a, 0xc9, 0x74, 0x72, 0xed, 0xb5, 0x87, 0x4e, 0xa7, 0x7f, 0x80, 0x8f, 0x3d, + 0xf6, 0xa4, 0x69, 0x95, 0x3f, 0xa2, 0x33, 0x3e, 0x65, 0xbe, 0x17, 0x00, 0x8a, 0xa2, 0x23, 0xd9, + 0x07, 0xce, 0x10, 0xfb, 0xf8, 0x61, 0x77, 0xbf, 0xdd, 0xfd, 0x76, 0x01, 0x77, 0x07, 0xf6, 0xe0, + 0xa5, 0x63, 0x6b, 0x83, 0xc3, 0xb5, 0xd1, 0xcb, 0x83, 0x35, 0xf7, 0x95, 0x49, 0x7e, 0x7b, 0x9a, + 0x8b, 0xd7, 0x5c, 0xcf, 0x19, 0x0f, 0xbc, 0xb1, 0x83, 0xf5, 0xca, 0xc8, 0xb1, 0x3d, 0x1b, 0x5d, + 0xf3, 0x65, 0x2b, 0xee, 0x2b, 0xb3, 0xc2, 0xe5, 0x96, 0x4a, 0xd3, 0x10, 0xf4, 0xdf, 0x68, 0x6f, + 0x4d, 0xd7, 0x3c, 0x8d, 0x29, 0x2e, 0xdd, 0x9e, 0x96, 0x18, 0x7b, 0x86, 0xb9, 0x76, 0x68, 0x0e, + 0xd6, 0x3c, 0x63, 0x88, 0x5d, 0x4f, 0x1b, 0x8e, 0xb8, 0xdc, 0x9d, 0xf9, 0xc6, 0x8c, 0x1c, 0xe3, + 0xc8, 0x30, 0xf1, 0x01, 0xe6, 0xa2, 0x57, 0x0f, 0xec, 0x03, 0x9b, 0xfe, 0x5d, 0x23, 0xff, 0x18, + 0xb5, 0xfc, 0x97, 0x38, 0x40, 0xdd, 0x36, 0xc7, 0x43, 0xab, 0x37, 0x19, 0x61, 0xf4, 0x1c, 0x72, + 0x2e, 0x1e, 0x6a, 0x96, 0x67, 0x0c, 0xfa, 0xde, 0x64, 0x84, 0x8b, 0x52, 0x49, 0x5a, 0xcd, 0xaf, + 0x57, 0x2a, 0xe7, 0x3a, 0x52, 0x09, 0x34, 0x2b, 0x5d, 0xae, 0x46, 0x1e, 0x6a, 0xb1, 0xd7, 0x27, + 0x2b, 0x0b, 0x6a, 0xd6, 0x0d, 0xd1, 0xd0, 0x12, 0xc4, 0xbf, 0x36, 0x74, 0xef, 0xb0, 0x18, 0x29, + 0x49, 0xab, 0x71, 0x2e, 0xc2, 0x48, 0xa8, 0x0c, 0xe9, 0x91, 0x83, 0x07, 0x86, 0x6b, 0xd8, 0x56, + 0x31, 0x1a, 0xe2, 0x07, 0x64, 0x74, 0x07, 0x64, 0xcd, 0x71, 0xb4, 0x49, 0x5f, 0x37, 0x86, 0xd8, + 0x22, 0x24, 0xb7, 0x18, 0x2b, 0x45, 0x57, 0xe3, 0x6a, 0x81, 0xd2, 0x1b, 0x3e, 0x19, 0x5d, 0x87, + 0x84, 0x69, 0x0f, 0x34, 0x13, 0x17, 0xe3, 0x25, 0x69, 0x35, 0xad, 0xf2, 0x27, 0xb4, 0x0b, 0xd9, + 0x23, 0xc3, 0x35, 0xf6, 0x4c, 0xcc, 0x9c, 0x4b, 0x50, 0xe7, 0x3e, 0xfd, 0x71, 0xe7, 0x76, 0x99, + 0x56, 0xc8, 0xb7, 0xcc, 0x51, 0x40, 0x2a, 0x7f, 0x2f, 0x41, 0x36, 0xec, 0x3f, 0x4a, 0x41, 0xac, + 0xd6, 0xe9, 0xb4, 0xe4, 0x05, 0x94, 0x84, 0xa8, 0xd2, 0xee, 0xc9, 0x12, 0x4a, 0x43, 0x7c, 0xa3, + 0xd5, 0xa9, 0xf6, 0xe4, 0x08, 0xca, 0x40, 0xb2, 0xd1, 0xac, 0x2b, 0x5b, 0xd5, 0x96, 0x1c, 0x25, + 0xa2, 0x8d, 0x6a, 0xaf, 0x29, 0xc7, 0x50, 0x0e, 0xd2, 0x3d, 0x65, 0xab, 0xd9, 0xed, 0x55, 0xb7, + 0xb6, 0xe5, 0x38, 0xca, 0x42, 0x4a, 0x69, 0xf7, 0x9a, 0xea, 0x6e, 0xb5, 0x25, 0x27, 0x10, 0x40, + 0xa2, 0xdb, 0x53, 0x95, 0xf6, 0x23, 0x39, 0x49, 0xa0, 0x6a, 0xcf, 0x7b, 0xcd, 0xae, 0x9c, 0x42, + 0x05, 0xc8, 0xf8, 0x3a, 0xbd, 0xaf, 0xe4, 0x34, 0x42, 0x90, 0xaf, 0x77, 0x5a, 0xad, 0x6a, 0xaf, + 0xd9, 0xe0, 0xf2, 0x40, 0x5e, 0xd1, 0xae, 0x6e, 0x35, 0xe5, 0x0c, 0xb1, 0xa6, 0xa3, 0x34, 0xe4, + 0x2c, 0x25, 0xed, 0xb4, 0x5a, 0x72, 0x8e, 0xfc, 0xdb, 0xd9, 0x51, 0x1a, 0x72, 0x9e, 0xbc, 0x5f, + 0x69, 0xf7, 0xfa, 0x55, 0x55, 0xad, 0x3e, 0x97, 0x75, 0x54, 0x00, 0x50, 0xda, 0xbd, 0xf5, 0xdd, + 0x66, 0xbd, 0xd7, 0x51, 0xe5, 0xd7, 0x52, 0xd9, 0x86, 0x4c, 0x28, 0x0e, 0x14, 0xa2, 0xd3, 0x6e, + 0xca, 0x0b, 0xe4, 0x9f, 0xd2, 0xee, 0x3d, 0x64, 0x4e, 0x2a, 0xed, 0xde, 0xe7, 0x0f, 0xe4, 0x08, + 0x27, 0xae, 0x33, 0x0f, 0x95, 0x76, 0xef, 0x81, 0x1c, 0x23, 0x2e, 0x75, 0xb7, 0xaa, 0xad, 0x16, + 0x89, 0x48, 0x9c, 0xb8, 0x44, 0x23, 0xf2, 0x80, 0xb9, 0x47, 0xff, 0x3f, 0x94, 0x93, 0xc4, 0xc8, + 0x9a, 0xd2, 0x93, 0x53, 0xe5, 0xff, 0x4b, 0x70, 0x65, 0xc3, 0x76, 0xb0, 0x71, 0x60, 0x3d, 0xc1, + 0x13, 0x15, 0xef, 0x63, 0x07, 0x5b, 0x03, 0x8c, 0x4a, 0x10, 0xf7, 0xb4, 0x3d, 0x93, 0x25, 0x67, + 0xae, 0x06, 0xe4, 0x40, 0xde, 0x9c, 0xac, 0x44, 0x94, 0x86, 0xca, 0x18, 0xe8, 0x63, 0x88, 0x1b, + 0x96, 0x8e, 0x8f, 0x69, 0xae, 0xe5, 0x6a, 0x05, 0x2e, 0x91, 0x54, 0x08, 0x91, 0x88, 0x51, 0x2e, + 0x2a, 0x42, 0xcc, 0xd2, 0x86, 0x98, 0x66, 0x5c, 0x9a, 0x1f, 0x2c, 0xa5, 0xa0, 0x27, 0x90, 0x3a, + 0xd2, 0x4c, 0x43, 0x37, 0xbc, 0x49, 0x31, 0x46, 0xb3, 0xe4, 0xce, 0xdc, 0x2c, 0xb1, 0x5c, 0xcf, + 0xd1, 0x0c, 0xcb, 0xdb, 0xe5, 0x0a, 0x1c, 0xc8, 0x07, 0x40, 0xf7, 0x60, 0xd1, 0x3d, 0xd4, 0x1c, + 0xac, 0xf7, 0x47, 0x0e, 0xde, 0x37, 0x8e, 0xfb, 0x26, 0xb6, 0x68, 0x66, 0x8a, 0x2c, 0x2f, 0x30, + 0xf6, 0x36, 0xe5, 0xb6, 0xb0, 0x55, 0xfe, 0x63, 0x04, 0x64, 0x96, 0x7e, 0x0d, 0xec, 0x0e, 0x1c, + 0x63, 0xe4, 0xd9, 0x8e, 0x6f, 0xad, 0x34, 0x63, 0xed, 0x6d, 0x88, 0x18, 0x3a, 0xf7, 0xf5, 0x3a, + 0xa1, 0x9f, 0xd2, 0x68, 0xbc, 0x39, 0x59, 0x49, 0x31, 0x14, 0xa5, 0xa1, 0x46, 0x0c, 0x1d, 0xfd, + 0x0a, 0x62, 0x34, 0xef, 0x89, 0xbf, 0x99, 0xf5, 0x5b, 0x3f, 0x9a, 0xf7, 0xe2, 0x25, 0x44, 0x09, + 0x95, 0x20, 0x65, 0x8d, 0x4d, 0x93, 0x06, 0x9e, 0x84, 0x24, 0x25, 0xfc, 0x14, 0x54, 0x74, 0x0b, + 0xb2, 0x3a, 0xde, 0xd7, 0xc6, 0xa6, 0xd7, 0xc7, 0xc7, 0x23, 0x87, 0x17, 0x5f, 0x86, 0xd3, 0x9a, + 0xc7, 0x23, 0x07, 0x7d, 0x00, 0x89, 0x43, 0x43, 0xd7, 0xb1, 0x45, 0x6b, 0x4f, 0x40, 0x70, 0xda, + 0x66, 0x2c, 0x95, 0x92, 0xd3, 0x9b, 0xb1, 0x54, 0x5a, 0x86, 0xcd, 0x58, 0x2a, 0x29, 0xa7, 0xca, + 0xdf, 0x44, 0xe0, 0x3a, 0xb3, 0x67, 0x43, 0x1b, 0x1a, 0xe6, 0xe4, 0x7d, 0xc3, 0xc1, 0x50, 0x78, + 0x38, 0x6e, 0x41, 0x76, 0x40, 0xb1, 0xfb, 0x44, 0xcd, 0x2d, 0x46, 0x4b, 0x51, 0x62, 0x2f, 0xa3, + 0xb5, 0x09, 0x09, 0x3d, 0x04, 0xe0, 0x22, 0x86, 0xce, 0xda, 0x4d, 0xae, 0x76, 0xf3, 0xf4, 0x64, + 0x25, 0x2d, 0xe2, 0xea, 0x4e, 0x05, 0x39, 0xcd, 0x84, 0x15, 0xdd, 0x45, 0x1d, 0x58, 0x14, 0xc1, + 0xf0, 0x11, 0x68, 0x44, 0x72, 0xb5, 0x0f, 0xb9, 0x4d, 0x85, 0x06, 0x13, 0x10, 0xea, 0x53, 0x50, + 0x05, 0x7d, 0x8a, 0xa9, 0x97, 0xff, 0x16, 0x81, 0xab, 0x8a, 0xe5, 0x61, 0xc7, 0xc4, 0xda, 0x11, + 0x0e, 0x05, 0xe2, 0xb7, 0x90, 0xd6, 0xac, 0x01, 0x76, 0x3d, 0xdb, 0x71, 0x8b, 0x52, 0x29, 0xba, + 0x9a, 0x59, 0x7f, 0x30, 0xe7, 0x68, 0xcf, 0xd3, 0xaf, 0x54, 0xb9, 0xb2, 0x68, 0xb9, 0x3e, 0xd8, + 0xd2, 0x3f, 0x24, 0x48, 0x09, 0x2e, 0xba, 0x07, 0x29, 0x5a, 0x5c, 0xc4, 0x0f, 0x56, 0x78, 0xd7, + 0xb8, 0x1f, 0xc9, 0x1e, 0xa1, 0x53, 0xfb, 0x49, 0x0d, 0x26, 0xa9, 0x98, 0xa2, 0xa3, 0x5f, 0x40, + 0x8a, 0xd6, 0x59, 0xdf, 0x3f, 0x8d, 0x25, 0xa1, 0xc1, 0x0b, 0x31, 0x5c, 0x93, 0x49, 0x2a, 0xab, + 0xe8, 0xa8, 0x7e, 0x5e, 0xb9, 0x44, 0xa9, 0xfe, 0x0d, 0x11, 0xb9, 0xee, 0x74, 0xc1, 0xcc, 0x56, + 0xd0, 0x3f, 0x93, 0x50, 0xa0, 0xc8, 0x17, 0xca, 0x98, 0x8f, 0x43, 0x19, 0x73, 0x6d, 0x2a, 0x63, + 0x7c, 0xf3, 0x48, 0xc2, 0x7c, 0x00, 0x89, 0xb1, 0x65, 0xbc, 0x1a, 0xb3, 0x0a, 0xf2, 0xb3, 0x97, + 0xd1, 0x66, 0xd2, 0x29, 0x36, 0x9b, 0x4e, 0x9f, 0x00, 0x22, 0xb1, 0xc4, 0xfd, 0x29, 0xc1, 0x38, + 0x15, 0x94, 0x29, 0xa7, 0x3e, 0x37, 0xf9, 0x12, 0x97, 0x48, 0xbe, 0xc7, 0x20, 0xe3, 0x63, 0xcf, + 0xd1, 0xfa, 0x21, 0xfd, 0x24, 0xd5, 0x5f, 0x3e, 0x3d, 0x59, 0xc9, 0x37, 0x09, 0xef, 0x7c, 0x90, + 0x3c, 0x0e, 0xf1, 0x74, 0x17, 0xfd, 0x1e, 0x16, 0x39, 0x86, 0x6e, 0x38, 0x78, 0xe0, 0xd1, 0x6b, + 0x37, 0x55, 0x8a, 0xae, 0xe6, 0xd7, 0xef, 0xcd, 0x4d, 0xb2, 0xa9, 0xb0, 0x57, 0x1a, 0x42, 0x51, + 0x95, 0x19, 0x94, 0x4f, 0x70, 0xd1, 0x53, 0xc8, 0xec, 0xb3, 0x0e, 0xdf, 0x7f, 0x89, 0x27, 0xc5, + 0x34, 0x6d, 0x4c, 0x77, 0xe7, 0x00, 0x9f, 0x73, 0x17, 0xf0, 0x23, 0x80, 0x7d, 0x9f, 0x85, 0x76, + 0x20, 0xe7, 0x08, 0xb6, 0xde, 0xdf, 0x9b, 0x14, 0x81, 0x96, 0xc4, 0xe5, 0x41, 0xb3, 0x01, 0x4c, + 0x6d, 0x82, 0x9e, 0x02, 0x18, 0x7e, 0xf5, 0x14, 0x33, 0xd4, 0xd0, 0x9f, 0x5f, 0xa2, 0xcc, 0x84, + 0xa5, 0x01, 0x08, 0x7a, 0x06, 0xf9, 0xe0, 0x89, 0x9a, 0x9a, 0x7d, 0x47, 0x53, 0x73, 0x21, 0x9c, + 0xda, 0x04, 0xf5, 0xe0, 0xea, 0xc0, 0x1e, 0x8e, 0x6c, 0xd7, 0xf0, 0x70, 0x38, 0x05, 0x72, 0x34, + 0x05, 0xca, 0xa7, 0x27, 0x2b, 0xa8, 0x2e, 0xf8, 0xe7, 0xa7, 0x01, 0x1a, 0x9c, 0xe1, 0xb3, 0xa4, + 0x9a, 0x4a, 0x5e, 0x82, 0x98, 0x0f, 0x92, 0xaa, 0x1b, 0xa4, 0xef, 0x4c, 0x52, 0x85, 0x52, 0x5b, + 0xd1, 0xdd, 0xf2, 0x32, 0xa4, 0xfd, 0x1c, 0x20, 0xd7, 0x7d, 0xb5, 0x5b, 0x67, 0x63, 0x44, 0xa3, + 0xd9, 0xad, 0xcb, 0x52, 0xf9, 0x5f, 0x31, 0x40, 0x41, 0xe4, 0xb6, 0xc6, 0x9e, 0x46, 0x25, 0xab, + 0x90, 0x60, 0xaf, 0xa6, 0x15, 0x9c, 0x59, 0xff, 0xd9, 0x5b, 0x2f, 0xb0, 0x00, 0xe0, 0xf1, 0x82, + 0xca, 0x15, 0xd1, 0x17, 0xe1, 0xc1, 0x20, 0xb3, 0x7e, 0xfb, 0x62, 0x29, 0xfc, 0x78, 0x41, 0x4c, + 0x0c, 0x4f, 0x20, 0xee, 0x7a, 0x9a, 0xc7, 0x1a, 0x40, 0x7e, 0x7d, 0x6d, 0x8e, 0xfe, 0xac, 0xf1, + 0x95, 0x2e, 0x51, 0x13, 0x53, 0x2f, 0xc5, 0x40, 0xcf, 0x20, 0xed, 0x17, 0x15, 0x9f, 0x32, 0xee, + 0x5f, 0x1c, 0xd0, 0x8f, 0xa0, 0xe8, 0xdb, 0x3e, 0x16, 0xaa, 0x42, 0x66, 0xc8, 0xc5, 0x82, 0x5b, + 0xa7, 0xc4, 0xfb, 0x1a, 0x08, 0x04, 0xda, 0xdf, 0x42, 0x4f, 0x2a, 0x08, 0x25, 0x45, 0x47, 0x5f, + 0x42, 0xd6, 0xc1, 0xee, 0x78, 0x88, 0xfb, 0xee, 0x48, 0xb3, 0x58, 0xf7, 0xc9, 0xac, 0xdf, 0x08, + 0x99, 0xc7, 0xb7, 0x96, 0x4a, 0x77, 0xa4, 0x09, 0x13, 0x32, 0x4c, 0x85, 0x50, 0xdc, 0xf2, 0x97, + 0x10, 0xa7, 0x3e, 0x93, 0x71, 0x77, 0xa7, 0xfd, 0xa4, 0xdd, 0x79, 0xd6, 0x96, 0x17, 0xc8, 0xc0, + 0xda, 0x68, 0xb6, 0x9a, 0xbd, 0x66, 0xbf, 0xd3, 0x6e, 0x3d, 0x97, 0x25, 0x74, 0x13, 0xae, 0x71, + 0x42, 0xb5, 0xdd, 0xe8, 0x3f, 0x53, 0x15, 0xc1, 0x8a, 0x94, 0x57, 0xc3, 0x69, 0x12, 0x8c, 0x9b, + 0x24, 0x61, 0x1a, 0x0d, 0x59, 0xa2, 0x09, 0xa3, 0x76, 0xb6, 0xe5, 0x48, 0x2d, 0x0b, 0xa0, 0xfb, + 0x11, 0x2a, 0xff, 0xfd, 0x0a, 0x14, 0xe8, 0x95, 0x74, 0xa1, 0xde, 0x5f, 0xa2, 0xbd, 0x9f, 0xdd, + 0x2f, 0xf2, 0x54, 0xef, 0x8f, 0xf0, 0xb6, 0x7f, 0x1f, 0xd2, 0x23, 0xcd, 0xc1, 0x96, 0x47, 0x82, + 0x19, 0x9b, 0x1a, 0x2b, 0x52, 0xdb, 0x94, 0xe1, 0x8b, 0xa7, 0x98, 0xa0, 0x42, 0x94, 0x92, 0x47, + 0xd8, 0xa1, 0x0b, 0x0d, 0x8b, 0xff, 0x4d, 0x3e, 0x84, 0x2e, 0x06, 0x56, 0xed, 0x32, 0x01, 0x55, + 0x48, 0xa2, 0x0f, 0x01, 0xc6, 0xa3, 0xbe, 0xd0, 0x0b, 0x8f, 0x48, 0xe9, 0xf1, 0x88, 0x4b, 0xa3, + 0x6d, 0x58, 0x1c, 0xda, 0xba, 0xb1, 0x6f, 0x0c, 0xd8, 0x09, 0x93, 0x9d, 0xb0, 0x98, 0xa4, 0xf9, + 0xfc, 0xd3, 0xd0, 0xf9, 0x90, 0x9d, 0xb1, 0x72, 0x68, 0x0e, 0x2a, 0x3d, 0xb1, 0x33, 0x72, 0x28, + 0x39, 0xac, 0x4d, 0x98, 0xe8, 0x11, 0x24, 0x59, 0x7d, 0xb0, 0xd6, 0x7e, 0xf1, 0xca, 0xe2, 0x88, + 0x42, 0x1b, 0x6d, 0x40, 0xde, 0xc2, 0xc7, 0xe1, 0x89, 0x27, 0x3d, 0x95, 0x7b, 0xd9, 0x36, 0x3e, + 0x3e, 0x7f, 0xdc, 0xc9, 0x5a, 0x01, 0x47, 0x47, 0x4f, 0x21, 0x37, 0x72, 0x8c, 0xa1, 0xe6, 0x4c, + 0xfa, 0xac, 0x5c, 0xe1, 0x32, 0xe5, 0x2a, 0xfa, 0x37, 0x87, 0xa0, 0x5c, 0xb4, 0x01, 0x6c, 0xc0, + 0xc0, 0x6e, 0x31, 0x43, 0x7d, 0xbc, 0x1c, 0x98, 0x50, 0x46, 0x35, 0xc8, 0x51, 0x17, 0xfd, 0xc9, + 0x26, 0x4b, 0x3d, 0x5c, 0xe6, 0x1e, 0x66, 0x88, 0x87, 0xe7, 0x4c, 0x37, 0x19, 0xcb, 0xa7, 0xeb, + 0x68, 0x13, 0xc0, 0xdf, 0xce, 0x49, 0x57, 0x7e, 0xdb, 0xa5, 0xb7, 0x2d, 0x04, 0x03, 0x93, 0xd4, + 0x90, 0x36, 0xda, 0x82, 0xb4, 0x28, 0x5b, 0xd6, 0x8e, 0x33, 0x73, 0x57, 0x95, 0xd9, 0x26, 0x22, + 0x92, 0xcb, 0x47, 0x40, 0x6d, 0x88, 0x9b, 0x58, 0x73, 0x71, 0xb1, 0x40, 0xad, 0x7a, 0x38, 0x07, + 0xea, 0x4c, 0x79, 0x55, 0xba, 0x83, 0x43, 0x3c, 0xd4, 0xea, 0x87, 0x9a, 0x75, 0x80, 0x5b, 0x44, + 0x5f, 0x65, 0x30, 0xa8, 0x0d, 0x32, 0x0d, 0x57, 0xb8, 0x1f, 0xc9, 0x34, 0x62, 0x1f, 0xf1, 0x88, + 0xe5, 0x49, 0xc4, 0xe6, 0xf6, 0x24, 0x9a, 0x4f, 0x5b, 0x41, 0x5f, 0xfa, 0x35, 0xe4, 0xf7, 0x6d, + 0x67, 0xa8, 0x79, 0x7e, 0x95, 0x2c, 0x06, 0x53, 0xdb, 0x9b, 0x93, 0x95, 0xdc, 0x06, 0xe5, 0x8a, + 0xca, 0xca, 0xed, 0x87, 0x1f, 0xd1, 0x63, 0xd1, 0xbe, 0xaf, 0xd0, 0x6e, 0xfb, 0xc9, 0x45, 0xbd, + 0x9b, 0xed, 0xdd, 0x6d, 0x48, 0x0c, 0x0e, 0xf1, 0xe0, 0xa5, 0x5b, 0xbc, 0x4a, 0x63, 0xfe, 0xf9, + 0x05, 0xa1, 0xea, 0x44, 0x29, 0xd8, 0x19, 0x55, 0x8e, 0x82, 0x9e, 0x42, 0xd2, 0xc1, 0x6c, 0x1c, + 0xbc, 0x46, 0x01, 0x3f, 0xbb, 0x20, 0xa0, 0x4a, 0xb5, 0x14, 0x6b, 0xdf, 0x16, 0x99, 0xca, 0x71, + 0x50, 0x07, 0x52, 0xfb, 0x64, 0xdd, 0x31, 0xb0, 0x5b, 0xbc, 0x4e, 0x31, 0xdf, 0xfe, 0xa5, 0xe3, + 0xec, 0x86, 0x25, 0xf6, 0x3b, 0x01, 0xe2, 0x57, 0x37, 0x25, 0x4c, 0xc8, 0x49, 0xde, 0x98, 0xad, + 0x6e, 0xb1, 0x61, 0x4d, 0x6d, 0x5b, 0xb4, 0xba, 0xf9, 0x93, 0x4e, 0xba, 0xdc, 0x91, 0x81, 0xbf, + 0xee, 0xbf, 0x1a, 0x63, 0x67, 0x52, 0x2c, 0x86, 0x3a, 0x72, 0x9a, 0xd0, 0x9f, 0x12, 0x32, 0xfa, + 0x0c, 0xd2, 0x3a, 0x1e, 0x61, 0x4b, 0x77, 0x3b, 0x56, 0xf1, 0x26, 0x1d, 0x33, 0xae, 0x90, 0xd9, + 0xb7, 0x21, 0x88, 0xbc, 0xe3, 0x06, 0x52, 0xe8, 0x05, 0xd9, 0x3f, 0xc9, 0x03, 0xd6, 0x3b, 0x56, + 0x6d, 0x52, 0x5c, 0xa2, 0x4e, 0xdf, 0xbb, 0x70, 0x20, 0xc5, 0x4c, 0x75, 0x55, 0xf8, 0xd3, 0x08, + 0xa1, 0xa9, 0x53, 0xd8, 0xe8, 0x77, 0x90, 0x15, 0x29, 0xbd, 0x69, 0xef, 0xb9, 0xc5, 0x9f, 0xd0, + 0x77, 0xad, 0x5f, 0xf0, 0x5d, 0x5b, 0x81, 0xaa, 0x68, 0x56, 0x61, 0xb4, 0xa5, 0xef, 0x24, 0x58, + 0x9c, 0x29, 0x29, 0xf4, 0x07, 0x48, 0x5a, 0xb6, 0x1e, 0x5a, 0xc0, 0x9a, 0xdc, 0xd0, 0x44, 0xdb, + 0xd6, 0xd9, 0xfe, 0x75, 0xff, 0xc0, 0xf0, 0x0e, 0xc7, 0x7b, 0x95, 0x81, 0x3d, 0x5c, 0xf3, 0x4d, + 0xd1, 0xf7, 0xd6, 0xce, 0xfd, 0xe0, 0x58, 0x61, 0x6a, 0x6a, 0x82, 0xa0, 0x2a, 0x3a, 0xfa, 0x14, + 0x0a, 0xf8, 0x78, 0x64, 0x38, 0xa1, 0x6b, 0x85, 0x8c, 0x49, 0x51, 0x6e, 0x62, 0x3e, 0x60, 0x92, + 0x5b, 0x63, 0xe9, 0xcf, 0x12, 0x14, 0xce, 0xa4, 0x33, 0xb9, 0x66, 0xe9, 0xea, 0x3f, 0x75, 0xcd, + 0x12, 0x8a, 0x7f, 0x01, 0x47, 0xde, 0xfa, 0xad, 0x25, 0xfa, 0x9e, 0xdf, 0x5a, 0x96, 0x4c, 0x80, + 0xa0, 0x22, 0xd0, 0x6f, 0x20, 0x67, 0x9b, 0x7a, 0x3f, 0xb8, 0xbd, 0xa5, 0xe0, 0x2a, 0x26, 0xcd, + 0xba, 0x63, 0xea, 0x67, 0x2e, 0xf0, 0x8c, 0xed, 0x93, 0x74, 0xb4, 0x02, 0x29, 0xa2, 0x3e, 0x63, + 0x77, 0xd2, 0x36, 0x75, 0xb2, 0xa2, 0x2d, 0x7d, 0x2b, 0x41, 0x3a, 0xfc, 0x5d, 0x2a, 0xe2, 0xbf, + 0xe2, 0xfc, 0x49, 0xe2, 0x1d, 0x37, 0xe2, 0xe9, 0x45, 0x30, 0x7a, 0xf1, 0x45, 0x70, 0xe9, 0x08, + 0x32, 0xa1, 0x5c, 0x3b, 0x3b, 0x18, 0x4a, 0xef, 0x30, 0x18, 0x7e, 0x04, 0x89, 0x17, 0xf6, 0x9e, + 0x70, 0x20, 0x5a, 0xcb, 0x71, 0xed, 0xf8, 0xa6, 0xbd, 0xa7, 0x34, 0xd4, 0xf8, 0x0b, 0x7b, 0x4f, + 0xd1, 0xcb, 0xb7, 0xc5, 0xf0, 0x07, 0x90, 0xd8, 0xde, 0xa9, 0xb5, 0x94, 0xfa, 0xb9, 0x83, 0xdb, + 0x2f, 0x63, 0xdf, 0xfc, 0x75, 0x45, 0xda, 0x8c, 0xa5, 0x90, 0x7c, 0xa5, 0xfc, 0x9d, 0x04, 0xa8, + 0xa1, 0x79, 0x1a, 0x39, 0xea, 0x4b, 0x4c, 0x6e, 0x91, 0xb7, 0xc4, 0x7b, 0xfa, 0xa2, 0x8d, 0xbe, + 0xcf, 0x45, 0xcb, 0x4c, 0x2d, 0x7f, 0x2b, 0x01, 0x84, 0x8c, 0xfb, 0x22, 0xfc, 0x29, 0x72, 0xfe, + 0x4c, 0x71, 0xa6, 0xfe, 0xc9, 0x3e, 0xc1, 0x3e, 0x54, 0x3e, 0x82, 0x94, 0xce, 0x5d, 0xe6, 0x2b, + 0xc9, 0xdc, 0xcb, 0x7b, 0x26, 0x32, 0x8f, 0x17, 0x54, 0x5f, 0xb9, 0x96, 0x84, 0xf8, 0xd8, 0x32, + 0x6c, 0xeb, 0xee, 0x03, 0x40, 0xb3, 0x65, 0x82, 0x72, 0x90, 0xa6, 0xff, 0x35, 0x0f, 0xeb, 0x6c, + 0x0a, 0xdf, 0xb1, 0x8e, 0x7c, 0x82, 0x54, 0xbb, 0xf5, 0xfa, 0x7f, 0xcb, 0x0b, 0xaf, 0x4f, 0x97, + 0xa5, 0x7f, 0x9f, 0x2e, 0x4b, 0xff, 0x39, 0x5d, 0x96, 0xfe, 0x7b, 0xba, 0x2c, 0xfd, 0xe9, 0xfb, + 0xe5, 0x85, 0xaf, 0x92, 0xdc, 0x80, 0x1f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x1c, 0x5b, 0xd4, 0x27, + 0xf8, 0x18, 0x00, 0x00, } diff --git a/pkg/sql/sqlbase/structured.proto b/pkg/sql/sqlbase/structured.proto index 059cea71db43..97632383dcc2 100644 --- a/pkg/sql/sqlbase/structured.proto +++ b/pkg/sql/sqlbase/structured.proto @@ -69,6 +69,12 @@ message ColumnType { NONE = 0; INT8 = 1; INT64 = 2; + INT2 = 3; + INT4 = 4; + SMALLINT = 5; + FLOAT4 = 6; + FLOAT8 = 7; + BIT = 8; } optional SemanticType semantic_type = 1 [(gogoproto.nullable) = false]; diff --git a/pkg/sql/sqlbase/table.go b/pkg/sql/sqlbase/table.go index 3cf3af54383b..fe671baf6e5d 100644 --- a/pkg/sql/sqlbase/table.go +++ b/pkg/sql/sqlbase/table.go @@ -33,6 +33,7 @@ import ( "github.com/cockroachdb/cockroach/pkg/util/duration" "github.com/cockroachdb/cockroach/pkg/util/encoding" "github.com/cockroachdb/cockroach/pkg/util/uuid" + "strings" ) func exprContainsVarsError(context string, Expr parser.Expr) error { @@ -99,7 +100,7 @@ func MakeColumnDefDescs( switch t := d.Type.(type) { case *parser.BoolColType: case *parser.IntColType: - col.Type.Width = int32(t.N) + col.Type.Width = int32(t.Width) if t.IsSerial() { if d.HasDefaultExpr() { return nil, nil, fmt.Errorf("SERIAL column %q cannot have a default value", col.Name) @@ -116,6 +117,9 @@ func MakeColumnDefDescs( return nil, nil, errors.New("precision for type float must be at least 1 bit") } col.Type.Precision = int32(t.Prec) + if val, present := visibleTypeMap[t.Name]; present { + col.Type.VisibleType = ColumnType_VisibleType(val) + } case *parser.DecimalColType: col.Type.Width = int32(t.Scale) col.Type.Precision = int32(t.Prec) @@ -1615,22 +1619,25 @@ func CheckValueWidth(col ColumnDescriptor, val parser.Datum) error { case ColumnType_INT: if v, ok := parser.AsDInt(val); ok { if col.Type.Width > 0 { - // https://www.postgresql.org/docs/9.5/static/datatype-bit.html - // "bit type data must match the length n exactly; it is an error - // to attempt to store shorter or longer bit strings. bit varying - // data is of variable length up to the maximum length n; longer - // strings will be rejected." - // + + // Width is defined in bits. + width := uint(col.Type.Width - 1) + + //https://www.postgresql.org/docs/9.5/static/datatype-bit.html + //"bit type data must match the length n exactly; it is an error + //to attempt to store shorter or longer bit strings. bit varying + //data is of variable length up to the maximum length n; longer + //strings will be rejected." Bits are unsigend, so we need to + // increase the width for the type check below. // TODO(nvanbenschoten): Because we do not propagate the "varying" - // flag on the column type, the best we can do here is conservatively - // assume the varying bit type and error only on longer bit strings. - mostSignificantBit := int32(0) - for bits := uint64(v); bits != 0; mostSignificantBit++ { - bits >>= 1 + if col.Type.VisibleType == ColumnType_BIT { + width = uint(col.Type.Width) } - if mostSignificantBit > col.Type.Width { - return fmt.Errorf("bit string too long for type %s (column %q)", - col.Type.SQLString(), col.Name) + + // We're performing bounds checks inline with Go's implementation of min and max ints in Math.go. + shifted := v >> uint(width) + if (v >= 0 && shifted > 0) || (v < 0 && shifted < -1) { + return fmt.Errorf("integer out of range for type %s (column %q)", col.Type.VisibleType, col.Name) } } }