diff --git a/parser/parser.go b/parser/parser.go index 007d07a..fc051fd 100644 --- a/parser/parser.go +++ b/parser/parser.go @@ -271,7 +271,7 @@ const yyEofCode = 1 const yyErrCode = 2 const yyInitialStackSize = 16 -//line parser.y:1596 +//line parser.y:1600 //line yacctab:1 var yyExca = [...]int8{ @@ -282,387 +282,388 @@ var yyExca = [...]int8{ const yyPrivate = 57344 -const yyLast = 1733 +const yyLast = 1746 var yyAct = [...]int16{ - 13, 645, 636, 471, 654, 346, 345, 589, 286, 572, - 407, 476, 549, 272, 311, 529, 413, 536, 45, 403, - 285, 355, 310, 384, 376, 48, 307, 47, 214, 366, - 213, 46, 351, 299, 318, 309, 44, 261, 313, 342, - 169, 43, 240, 42, 41, 229, 254, 221, 330, 40, - 208, 39, 449, 197, 193, 187, 49, 174, 482, 483, - 665, 16, 297, 6, 453, 456, 454, 455, 583, 96, - 5, 75, 11, 669, 170, 204, 26, 435, 185, 180, - 75, 31, 498, 477, 478, 26, 104, 105, 106, 179, - 672, 75, 3, 427, 293, 661, 26, 189, 28, 31, - 172, 177, 171, 620, 618, 619, 617, 28, 633, 192, - 172, 201, 171, 170, 211, 581, 225, 231, 28, 580, - 170, 4, 579, 170, 170, 578, 245, 257, 264, 289, - 303, 303, 577, 321, 170, 333, 27, 344, 354, 369, - 379, 387, 268, 406, 181, 416, 522, 150, 305, 305, - 267, 323, 242, 75, 660, 431, 27, 170, 26, 198, - 349, 348, 397, 273, 246, 202, 399, 372, 398, 371, - 188, 521, 396, 175, 177, 195, 360, 395, 300, 238, - 28, 190, 394, 199, 393, 392, 209, 192, 223, 230, - 391, 337, 390, 315, 616, 520, 615, 201, 243, 255, - 262, 287, 301, 301, 496, 319, 495, 331, 211, 343, - 352, 367, 377, 385, 96, 404, 419, 414, 27, 26, - 205, 225, 270, 184, 312, 312, 470, 326, 469, 231, - 75, 425, 359, 630, 12, 26, 189, 195, 31, 183, - 245, 28, 426, 461, 75, 460, 175, 612, 188, 26, - 430, 202, 182, 607, 257, 26, 605, 28, 434, 190, - 445, 264, 444, 474, 473, 144, 242, 143, 443, 199, - 142, 28, 141, 534, 448, 268, 604, 28, 246, 27, - 209, 475, 459, 267, 75, 525, 289, 451, 452, 26, - 198, 479, 438, 223, 486, 27, 273, 523, 468, 303, - 466, 230, 519, 136, 241, 135, 292, 517, 227, 27, - 472, 28, 243, 514, 195, 27, 512, 305, 321, 134, - 75, 133, 447, 510, 506, 26, 255, 660, 493, 132, - 333, 131, 489, 262, 491, 176, 323, 115, 110, 114, - 109, 490, 344, 191, 100, 200, 99, 28, 210, 27, - 224, 354, 492, 488, 485, 270, 467, 465, 287, 457, - 244, 256, 263, 288, 302, 302, 369, 320, 195, 332, - 442, 301, 353, 368, 378, 386, 379, 405, 494, 415, - 433, 499, 504, 503, 387, 450, 337, 441, 440, 360, - 319, 237, 75, 312, 372, 507, 371, 26, 420, 75, - 511, 168, 331, 406, 26, 397, 167, 513, 176, 399, - 140, 398, 326, 416, 343, 396, 139, 138, 241, 28, - 395, 191, 515, 352, 137, 394, 28, 393, 392, 518, - 130, 200, 129, 391, 269, 390, 308, 308, 367, 325, - 128, 127, 210, 126, 361, 359, 532, 125, 377, 508, - 509, 117, 75, 626, 116, 224, 385, 27, 113, 251, - 108, 75, 565, 567, 539, 544, 474, 473, 98, 538, - 237, 575, 554, 543, 244, 404, 462, 537, 146, 149, - 526, 446, 75, 432, 628, 414, 429, 26, 256, 540, - 551, 428, 422, 124, 546, 263, 118, 592, 112, 627, - 505, 464, 410, 569, 570, 289, 166, 165, 564, 28, - 163, 599, 566, 162, 161, 597, 562, 159, 530, 598, - 288, 582, 158, 584, 585, 603, 157, 156, 586, 532, - 155, 563, 154, 302, 568, 594, 153, 152, 151, 122, - 121, 601, 602, 573, 608, 542, 609, 27, 120, 539, - 544, 52, 320, 611, 538, 119, 94, 606, 543, 554, - 93, 613, 537, 649, 332, 644, 621, 269, 560, 590, - 658, 653, 575, 22, 540, 622, 561, 287, 65, 298, - 64, 629, 317, 316, 66, 353, 271, 260, 259, 592, - 62, 596, 253, 75, 252, 61, 631, 375, 26, 374, - 368, 530, 290, 599, 289, 308, 71, 597, 365, 364, - 378, 598, 486, 70, 207, 206, 33, 638, 386, 648, - 28, 657, 640, 639, 325, 588, 75, 594, 663, 545, - 542, 26, 587, 339, 336, 329, 638, 405, 664, 328, - 556, 640, 639, 67, 573, 648, 667, 415, 383, 382, - 72, 291, 178, 28, 657, 634, 668, 361, 670, 294, - 194, 590, 203, 662, 671, 215, 284, 63, 236, 641, - 635, 559, 557, 349, 348, 555, 287, 247, 553, 552, - 531, 314, 314, 596, 327, 550, 338, 643, 347, 637, - 373, 646, 400, 655, 409, 548, 418, 547, 248, 239, - 258, 274, 295, 60, 362, 574, 349, 348, 637, 673, - 350, 356, 674, 381, 545, 69, 212, 646, 402, 401, - 73, 571, 275, 341, 423, 178, 655, 556, 68, 412, - 265, 591, 304, 304, 411, 322, 74, 334, 194, 288, - 357, 370, 380, 388, 535, 408, 97, 417, 203, 75, - 75, 235, 234, 233, 26, 26, 232, 541, 228, 215, - 35, 533, 528, 531, 527, 226, 222, 220, 219, 34, - 51, 101, 102, 103, 50, 107, 28, 28, 111, 266, - 236, 306, 306, 38, 324, 37, 335, 437, 437, 358, - 436, 247, 389, 340, 196, 90, 30, 186, 29, 173, - 23, 216, 283, 595, 36, 123, 574, 21, 20, 19, - 212, 643, 75, 18, 27, 17, 15, 26, 14, 10, - 9, 75, 148, 591, 8, 2, 26, 258, 217, 218, - 349, 348, 1, 160, 274, 85, 76, 164, 288, 28, - 80, 79, 541, 89, 77, 78, 81, 145, 28, 82, - 314, 147, 87, 647, 0, 656, 88, 83, 84, 295, - 0, 0, 0, 265, 216, 0, 0, 90, 0, 327, - 91, 0, 92, 216, 0, 86, 0, 27, 610, 647, - 0, 338, 75, 251, 666, 250, 27, 26, 656, 278, - 0, 281, 0, 347, 0, 595, 0, 0, 0, 0, - 0, 304, 279, 0, 0, 276, 277, 0, 0, 28, - 75, 0, 266, 0, 0, 26, 0, 373, 0, 0, - 322, 652, 0, 0, 356, 0, 0, 0, 0, 0, - 86, 75, 334, 0, 216, 400, 26, 28, 251, 249, - 250, 0, 0, 0, 278, 437, 437, 27, 0, 381, - 306, 0, 0, 357, 409, 0, 0, 279, 28, 0, - 276, 277, 216, 439, 418, 0, 75, 0, 370, 324, - 0, 26, 0, 0, 0, 27, 0, 0, 380, 278, - 0, 335, 75, 216, 283, 86, 388, 26, 0, 0, - 0, 250, 279, 28, 249, 278, 27, 463, 75, 75, - 0, 0, 358, 26, 26, 408, 0, 282, 279, 28, - 524, 276, 277, 558, 0, 417, 0, 0, 216, 283, - 86, 0, 576, 0, 0, 28, 28, 480, 481, 0, - 484, 27, 0, 0, 216, 389, 86, 652, 251, 0, - 250, 0, 0, 487, 278, 0, 281, 27, 600, 410, - 216, 216, 0, 0, 0, 0, 0, 279, 0, 0, - 276, 277, 0, 27, 27, 0, 75, 0, 458, 0, - 0, 26, 0, 251, 0, 250, 0, 0, 295, 0, - 0, 0, 0, 0, 75, 86, 421, 497, 7, 26, - 53, 0, 31, 28, 249, 500, 501, 0, 85, 593, - 558, 0, 0, 80, 79, 56, 89, 77, 78, 81, - 0, 28, 82, 0, 0, 87, 0, 54, 55, 88, - 83, 84, 0, 576, 0, 0, 24, 25, 0, 249, - 90, 27, 0, 91, 0, 92, 0, 0, 86, 32, - 600, 57, 0, 0, 0, 0, 75, 0, 424, 27, - 0, 26, 0, 0, 58, 0, 0, 516, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 642, 59, - 651, 75, 659, 28, 0, 0, 26, 295, 251, 0, - 250, 0, 0, 0, 0, 0, 0, 642, 0, 0, - 0, 593, 0, 0, 0, 75, 651, 95, 28, 7, - 26, 53, 0, 31, 0, 659, 0, 0, 0, 85, - 0, 27, 0, 0, 80, 79, 56, 89, 77, 78, - 81, 650, 28, 82, 0, 0, 87, 0, 54, 55, - 88, 83, 84, 0, 249, 0, 27, 24, 25, 75, - 0, 90, 0, 0, 91, 0, 92, 650, 0, 86, - 32, 0, 57, 85, 0, 0, 0, 0, 80, 79, - 27, 89, 77, 78, 81, 58, 0, 82, 0, 0, - 87, 0, 0, 0, 88, 83, 84, 0, 0, 0, - 59, 0, 0, 0, 0, 90, 0, 0, 91, 0, - 92, 0, 0, 86, 0, 75, 0, 0, 614, 7, - 26, 53, 0, 31, 0, 0, 0, 0, 0, 85, - 0, 623, 624, 625, 80, 79, 56, 89, 77, 78, - 81, 0, 28, 82, 0, 0, 87, 0, 54, 55, - 88, 83, 84, 0, 0, 0, 0, 24, 25, 0, - 0, 90, 0, 0, 91, 0, 92, 0, 0, 86, - 32, 0, 57, 0, 0, 0, 0, 0, 0, 75, - 27, 0, 0, 0, 26, 58, 0, 0, 0, 0, - 0, 280, 278, 85, 281, 0, 0, 0, 80, 79, - 59, 89, 77, 78, 81, 279, 28, 82, 276, 277, - 87, 0, 0, 0, 88, 83, 84, 0, 0, 0, - 0, 0, 0, 0, 0, 90, 0, 0, 91, 0, - 92, 216, 283, 86, 75, 0, 632, 0, 0, 26, - 0, 0, 0, 0, 27, 0, 0, 278, 85, 0, - 0, 0, 0, 80, 79, 282, 89, 77, 78, 81, - 279, 28, 82, 0, 0, 87, 0, 0, 0, 88, - 83, 84, 0, 0, 0, 0, 0, 0, 0, 0, - 90, 0, 0, 91, 0, 92, 216, 283, 86, 0, - 0, 75, 0, 0, 0, 0, 26, 0, 0, 27, - 0, 0, 0, 296, 278, 85, 0, 0, 0, 0, - 80, 79, 0, 89, 77, 78, 81, 279, 28, 82, - 0, 0, 87, 0, 0, 0, 88, 83, 84, 0, + 13, 347, 472, 655, 646, 287, 346, 637, 590, 573, + 314, 286, 477, 550, 312, 537, 414, 356, 308, 352, + 530, 408, 273, 404, 301, 215, 377, 48, 49, 343, + 367, 385, 214, 331, 319, 300, 262, 47, 241, 45, + 230, 46, 255, 44, 222, 310, 194, 209, 43, 42, + 41, 40, 39, 450, 198, 188, 6, 175, 311, 483, + 484, 666, 96, 298, 170, 16, 436, 75, 584, 428, + 5, 3, 26, 190, 172, 31, 171, 205, 75, 75, + 448, 499, 505, 26, 26, 75, 11, 664, 31, 186, + 26, 104, 105, 106, 28, 454, 457, 455, 456, 673, + 4, 178, 478, 479, 662, 28, 28, 181, 22, 193, + 180, 202, 28, 170, 212, 634, 226, 232, 172, 582, + 171, 170, 170, 621, 169, 620, 246, 258, 265, 290, + 304, 304, 27, 322, 170, 334, 247, 345, 355, 370, + 380, 388, 269, 407, 243, 417, 644, 150, 361, 238, + 242, 196, 170, 581, 619, 170, 618, 203, 398, 350, + 349, 475, 474, 338, 373, 350, 349, 580, 400, 306, + 306, 372, 324, 274, 189, 178, 579, 617, 399, 616, + 578, 523, 397, 239, 396, 522, 268, 176, 193, 395, + 394, 393, 392, 391, 316, 191, 521, 200, 202, 497, + 210, 496, 224, 231, 420, 206, 75, 96, 473, 212, + 185, 26, 244, 256, 263, 288, 302, 302, 26, 320, + 184, 332, 226, 344, 353, 368, 378, 386, 182, 405, + 232, 415, 426, 28, 183, 259, 275, 296, 631, 451, + 28, 246, 26, 427, 203, 471, 357, 470, 382, 613, + 608, 247, 431, 189, 606, 258, 435, 605, 462, 243, + 461, 176, 265, 526, 28, 242, 444, 75, 524, 432, + 449, 228, 26, 199, 191, 520, 269, 238, 27, 460, + 12, 476, 439, 446, 200, 445, 144, 290, 143, 452, + 453, 518, 487, 480, 28, 210, 535, 467, 469, 75, + 304, 142, 27, 141, 26, 515, 513, 274, 224, 75, + 511, 75, 507, 75, 26, 190, 231, 31, 26, 322, + 268, 494, 492, 438, 438, 491, 28, 244, 489, 218, + 219, 334, 27, 486, 468, 490, 28, 466, 458, 306, + 28, 256, 136, 345, 135, 134, 442, 133, 263, 443, + 434, 196, 355, 493, 132, 115, 131, 114, 324, 338, + 644, 425, 361, 259, 495, 217, 52, 370, 441, 421, + 275, 504, 500, 288, 27, 168, 167, 380, 27, 350, + 349, 177, 110, 140, 109, 388, 302, 139, 100, 192, + 99, 201, 373, 196, 211, 296, 225, 508, 138, 372, + 137, 130, 398, 512, 407, 320, 245, 257, 264, 289, + 303, 303, 400, 321, 417, 333, 514, 332, 354, 369, + 379, 387, 399, 406, 129, 416, 397, 516, 396, 344, + 519, 128, 127, 395, 394, 393, 392, 391, 353, 509, + 510, 126, 125, 117, 116, 113, 75, 533, 108, 475, + 474, 26, 627, 368, 98, 177, 146, 149, 463, 75, + 357, 447, 541, 378, 26, 199, 545, 179, 192, 433, + 538, 386, 576, 28, 540, 195, 546, 204, 201, 430, + 216, 438, 438, 237, 555, 382, 28, 557, 75, 211, + 405, 539, 248, 26, 429, 423, 315, 315, 593, 328, + 415, 339, 225, 348, 124, 374, 290, 401, 595, 410, + 544, 419, 600, 118, 112, 28, 628, 604, 75, 506, + 670, 245, 465, 26, 27, 166, 350, 349, 165, 163, + 533, 162, 161, 531, 159, 257, 158, 598, 157, 424, + 294, 179, 264, 196, 156, 28, 525, 541, 610, 293, + 609, 545, 612, 27, 195, 538, 599, 155, 574, 540, + 154, 546, 153, 614, 204, 527, 622, 289, 152, 151, + 122, 555, 121, 576, 557, 216, 539, 623, 120, 547, + 303, 119, 630, 27, 591, 94, 93, 650, 570, 571, + 593, 645, 288, 561, 659, 544, 237, 654, 632, 321, + 595, 661, 562, 65, 600, 290, 583, 248, 585, 586, + 487, 333, 299, 587, 296, 64, 531, 318, 639, 641, + 649, 317, 658, 66, 640, 272, 602, 603, 291, 598, + 261, 260, 354, 62, 75, 254, 75, 639, 641, 26, + 75, 26, 607, 640, 665, 26, 649, 369, 599, 279, + 668, 253, 61, 376, 375, 658, 669, 379, 671, 574, + 71, 28, 280, 28, 672, 387, 315, 28, 271, 366, + 313, 313, 365, 327, 70, 208, 591, 270, 360, 309, + 309, 207, 326, 33, 406, 328, 589, 362, 217, 284, + 86, 288, 217, 588, 416, 75, 340, 339, 337, 27, + 26, 27, 330, 329, 638, 27, 647, 67, 656, 348, + 75, 384, 667, 296, 383, 26, 72, 661, 295, 75, + 285, 459, 28, 638, 26, 63, 252, 532, 251, 642, + 636, 560, 647, 374, 653, 558, 556, 28, 554, 553, + 635, 656, 213, 551, 549, 548, 28, 217, 663, 653, + 249, 401, 575, 292, 240, 60, 266, 363, 305, 305, + 27, 323, 217, 335, 351, 69, 358, 371, 381, 389, + 410, 409, 403, 418, 75, 27, 402, 73, 592, 26, + 419, 572, 250, 251, 27, 276, 289, 279, 342, 68, + 413, 97, 412, 74, 674, 536, 236, 675, 75, 235, + 280, 28, 271, 277, 278, 252, 234, 233, 566, 568, + 532, 270, 229, 35, 534, 529, 101, 102, 103, 528, + 107, 227, 223, 111, 221, 220, 217, 34, 86, 559, + 51, 50, 38, 37, 437, 197, 552, 213, 577, 27, + 313, 30, 75, 187, 629, 29, 174, 26, 411, 309, + 123, 173, 75, 575, 565, 23, 36, 26, 567, 327, + 21, 20, 563, 19, 601, 18, 17, 148, 326, 28, + 592, 15, 14, 10, 9, 8, 2, 564, 160, 28, + 569, 267, 164, 307, 307, 289, 325, 1, 336, 76, + 266, 359, 360, 145, 390, 147, 341, 0, 90, 0, + 648, 362, 657, 75, 217, 284, 0, 27, 26, 0, + 252, 0, 251, 0, 0, 0, 559, 27, 75, 0, + 633, 0, 0, 26, 75, 0, 648, 0, 305, 26, + 28, 279, 85, 0, 0, 657, 0, 80, 79, 577, + 89, 77, 78, 81, 280, 28, 82, 323, 0, 87, + 0, 28, 0, 88, 83, 84, 601, 0, 0, 335, + 0, 0, 0, 0, 90, 0, 250, 91, 27, 92, + 217, 284, 86, 0, 411, 0, 217, 0, 0, 0, + 358, 0, 0, 27, 643, 0, 652, 297, 660, 27, + 0, 0, 543, 0, 0, 371, 0, 0, 0, 0, + 0, 542, 0, 643, 0, 381, 0, 0, 0, 440, + 0, 0, 652, 389, 0, 267, 0, 0, 0, 0, + 0, 660, 0, 0, 0, 0, 0, 0, 75, 0, + 0, 0, 409, 26, 0, 252, 0, 251, 597, 0, + 0, 279, 418, 464, 0, 0, 0, 596, 0, 0, + 0, 0, 0, 307, 280, 28, 0, 277, 278, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 325, 481, 482, 0, 485, 543, 75, 0, + 217, 284, 86, 611, 336, 0, 542, 0, 252, 488, + 251, 250, 85, 27, 279, 0, 282, 80, 79, 0, + 89, 77, 78, 81, 283, 359, 82, 280, 0, 87, + 277, 278, 0, 88, 83, 84, 0, 0, 0, 0, + 0, 0, 0, 0, 90, 0, 594, 91, 0, 92, + 597, 0, 86, 498, 0, 86, 0, 0, 390, 596, + 0, 501, 502, 75, 250, 422, 0, 7, 26, 53, + 0, 31, 0, 0, 0, 0, 0, 85, 0, 0, + 0, 0, 80, 79, 56, 89, 77, 78, 81, 0, + 28, 82, 0, 0, 87, 0, 54, 55, 88, 83, + 84, 0, 0, 0, 0, 24, 25, 0, 0, 90, + 0, 0, 91, 0, 92, 0, 0, 86, 32, 0, + 57, 0, 0, 517, 0, 0, 0, 0, 27, 0, + 0, 0, 0, 58, 0, 0, 0, 0, 594, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, + 75, 0, 95, 0, 7, 26, 53, 0, 31, 0, + 0, 0, 0, 0, 85, 0, 0, 0, 651, 80, + 79, 56, 89, 77, 78, 81, 0, 28, 82, 0, + 0, 87, 0, 54, 55, 88, 83, 84, 0, 0, + 0, 0, 24, 25, 651, 0, 90, 0, 0, 91, + 0, 92, 0, 0, 86, 32, 0, 57, 0, 0, + 0, 0, 0, 0, 0, 27, 0, 75, 0, 0, + 58, 7, 26, 53, 0, 31, 0, 0, 0, 0, + 0, 85, 0, 0, 0, 59, 80, 79, 56, 89, + 77, 78, 81, 0, 28, 82, 0, 0, 87, 0, + 54, 55, 88, 83, 84, 0, 0, 0, 0, 24, + 25, 0, 0, 90, 615, 0, 91, 0, 92, 0, + 0, 86, 32, 0, 57, 0, 0, 624, 625, 626, + 0, 75, 27, 0, 0, 0, 26, 58, 0, 0, + 0, 0, 0, 281, 279, 85, 282, 0, 0, 0, + 80, 79, 59, 89, 77, 78, 81, 280, 28, 82, + 277, 278, 87, 0, 0, 0, 88, 83, 84, 0, 0, 0, 0, 0, 0, 0, 0, 90, 0, 0, - 91, 0, 92, 216, 283, 86, 0, 0, 75, 0, - 502, 0, 0, 26, 0, 0, 27, 250, 0, 0, - 296, 278, 85, 0, 0, 0, 0, 80, 79, 0, - 89, 77, 78, 81, 279, 28, 82, 0, 0, 87, - 363, 0, 0, 88, 83, 84, 0, 0, 0, 0, - 0, 0, 0, 0, 90, 0, 0, 91, 75, 92, - 216, 283, 86, 26, 0, 0, 0, 250, 0, 0, - 0, 278, 85, 27, 0, 0, 0, 80, 79, 0, - 89, 77, 78, 81, 279, 28, 82, 0, 0, 87, - 363, 0, 0, 88, 83, 84, 0, 0, 0, 0, - 0, 0, 0, 0, 90, 0, 0, 91, 75, 92, - 216, 283, 86, 26, 0, 0, 0, 0, 0, 0, - 0, 0, 85, 27, 0, 0, 0, 80, 79, 0, - 89, 77, 78, 81, 0, 28, 82, 0, 0, 87, - 0, 0, 0, 88, 83, 84, 0, 75, 0, 0, - 0, 0, 26, 0, 90, 0, 0, 91, 0, 92, - 0, 85, 86, 0, 0, 0, 80, 79, 0, 89, - 0, 0, 81, 27, 28, 82, 0, 0, 87, 363, - 0, 0, 88, 83, 84, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 216, - 283, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 27, + 91, 0, 92, 217, 284, 86, 75, 0, 0, 0, + 0, 26, 0, 0, 0, 0, 27, 0, 0, 279, + 85, 0, 0, 0, 0, 80, 79, 283, 89, 77, + 78, 81, 280, 28, 82, 0, 0, 87, 0, 0, + 0, 88, 83, 84, 0, 0, 0, 0, 0, 0, + 0, 0, 90, 0, 0, 91, 0, 92, 217, 284, + 86, 0, 0, 75, 0, 503, 0, 0, 26, 0, + 0, 27, 251, 0, 0, 297, 279, 85, 0, 0, + 0, 0, 80, 79, 0, 89, 77, 78, 81, 280, + 28, 82, 0, 0, 87, 364, 0, 0, 88, 83, + 84, 0, 0, 0, 0, 0, 0, 0, 0, 90, + 0, 0, 91, 75, 92, 217, 284, 86, 26, 0, + 0, 0, 251, 0, 0, 0, 279, 85, 27, 0, + 0, 0, 80, 79, 0, 89, 77, 78, 81, 280, + 28, 82, 0, 0, 87, 364, 0, 0, 88, 83, + 84, 0, 0, 0, 0, 0, 0, 0, 0, 90, + 0, 0, 91, 75, 92, 217, 284, 86, 26, 0, + 0, 0, 0, 0, 0, 0, 0, 85, 27, 0, + 0, 0, 80, 79, 0, 89, 77, 78, 81, 0, + 28, 82, 0, 0, 87, 0, 0, 0, 88, 83, + 84, 0, 75, 0, 0, 0, 0, 26, 0, 90, + 0, 0, 91, 0, 92, 217, 85, 86, 0, 0, + 0, 80, 79, 0, 89, 77, 78, 81, 27, 28, + 82, 0, 0, 87, 0, 0, 0, 88, 83, 84, + 0, 75, 0, 0, 0, 0, 26, 0, 90, 0, + 0, 91, 0, 92, 0, 85, 86, 0, 0, 0, + 80, 79, 0, 89, 0, 0, 81, 27, 28, 82, + 0, 0, 87, 364, 0, 0, 88, 83, 84, 252, + 0, 251, 0, 0, 0, 279, 0, 282, 0, 0, + 0, 0, 0, 217, 284, 0, 0, 0, 280, 0, + 0, 277, 278, 0, 0, 0, 27, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, + 0, 0, 0, 0, 0, 250, } var yyPact = [...]int16{ - 67, -1000, 1288, 556, 552, 1188, -1000, 463, -1000, -1000, + 46, -1000, 1290, 582, 581, 1223, -1000, 449, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 336, 463, 463, 463, 13, 463, 452, - 330, 463, 493, 450, 329, 446, 443, -1000, -1000, -1000, + -1000, -1000, -1000, 380, 449, 449, 449, 18, 449, 440, + 374, 449, 509, 437, 347, 436, 435, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 491, 551, 544, 536, 535, 463, 488, - 439, 435, 433, 432, 424, 422, 321, 311, 295, 416, - 409, 408, 402, 262, 257, 473, 1288, 534, 533, 532, - 528, 526, 523, 522, 518, 513, 463, 510, 509, 506, - 463, 503, 502, 398, 393, -1000, -1000, 102, -1000, -1000, - 385, 79, 69, 102, 242, 229, 213, 68, 223, -1000, - 277, 65, 210, 805, -1000, 243, 392, 66, -1000, -1000, - -1000, -1000, -1000, 19, -1000, 1164, 1621, 1352, 1464, 924, - 924, -1000, 959, -1000, 742, -1000, 586, 1571, 805, 814, - 1660, -1000, 992, -1000, 903, 206, 390, -1000, 19, -1000, - 1077, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 19, -1000, -1000, -1000, 19, -1000, -1000, -1000, -1000, -1000, - 487, -1000, 454, 1139, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 84, -1000, -1000, 486, - -1000, -1000, -1000, -1000, -1000, 481, 146, -1000, 478, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 371, 805, -1000, -1000, - -1000, -1000, -1000, 1232, 1232, -1000, 463, 380, 379, 361, - 243, -1000, -1000, -1000, -1000, -1000, 252, 476, 313, -1000, - -1000, -1000, -1000, 377, 377, 377, -1000, -15, 350, 1059, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 235, 471, - 463, 497, 348, 1621, -1000, -1000, -1000, -1000, -1000, 347, - 1352, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 218, 258, 461, 36, 36, - 463, 463, -26, 463, 345, 1464, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 463, 344, 924, -1000, + -1000, -1000, -1000, 508, 577, 574, 568, 566, 449, 499, + 434, 433, 424, 423, 416, 393, 346, 337, 334, 392, + 390, 379, 375, 293, 278, 451, 1290, 565, 564, 558, + 556, 553, 540, 534, 532, 530, 449, 528, 527, 525, + 449, 524, 521, 368, 367, -1000, -1000, 66, -1000, -1000, + 481, 100, 97, 66, 224, 210, 200, 79, 302, -1000, + 452, 67, 195, 306, -1000, 206, 199, 73, -1000, -1000, + -1000, -1000, -1000, 9, -1000, 896, 1605, 1354, 1409, 1021, + 1021, -1000, 629, -1000, 845, -1000, 439, 1516, 306, 1566, + 1644, -1000, 917, -1000, 633, 194, 361, -1000, 9, -1000, + 1136, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 9, -1000, -1000, -1000, 9, -1000, -1000, -1000, -1000, -1000, + 490, -1000, 304, 352, 481, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 60, -1000, -1000, + 489, -1000, -1000, -1000, -1000, -1000, 474, 260, -1000, 464, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 341, 306, -1000, + -1000, -1000, -1000, -1000, 1071, 1071, -1000, 449, 360, 338, + 340, 206, -1000, -1000, -1000, -1000, -1000, 275, 456, 71, + -1000, -1000, -1000, -1000, 231, 231, 231, -1000, 16, 329, + 712, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 250, + 453, 449, 518, 328, 1605, -1000, -1000, -1000, -1000, -1000, + 325, 1354, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 237, 156, 444, 55, + 55, 449, 449, -25, 449, 324, 1409, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 449, 319, 1021, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 332, 325, 959, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 319, 742, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 196, - 463, 73, -1000, -1000, -1000, -1000, -1000, -1000, 463, 463, - 1521, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 374, 496, 315, 805, -1000, -1000, -1000, -1000, - -1000, 1232, 1232, -1000, 314, 814, -1000, -1000, -1000, -1000, - -1000, -1000, 307, 1660, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 316, 313, 629, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 312, + 845, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 191, 449, 72, -1000, -1000, -1000, -1000, -1000, -1000, 449, + 449, 1466, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 74, 515, 303, 306, -1000, -1000, -1000, + -1000, -1000, 1071, 1071, -1000, 301, 1566, -1000, -1000, -1000, + -1000, -1000, -1000, 297, 1644, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, 304, 992, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 463, 298, 903, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 293, -1000, -1000, -1000, -1000, 185, 161, - -1000, -1000, 136, -1000, -1000, 288, 1232, -1000, 276, 102, - -1000, -1000, -1000, -1000, -1000, 207, -1000, -1000, -1000, -1000, - 1024, -1000, -1000, 92, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, 445, 92, 102, -1000, -1000, -1000, -1000, -1000, -1000, - 385, 122, 115, -1000, -1000, 112, 109, -1000, -1000, 105, - 102, 58, 92, 92, 19, -1000, -1000, 102, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 975, 19, -1000, -1000, - 102, 102, -1000, -1000, 1464, -1000, -1000, -1000, 267, 247, - -1000, -1000, -1000, -1000, -1000, -1000, 102, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 244, 207, -1000, - -1000, -1000, -1000, -1000, 36, 869, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 238, 445, -1000, - -1000, 463, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 186, - 96, 95, 461, 36, 463, 463, 463, 448, 495, -1000, - -1000, 475, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, -1000, 224, 975, -1000, + -1000, -1000, 296, 917, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, 449, 282, 633, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, 266, -1000, -1000, -1000, -1000, 186, + 175, -1000, -1000, 171, -1000, -1000, 259, 1071, -1000, 254, + 66, -1000, -1000, -1000, -1000, -1000, 230, -1000, -1000, -1000, + -1000, 1675, -1000, -1000, 110, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, 791, 110, 66, -1000, -1000, -1000, -1000, -1000, + -1000, 481, 170, 166, -1000, -1000, 157, 143, -1000, -1000, + 109, 66, 58, 110, 110, 9, -1000, -1000, 66, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, 767, 9, -1000, + -1000, 66, 66, -1000, -1000, 1409, -1000, -1000, -1000, 248, + 245, -1000, -1000, -1000, -1000, -1000, -1000, 66, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 241, 230, + -1000, -1000, -1000, -1000, -1000, 55, 1074, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 240, 791, + -1000, -1000, 449, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + 169, 146, 115, 444, 55, 449, 449, 449, 447, 512, + -1000, -1000, 835, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 229, 767, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 1407, -1000, -1000, -1000, -1000, -1000, 98, - -1000, -1000, -1000, -1000, 102, -1000, 743, -1000, 991, -1000, - 237, 85, 92, 19, 19, 19, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, -1000, 619, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -9, 875, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, 461, 64, -1000, -1000, -1000, -1000, -1000, -1000, - 461, -1000, -1000, -1000, -1000, 80, -1000, -1000, 92, -1000, - -1000, 92, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, 911, -1000, -1000, -1000, -1000, -1000, + 105, -1000, -1000, -1000, -1000, 66, -1000, 292, -1000, 688, + -1000, 627, 94, 110, 9, 9, 9, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 78, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, -8, 703, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 444, 511, -1000, -1000, -1000, -1000, -1000, + -1000, 444, -1000, -1000, -1000, -1000, 89, -1000, -1000, 110, + -1000, -1000, 110, -1000, -1000, -1000, } var yyPgo = [...]int16{ - 0, 11, 3, 851, 746, 847, 551, 836, 40, 832, - 825, 70, 63, 824, 820, 819, 72, 234, 0, 818, - 816, 61, 815, 813, 809, 808, 807, 573, 804, 800, - 799, 57, 798, 797, 55, 54, 796, 794, 53, 77, - 790, 785, 783, 51, 49, 44, 43, 41, 36, 18, - 31, 27, 25, 56, 774, 770, 769, 768, 767, 47, - 766, 765, 764, 762, 15, 761, 760, 758, 45, 756, - 753, 52, 752, 751, 744, 17, 26, 13, 38, 306, - 94, 22, 14, 178, 736, 734, 729, 16, 602, 728, - 723, 39, 6, 5, 722, 651, 721, 9, 720, 719, - 718, 19, 10, 715, 710, 32, 21, 704, 20, 703, - 699, 42, 698, 697, 695, 12, 685, 679, 678, 675, - 672, 671, 670, 2, 669, 667, 666, 8, 659, 650, - 649, 648, 23, 643, 639, 635, 48, 634, 633, 7, - 632, 625, 616, 615, 614, 50, 30, 28, 613, 609, - 608, 29, 606, 599, 597, 24, 595, 594, 592, 46, - 590, 588, 587, 37, 586, 35, 584, 583, 582, 34, - 580, 62, 579, 33, 578, 576, 571, 4, 570, 568, - 565, 1, 563, + 0, 12, 2, 895, 791, 893, 366, 889, 124, 887, + 876, 70, 56, 875, 874, 873, 86, 280, 0, 872, + 871, 65, 866, 865, 863, 861, 860, 108, 856, 855, + 851, 846, 57, 845, 843, 55, 46, 841, 835, 54, + 66, 834, 833, 832, 52, 51, 50, 49, 48, 43, + 39, 41, 37, 27, 28, 831, 830, 827, 825, 824, + 44, 822, 821, 819, 815, 20, 814, 813, 812, 40, + 807, 806, 53, 799, 796, 795, 15, 18, 22, 10, + 549, 540, 58, 14, 24, 793, 792, 790, 16, 628, + 789, 788, 29, 6, 1, 785, 753, 781, 9, 777, + 776, 772, 23, 21, 765, 764, 19, 17, 757, 11, + 755, 754, 38, 750, 745, 744, 13, 743, 739, 738, + 736, 735, 731, 730, 7, 729, 725, 720, 5, 718, + 716, 714, 711, 31, 707, 703, 702, 33, 698, 696, + 8, 693, 686, 683, 681, 675, 47, 32, 25, 674, + 672, 669, 30, 660, 654, 653, 26, 652, 651, 635, + 42, 633, 631, 630, 36, 625, 45, 623, 621, 617, + 34, 615, 63, 612, 35, 603, 602, 597, 3, 594, + 593, 591, 4, 587, } var yyR1 = [...]uint8{ 0, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 28, 26, 29, 13, 13, 30, 30, 31, - 31, 31, 31, 32, 33, 33, 21, 34, 34, 34, - 34, 34, 34, 34, 19, 36, 37, 37, 38, 38, - 38, 38, 38, 38, 20, 20, 35, 39, 39, 27, - 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, - 27, 27, 27, 27, 27, 40, 40, 24, 24, 56, - 57, 57, 58, 58, 59, 59, 59, 59, 60, 60, - 61, 62, 62, 63, 63, 64, 64, 64, 64, 65, - 25, 66, 67, 67, 68, 68, 68, 68, 68, 68, - 68, 69, 70, 72, 73, 71, 74, 74, 75, 75, - 75, 75, 75, 75, 75, 75, 75, 55, 55, 84, - 85, 85, 86, 86, 87, 87, 87, 87, 87, 49, - 49, 89, 90, 90, 91, 91, 91, 91, 91, 92, - 93, 88, 94, 95, 95, 96, 96, 97, 97, 97, - 97, 54, 54, 98, 99, 99, 100, 100, 101, 101, - 101, 101, 101, 101, 102, 50, 104, 104, 105, 105, - 105, 105, 105, 105, 105, 105, 105, 105, 103, 106, - 107, 41, 109, 110, 110, 111, 111, 111, 111, 111, - 111, 111, 3, 3, 78, 83, 83, 112, 113, 113, - 114, 114, 115, 115, 115, 115, 115, 115, 115, 115, - 115, 116, 116, 121, 121, 121, 122, 122, 123, 123, - 123, 123, 123, 123, 124, 120, 17, 17, 17, 119, - 44, 125, 126, 126, 108, 108, 127, 127, 127, 127, - 127, 127, 127, 127, 127, 128, 129, 53, 130, 130, - 131, 131, 132, 132, 132, 132, 132, 132, 132, 132, - 132, 132, 132, 132, 132, 132, 132, 132, 133, 48, - 48, 134, 134, 135, 135, 136, 136, 136, 136, 136, - 136, 136, 136, 138, 139, 139, 139, 139, 139, 139, - 139, 139, 139, 139, 139, 137, 137, 140, 141, 141, - 23, 142, 143, 143, 144, 144, 145, 145, 145, 145, - 145, 145, 145, 146, 147, 51, 148, 149, 149, 150, - 150, 151, 151, 151, 151, 151, 151, 151, 52, 152, - 153, 153, 154, 154, 155, 155, 155, 155, 155, 42, - 156, 157, 157, 158, 158, 159, 159, 159, 159, 43, - 160, 161, 162, 162, 81, 81, 82, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 165, 165, 164, 77, 47, 47, 167, 168, 168, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 166, 166, - 45, 170, 171, 172, 172, 173, 173, 173, 173, 173, - 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, - 80, 4, 4, 2, 2, 1, 1, 79, 46, 174, - 118, 118, 175, 176, 176, 177, 177, 177, 177, 177, - 178, 117, 117, 179, 180, 180, 181, 181, 181, 181, - 181, 181, 182, 16, 18, 14, 15, 22, 76, 8, - 8, 6, 6, 7, 5, 5, + 31, 32, 32, 32, 32, 33, 34, 34, 21, 35, + 35, 35, 35, 35, 35, 35, 19, 37, 38, 38, + 39, 39, 39, 39, 39, 39, 20, 20, 36, 40, + 40, 27, 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 41, 41, 24, + 24, 57, 58, 58, 59, 59, 60, 60, 60, 60, + 61, 61, 62, 63, 63, 64, 64, 65, 65, 65, + 65, 66, 25, 67, 68, 68, 69, 69, 69, 69, + 69, 69, 69, 70, 71, 73, 74, 72, 75, 75, + 76, 76, 76, 76, 76, 76, 76, 76, 76, 56, + 56, 85, 86, 86, 87, 87, 88, 88, 88, 88, + 88, 50, 50, 90, 91, 91, 92, 92, 92, 92, + 92, 93, 94, 89, 95, 96, 96, 97, 97, 98, + 98, 98, 98, 55, 55, 99, 100, 100, 101, 101, + 102, 102, 102, 102, 102, 102, 103, 51, 105, 105, + 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, + 104, 107, 108, 42, 110, 111, 111, 112, 112, 112, + 112, 112, 112, 112, 3, 3, 79, 84, 84, 113, + 114, 114, 115, 115, 116, 116, 116, 116, 116, 116, + 116, 116, 116, 117, 117, 122, 122, 122, 123, 123, + 124, 124, 124, 124, 124, 124, 125, 121, 17, 17, + 17, 120, 45, 126, 127, 127, 109, 109, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 129, 130, 54, + 131, 131, 132, 132, 133, 133, 133, 133, 133, 133, + 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, + 134, 49, 49, 135, 135, 136, 136, 137, 137, 137, + 137, 137, 137, 137, 137, 139, 140, 140, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 138, 138, 141, + 142, 142, 23, 143, 144, 144, 145, 145, 146, 146, + 146, 146, 146, 146, 146, 147, 148, 52, 149, 150, + 150, 151, 151, 152, 152, 152, 152, 152, 152, 152, + 53, 153, 154, 154, 155, 155, 156, 156, 156, 156, + 156, 43, 157, 158, 158, 159, 159, 160, 160, 160, + 160, 44, 161, 162, 163, 163, 82, 82, 83, 164, + 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 166, 166, 165, 78, 48, 48, 168, 169, + 169, 170, 170, 170, 170, 170, 170, 170, 170, 170, + 167, 167, 46, 171, 172, 173, 173, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 81, 4, 4, 2, 2, 1, 1, 80, + 47, 175, 119, 119, 176, 177, 177, 178, 178, 178, + 178, 178, 179, 118, 118, 180, 181, 181, 182, 182, + 182, 182, 182, 182, 183, 16, 18, 14, 15, 22, + 77, 8, 8, 6, 6, 7, 5, 5, } var yyR2 = [...]int8{ 0, 3, 3, 3, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 2, 4, 2, 2, 4, 1, 2, 1, - 1, 1, 1, 2, 1, 2, 3, 1, 3, 1, - 1, 1, 1, 1, 4, 2, 1, 2, 3, 1, - 1, 1, 1, 1, 2, 4, 3, 0, 1, 1, + 1, 1, 2, 4, 2, 2, 4, 0, 1, 1, + 2, 1, 1, 1, 1, 2, 1, 2, 3, 1, + 3, 1, 1, 1, 1, 1, 4, 2, 1, 2, + 3, 1, 1, 1, 1, 1, 2, 4, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 2, 4, 2, - 0, 1, 1, 2, 1, 1, 1, 1, 2, 4, - 2, 0, 1, 1, 2, 1, 1, 1, 1, 3, - 4, 2, 1, 2, 1, 1, 1, 2, 2, 2, - 1, 3, 2, 2, 2, 3, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 4, 2, - 0, 1, 1, 2, 1, 1, 1, 1, 1, 2, - 4, 2, 1, 2, 1, 1, 1, 1, 1, 3, - 3, 3, 2, 2, 4, 1, 2, 1, 1, 1, - 1, 2, 4, 2, 0, 1, 1, 2, 1, 1, - 1, 1, 1, 1, 3, 4, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, - 2, 4, 2, 1, 2, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 2, 4, 2, 0, 1, - 1, 2, 1, 3, 1, 1, 1, 1, 1, 1, - 1, 2, 4, 2, 2, 2, 1, 2, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, - 4, 2, 0, 1, 1, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 4, 0, 1, - 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, - 4, 0, 1, 1, 2, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 4, 1, 1, 2, 4, 2, 0, 1, 1, 2, 1, 1, 1, 1, - 3, 3, 1, 2, 2, 4, 2, 0, 1, 1, - 2, 1, 1, 1, 1, 3, 3, 1, 4, 2, - 0, 1, 1, 2, 1, 1, 1, 1, 1, 4, - 2, 0, 1, 1, 2, 1, 1, 1, 1, 4, - 2, 1, 1, 2, 3, 3, 3, 1, 1, 1, + 2, 4, 2, 0, 1, 1, 2, 1, 1, 1, + 1, 3, 4, 2, 1, 2, 1, 1, 1, 2, + 2, 2, 1, 3, 2, 2, 2, 3, 1, 2, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 4, 2, 0, 1, 1, 2, 1, 1, 1, 1, + 1, 2, 4, 2, 1, 2, 1, 1, 1, 1, + 1, 3, 3, 3, 2, 2, 4, 1, 2, 1, + 1, 1, 1, 2, 4, 2, 0, 1, 1, 2, + 1, 1, 1, 1, 1, 1, 3, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 3, 3, 3, 3, 2, 4, 1, 1, 2, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, - 4, 2, 1, 1, 2, 1, 1, 1, 1, 1, + 2, 4, 2, 4, 2, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 2, 4, 2, + 0, 1, 1, 2, 1, 3, 1, 1, 1, 1, + 1, 1, 1, 2, 4, 2, 2, 2, 1, 2, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, + 3, 3, 4, 2, 0, 1, 1, 2, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 3, 2, 4, + 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 4, 0, 1, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, 4, 1, + 1, 2, 4, 2, 0, 1, 1, 2, 1, 1, + 1, 1, 3, 3, 1, 2, 2, 4, 2, 0, + 1, 1, 2, 1, 1, 1, 1, 3, 3, 1, + 4, 2, 0, 1, 1, 2, 1, 1, 1, 1, + 1, 4, 2, 0, 1, 1, 2, 1, 1, 1, + 1, 4, 2, 1, 1, 2, 3, 3, 3, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 3, 3, 3, 3, 2, 4, 1, 1, + 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 4, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 3, 1, 3, 1, 1, 1, 1, 3, 4, 2, - 2, 4, 2, 1, 2, 1, 1, 1, 1, 1, - 3, 2, 4, 2, 1, 2, 1, 1, 1, 1, - 1, 1, 3, 3, 3, 3, 3, 3, 3, 1, - 3, 3, 3, 3, 0, 1, + 1, 1, 3, 1, 3, 1, 1, 1, 1, 3, + 4, 2, 2, 4, 2, 1, 2, 1, 1, 1, + 1, 1, 3, 2, 4, 2, 1, 2, 1, 1, + 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, + 3, 1, 3, 3, 3, 3, 0, 1, } var yyChk = [...]int16{ -1000, -9, -10, 25, 54, -11, -12, 11, -13, -14, -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, - -25, -26, -27, -29, 49, 50, 12, 72, 34, -32, - -36, 15, 62, -142, -56, -66, -28, -41, -42, -43, - -44, -45, -46, -47, -48, -49, -50, -51, -52, -53, - -54, -55, -6, 13, 40, 41, 28, 64, 77, 92, - -109, -156, -160, -125, -170, -174, -166, -133, -89, -103, - -148, -152, -129, -98, -84, 7, -7, 30, 31, 27, + -25, -26, -27, -29, 49, 50, 12, 72, 34, -33, + -37, 15, 62, -143, -57, -67, -28, -42, -43, -44, + -45, -46, -47, -48, -49, -50, -51, -52, -53, -54, + -55, -56, -6, 13, 40, 41, 28, 64, 77, 92, + -110, -157, -161, -126, -171, -175, -167, -134, -90, -104, + -149, -153, -130, -99, -85, 7, -7, 30, 31, 27, 26, 32, 35, 43, 44, 21, 61, 38, 42, 29, 53, 56, 58, 4, 4, 9, -12, -4, 5, 10, 8, -4, -4, -4, 73, 74, 75, -4, 8, 10, @@ -672,128 +673,128 @@ var yyChk = [...]int16{ 8, 10, 8, 10, 8, -5, 5, -3, -4, 6, -11, 4, 4, 4, 4, 4, 4, 4, 4, 4, -4, 4, 4, 4, -4, 4, 4, 8, 8, -8, - 55, 10, 8, -30, -31, -16, -17, -18, -6, 10, - 10, -8, 10, 10, 10, 10, -33, -34, -21, 13, - -16, -17, -18, -35, -6, 91, -37, -38, 13, -16, - -17, -18, -35, -6, 10, 10, -143, -144, -145, -16, - -17, -18, -88, -146, -147, -6, 59, 23, 24, -57, - -58, -59, -60, -16, -17, -18, -61, 65, -67, -68, - -16, -18, -69, -70, -72, -73, -6, 78, -21, -110, - -111, -83, -76, -16, -17, -18, -78, -6, -112, 70, - 16, 14, -157, -158, -159, -16, -17, -18, -27, -161, - -162, -163, -16, -17, -18, -88, -95, -81, -82, -79, - -80, -164, -77, -165, -27, -94, 36, 37, 20, 33, - 19, 22, 83, 60, -126, -108, -127, -16, -17, -18, - -88, -95, -79, -80, -128, -27, 76, -171, -172, -173, - -83, -16, -17, -18, -88, -49, -95, -76, -79, -165, - -81, -82, -80, -78, -6, -171, -167, -168, -169, -16, - -17, -18, -88, -49, -95, -79, -80, -6, -134, -135, - -136, -16, -17, -18, -88, -95, -137, -53, -6, -138, - 51, -90, -91, -16, -18, -92, -93, -6, 88, 87, - -104, -105, -16, -17, -18, -106, -27, -88, -95, -80, - -78, -79, -107, 39, -149, -150, -151, -16, -17, -18, - -88, -146, -147, -6, -153, -154, -155, -16, -17, -18, - -88, -27, -130, -131, -132, -16, -17, -18, -88, -95, - -43, -44, -45, -46, -47, -48, -50, -106, -51, -52, - -6, -99, -100, -101, -16, -17, -18, -102, -88, -6, - 57, -85, -86, -87, -16, -17, -18, -88, -6, 10, - 8, 9, 5, -6, 9, -31, -34, 9, 5, 5, - -38, 9, 5, 9, -145, -39, -40, -27, -39, -4, - 8, 8, 9, -59, 10, 8, 5, 9, -68, -71, - 8, -71, -71, 79, 81, 82, 80, 9, 9, -111, - 10, 8, 5, -4, 4, 9, -159, 9, -163, 10, - 8, -2, 52, 6, 5, -2, -1, 47, 48, -1, - -4, -4, 84, 85, -4, 9, -127, -4, 9, -173, - 9, 9, -169, 9, -136, 10, 8, -4, 9, -91, - -4, -4, 9, -105, 8, 4, 9, -151, -39, -39, - 9, -155, 9, -132, 9, -101, -4, 9, -87, 9, - 10, 10, 10, 9, -27, 9, -8, -62, -63, -64, - -16, -17, -18, -65, 66, -74, -75, -76, -49, -77, - -78, -79, -80, -81, -82, -83, -8, -113, -114, -115, - -116, 45, -117, -118, -102, -119, -83, -120, -6, -121, - -179, -175, 71, 86, 63, 17, 67, 18, 89, -8, - -8, -96, -97, -16, -17, -18, -6, 10, 10, 10, - 10, 10, -8, 10, -8, -8, -8, -140, -141, -139, - -16, -17, -18, -88, -78, -79, -80, -49, -81, -82, - -6, -8, -8, -108, 9, 9, -8, 9, -64, -1, - 9, -75, 9, -115, -4, 10, 8, 10, 8, 10, - 8, -2, -1, -4, -4, -4, 5, 4, 9, -97, - 9, -139, 9, 10, -8, -122, -123, -16, -18, -92, - -93, -124, -6, 68, -180, -181, -16, -17, -18, -182, - -88, -6, 46, -176, -177, -16, -17, -18, -178, -6, - 90, 10, -8, 9, -123, 69, 9, -181, -2, 9, - -177, -2, 10, -8, -8, + 55, 10, 8, -30, -31, -32, -16, -17, -18, -6, + 10, 10, -8, 10, 10, 10, 10, -34, -35, -21, + 13, -16, -17, -18, -36, -6, 91, -38, -39, 13, + -16, -17, -18, -36, -6, 10, 10, -144, -145, -146, + -16, -17, -18, -89, -147, -148, -6, 59, 23, 24, + -58, -59, -60, -61, -16, -17, -18, -62, 65, -68, + -69, -16, -18, -70, -71, -73, -74, -6, 78, -21, + -111, -112, -84, -77, -16, -17, -18, -79, -6, -113, + 70, 16, 14, -158, -159, -160, -16, -17, -18, -27, + -162, -163, -164, -16, -17, -18, -89, -96, -82, -83, + -80, -81, -165, -78, -166, -27, -95, 36, 37, 20, + 33, 19, 22, 83, 60, -127, -109, -128, -16, -17, + -18, -89, -96, -80, -81, -129, -27, 76, -172, -173, + -174, -84, -16, -17, -18, -89, -50, -96, -77, -80, + -166, -82, -83, -81, -79, -6, -172, -168, -169, -170, + -16, -17, -18, -89, -50, -96, -80, -81, -6, -135, + -136, -137, -16, -17, -18, -89, -96, -138, -54, -6, + -139, 51, -91, -92, -16, -18, -93, -94, -6, 88, + 87, -105, -106, -16, -17, -18, -107, -27, -89, -96, + -81, -79, -80, -108, 39, -150, -151, -152, -16, -17, + -18, -89, -147, -148, -6, -154, -155, -156, -16, -17, + -18, -89, -27, -131, -132, -133, -16, -17, -18, -89, + -96, -44, -45, -46, -47, -48, -49, -51, -107, -52, + -53, -6, -100, -101, -102, -16, -17, -18, -103, -89, + -6, 57, -86, -87, -88, -16, -17, -18, -89, -6, + 10, 8, 9, 5, -6, 9, -32, -35, 9, 5, + 5, -39, 9, 5, 9, -146, -40, -41, -27, -40, + -4, 8, 8, 9, -60, 10, 8, 5, 9, -69, + -72, 8, -72, -72, 79, 81, 82, 80, 9, 9, + -112, 10, 8, 5, -4, 4, 9, -160, 9, -164, + 10, 8, -2, 52, 6, 5, -2, -1, 47, 48, + -1, -4, -4, 84, 85, -4, 9, -128, -4, 9, + -174, 9, 9, -170, 9, -137, 10, 8, -4, 9, + -92, -4, -4, 9, -106, 8, 4, 9, -152, -40, + -40, 9, -156, 9, -133, 9, -102, -4, 9, -88, + 9, 10, 10, 10, 9, -27, 9, -8, -63, -64, + -65, -16, -17, -18, -66, 66, -75, -76, -77, -50, + -78, -79, -80, -81, -82, -83, -84, -8, -114, -115, + -116, -117, 45, -118, -119, -103, -120, -84, -121, -6, + -122, -180, -176, 71, 86, 63, 17, 67, 18, 89, + -8, -8, -97, -98, -16, -17, -18, -6, 10, 10, + 10, 10, 10, -8, 10, -8, -8, -8, -141, -142, + -140, -16, -17, -18, -89, -79, -80, -81, -50, -82, + -83, -6, -8, -8, -109, 9, 9, -8, 9, -65, + -1, 9, -76, 9, -116, -4, 10, 8, 10, 8, + 10, 8, -2, -1, -4, -4, -4, 5, 4, 9, + -98, 9, -140, 9, 10, -8, -123, -124, -16, -18, + -93, -94, -125, -6, 68, -181, -182, -16, -17, -18, + -183, -89, -6, 46, -177, -178, -16, -17, -18, -179, + -6, 90, 10, -8, 9, -124, 69, 9, -182, -2, + 9, -178, -2, 10, -8, -8, } var yyDef = [...]int16{ 0, -2, 0, 0, 0, 0, 4, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 464, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 5, 0, 423, 25, + 27, 0, 0, 0, 0, 0, 0, 0, 0, 56, + 0, 0, 0, 314, 79, 82, 0, 0, 24, 35, + 47, 313, 81, 103, 22, 0, 353, 0, 244, 0, + 0, 386, 0, 281, 283, 141, 0, 0, 329, 342, + 260, 163, 166, 129, 132, 0, 423, 467, 204, 205, + 0, 194, 352, 362, 243, 403, 431, 400, 401, 280, + 143, 190, 328, 341, 258, 165, 131, 2, 3, 6, + 0, 461, 0, 0, 28, 29, 31, 32, 33, 34, + 457, 458, 455, 238, 239, 240, 456, 0, 36, 39, + 0, 41, 42, 43, 44, 45, 0, 0, 48, 0, + 51, 52, 53, 54, 55, 38, 459, 0, 315, 316, + 318, 319, 320, 321, 59, 59, 324, 0, 0, 0, + 0, 83, 84, 86, 87, 88, 89, 0, 0, 0, + 104, 106, 107, 108, 0, 0, 0, 112, 0, 0, + 0, 195, 197, 198, 199, 200, 201, 202, 203, 0, + 0, 0, 0, 0, 354, 355, 357, 358, 359, 360, + 0, 363, 364, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 245, 246, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 0, 0, 404, + 405, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 421, 0, 0, 388, 389, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, + 284, 285, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 144, 146, 147, 148, 149, 150, 0, + 0, 0, 178, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 0, 0, 0, 330, 331, 333, 334, + 335, 336, 59, 59, 339, 0, 343, 344, 346, 347, + 348, 349, 350, 0, 261, 262, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 0, 167, 168, 170, 171, 172, 173, 174, + 175, 0, 0, 133, 134, 136, 137, 138, 139, 140, + 463, 465, 464, 424, 0, 26, 30, 37, 46, 0, + 0, 49, 57, 0, 312, 317, 0, 60, 77, 0, + 0, 325, 326, 80, 85, 90, 93, 92, 102, 105, + 109, 0, 110, 111, 0, 114, 115, 116, 23, 193, + 196, 207, 210, 0, 0, 209, 351, 356, 361, 365, + 155, 0, 0, 0, 425, 426, 0, 0, 427, 428, + 0, 0, 0, 0, 0, 154, 242, 247, 0, 402, + 406, 430, 387, 390, 282, 286, 307, 0, 295, 142, + 145, 0, 0, 177, 179, 0, 192, 327, 332, 0, + 0, 340, 345, 259, 263, 164, 169, 0, 130, 135, + 462, 40, 58, 50, 322, 78, 323, 153, 0, 94, + 95, 97, 98, 99, 100, 0, 0, 118, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 113, 0, 211, + 212, 214, 0, 216, 217, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 5, 0, 421, 25, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, - 0, 0, 0, 312, 77, 80, 0, 0, 24, 33, - 45, 311, 79, 101, 22, 0, 351, 0, 242, 0, - 0, 384, 0, 279, 281, 139, 0, 0, 327, 340, - 258, 161, 164, 127, 130, 0, 421, 465, 202, 203, - 0, 192, 350, 360, 241, 401, 429, 398, 399, 278, - 141, 188, 326, 339, 256, 163, 129, 2, 3, 6, - 0, 459, 0, 0, 27, 29, 30, 31, 32, 455, - 456, 453, 236, 237, 238, 454, 0, 34, 37, 0, - 39, 40, 41, 42, 43, 0, 0, 46, 0, 49, - 50, 51, 52, 53, 36, 457, 0, 313, 314, 316, - 317, 318, 319, 57, 57, 322, 0, 0, 0, 0, - 81, 82, 84, 85, 86, 87, 0, 0, 0, 102, - 104, 105, 106, 0, 0, 0, 110, 0, 0, 0, - 193, 195, 196, 197, 198, 199, 200, 201, 0, 0, - 0, 0, 0, 352, 353, 355, 356, 357, 358, 0, - 361, 362, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 243, 244, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 0, 0, 402, 403, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 0, 0, 386, 387, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 0, 282, - 283, 285, 286, 287, 288, 289, 290, 291, 292, 0, - 0, 0, 142, 144, 145, 146, 147, 148, 0, 0, - 0, 176, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 0, 0, 0, 328, 329, 331, 332, 333, - 334, 57, 57, 337, 0, 341, 342, 344, 345, 346, - 347, 348, 0, 259, 260, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 0, 165, 166, 168, 169, 170, 171, 172, 173, - 0, 0, 131, 132, 134, 135, 136, 137, 138, 461, - 463, 462, 422, 0, 26, 28, 35, 44, 0, 0, - 47, 55, 0, 310, 315, 0, 58, 75, 0, 0, - 323, 324, 78, 83, 88, 91, 90, 100, 103, 107, - 0, 108, 109, 0, 112, 113, 114, 23, 191, 194, - 205, 208, 0, 0, 207, 349, 354, 359, 363, 153, - 0, 0, 0, 423, 424, 0, 0, 425, 426, 0, - 0, 0, 0, 0, 152, 240, 245, 0, 400, 404, - 428, 385, 388, 280, 284, 305, 0, 293, 140, 143, - 0, 0, 175, 177, 0, 190, 325, 330, 0, 0, - 338, 343, 257, 261, 162, 167, 0, 128, 133, 460, - 38, 56, 48, 320, 76, 321, 151, 0, 92, 93, - 95, 96, 97, 98, 0, 0, 116, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 111, 0, 209, 210, - 212, 0, 214, 215, 216, 217, 218, 219, 220, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 458, - 204, 0, 155, 157, 158, 159, 160, 364, 365, 366, - 427, 420, 382, 383, 380, 381, 255, 0, 307, 308, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 149, 150, 0, 335, 336, 174, 89, 94, 0, - 115, 117, 206, 211, 0, 221, 0, 441, 0, 430, - 0, 0, 0, 223, 224, 225, 443, 432, 154, 156, - 306, 309, 189, 99, 213, 0, 226, 228, 229, 230, - 231, 232, 233, 0, 0, 444, 446, 447, 448, 449, - 450, 451, 0, 0, 433, 435, 436, 437, 438, 439, - 0, 239, 235, 222, 227, 0, 442, 445, 0, 431, - 434, 0, 234, 452, 440, + 460, 206, 0, 157, 159, 160, 161, 162, 366, 367, + 368, 429, 422, 384, 385, 382, 383, 257, 0, 309, + 310, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 151, 152, 0, 337, 338, 176, 91, 96, + 0, 117, 119, 208, 213, 0, 223, 0, 443, 0, + 432, 0, 0, 0, 225, 226, 227, 445, 434, 156, + 158, 308, 311, 191, 101, 215, 0, 228, 230, 231, + 232, 233, 234, 235, 0, 0, 446, 448, 449, 450, + 451, 452, 453, 0, 0, 435, 437, 438, 439, 440, + 441, 0, 241, 237, 224, 229, 0, 444, 447, 0, + 433, 436, 0, 236, 454, 442, } var yyTok1 = [...]int8{ @@ -1227,9 +1228,9 @@ yydefault: { yylex.(*lexer).stack.pop() } - case 33: + case 35: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:278 +//line parser.y:282 { l := yylex.(*lexer) l.stack.push(l.builder.Import(l.stack.peek(), yyDollar[2].token, l.loader)) @@ -1237,9 +1238,9 @@ yydefault: goto ret1 } } - case 36: + case 38: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:291 +//line parser.y:295 { l := yylex.(*lexer) l.builder.Prefix(l.stack.peek(), yyDollar[2].token) @@ -1247,15 +1248,15 @@ yydefault: goto ret1 } } - case 44: + case 46: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:309 +//line parser.y:313 { yylex.(*lexer).stack.pop() } - case 45: + case 47: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:314 +//line parser.y:318 { l := yylex.(*lexer) l.stack.push(l.builder.Include(l.stack.peek(), yyDollar[2].token, yylex.(*lexer).loader)) @@ -1263,40 +1264,40 @@ yydefault: goto ret1 } } - case 54: + case 56: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:335 +//line parser.y:339 { yylex.(*lexer).stack.pop() } - case 55: + case 57: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:338 +//line parser.y:342 { yylex.(*lexer).stack.pop() } - case 56: + case 58: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:343 +//line parser.y:347 { l := yylex.(*lexer) l.builder.SetRevisionDate(l.stack.peek(), yyDollar[2].token) } - case 77: + case 79: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:374 +//line parser.y:378 { yylex.(*lexer).stack.pop() } - case 78: + case 80: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:377 +//line parser.y:381 { yylex.(*lexer).stack.pop() } - case 79: + case 81: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:382 +//line parser.y:386 { l := yylex.(*lexer) l.stack.push(l.builder.ExtensionDef(l.stack.peek(), yyDollar[2].token)) @@ -1304,21 +1305,21 @@ yydefault: goto ret1 } } - case 88: + case 90: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:404 +//line parser.y:408 { yylex.(*lexer).stack.pop() } - case 89: + case 91: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:407 +//line parser.y:411 { yylex.(*lexer).stack.pop() } - case 90: + case 92: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:412 +//line parser.y:416 { l := yylex.(*lexer) l.stack.push(l.builder.ExtensionDefArg(l.stack.peek(), yyDollar[2].token)) @@ -1326,9 +1327,9 @@ yydefault: goto ret1 } } - case 99: + case 101: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:434 +//line parser.y:438 { l := yylex.(*lexer) l.builder.YinElement(l.stack.peek(), yyDollar[2].boolean) @@ -1336,15 +1337,15 @@ yydefault: goto ret1 } } - case 100: + case 102: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:443 +//line parser.y:447 { yylex.(*lexer).stack.pop() } - case 101: + case 103: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:448 +//line parser.y:452 { l := yylex.(*lexer) l.stack.push(l.builder.Deviation(l.stack.peek(), yyDollar[2].token)) @@ -1352,9 +1353,9 @@ yydefault: goto ret1 } } - case 111: + case 113: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:476 +//line parser.y:480 { l := yylex.(*lexer) l.builder.NotSupported(l.stack.peek()) @@ -1362,9 +1363,9 @@ yydefault: goto ret1 } } - case 112: + case 114: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:485 +//line parser.y:489 { l := yylex.(*lexer) l.stack.push(l.builder.ReplaceDeviate(l.stack.peek())) @@ -1372,9 +1373,9 @@ yydefault: goto ret1 } } - case 113: + case 115: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:494 +//line parser.y:498 { l := yylex.(*lexer) l.stack.push(l.builder.DeleteDeviate(l.stack.peek())) @@ -1382,9 +1383,9 @@ yydefault: goto ret1 } } - case 114: + case 116: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:503 +//line parser.y:507 { l := yylex.(*lexer) l.stack.push(l.builder.AddDeviate(l.stack.peek())) @@ -1392,27 +1393,27 @@ yydefault: goto ret1 } } - case 115: + case 117: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:512 +//line parser.y:516 { yylex.(*lexer).stack.pop() } - case 127: + case 129: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:535 +//line parser.y:539 { yylex.(*lexer).stack.pop() } - case 128: + case 130: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:538 +//line parser.y:542 { yylex.(*lexer).stack.pop() } - case 129: + case 131: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:544 +//line parser.y:548 { l := yylex.(*lexer) l.stack.push(l.builder.Feature(l.stack.peek(), yyDollar[2].token)) @@ -1420,21 +1421,21 @@ yydefault: goto ret1 } } - case 139: + case 141: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:567 +//line parser.y:571 { yylex.(*lexer).stack.pop() } - case 140: + case 142: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:570 +//line parser.y:574 { yylex.(*lexer).stack.pop() } - case 141: + case 143: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:575 +//line parser.y:579 { l := yylex.(*lexer) l.stack.push(l.builder.Must(l.stack.peek(), yyDollar[2].token)) @@ -1442,9 +1443,9 @@ yydefault: goto ret1 } } - case 149: + case 151: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:594 +//line parser.y:598 { l := yylex.(*lexer) l.builder.ErrorMessage(l.stack.peek(), yyDollar[2].token) @@ -1452,9 +1453,9 @@ yydefault: goto ret1 } } - case 150: + case 152: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:603 +//line parser.y:607 { l := yylex.(*lexer) l.builder.ErrorAppTag(l.stack.peek(), yyDollar[2].token) @@ -1462,9 +1463,9 @@ yydefault: goto ret1 } } - case 151: + case 153: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:612 +//line parser.y:616 { l := yylex.(*lexer) l.builder.IfFeature(l.stack.peek(), yyDollar[2].token) @@ -1472,9 +1473,9 @@ yydefault: goto ret1 } } - case 152: + case 154: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:621 +//line parser.y:625 { l := yylex.(*lexer) l.stack.push(l.builder.When(l.stack.peek(), yyDollar[2].token)) @@ -1482,33 +1483,33 @@ yydefault: goto ret1 } } - case 153: + case 155: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:630 +//line parser.y:634 { yylex.(*lexer).stack.pop() } - case 154: + case 156: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:633 +//line parser.y:637 { yylex.(*lexer).stack.pop() } - case 161: + case 163: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:647 +//line parser.y:651 { yylex.(*lexer).stack.pop() } - case 162: + case 164: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:650 +//line parser.y:654 { yylex.(*lexer).stack.pop() } - case 163: + case 165: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:655 +//line parser.y:659 { l := yylex.(*lexer) l.stack.push(l.builder.Identity(l.stack.peek(), yyDollar[2].token)) @@ -1516,9 +1517,9 @@ yydefault: goto ret1 } } - case 174: + case 176: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:679 +//line parser.y:683 { l := yylex.(*lexer) l.builder.Base(l.stack.peek(), yyDollar[2].token) @@ -1526,15 +1527,15 @@ yydefault: goto ret1 } } - case 175: + case 177: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:688 +//line parser.y:692 { yylex.(*lexer).stack.pop() } - case 188: + case 190: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:709 +//line parser.y:713 { l := yylex.(*lexer) l.stack.push(l.builder.Choice(l.stack.peek(), yyDollar[2].token)) @@ -1542,15 +1543,15 @@ yydefault: goto ret1 } } - case 189: + case 191: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:718 +//line parser.y:722 { yylex.(*lexer).stack.pop() } - case 190: + case 192: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:723 +//line parser.y:727 { l := yylex.(*lexer) l.stack.push(l.builder.Case(l.stack.peek(), yyDollar[2].token)) @@ -1558,15 +1559,15 @@ yydefault: goto ret1 } } - case 191: + case 193: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:732 +//line parser.y:736 { yylex.(*lexer).stack.pop() } - case 192: + case 194: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:737 +//line parser.y:741 { l := yylex.(*lexer) l.stack.push(l.builder.Typedef(l.stack.peek(), yyDollar[2].token)) @@ -1574,21 +1575,21 @@ yydefault: goto ret1 } } - case 202: + case 204: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:758 +//line parser.y:762 { yyVAL.token = yyDollar[1].token } - case 203: + case 205: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:759 +//line parser.y:763 { yyVAL.token = yyDollar[1].token } - case 204: + case 206: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:762 +//line parser.y:766 { l := yylex.(*lexer) l.builder.Default(l.stack.peek(), yyDollar[2].token) @@ -1596,21 +1597,21 @@ yydefault: goto ret1 } } - case 205: + case 207: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:771 +//line parser.y:775 { yylex.(*lexer).stack.pop() } - case 206: + case 208: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:774 +//line parser.y:778 { yylex.(*lexer).stack.pop() } - case 207: + case 209: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:779 +//line parser.y:783 { l := yylex.(*lexer) l.stack.push(l.builder.Type(l.stack.peek(), yyDollar[2].token)) @@ -1618,9 +1619,9 @@ yydefault: goto ret1 } } - case 213: + case 215: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:796 +//line parser.y:800 { l := yylex.(*lexer) l.builder.Path(l.stack.peek(), yyDollar[2].token) @@ -1628,21 +1629,21 @@ yydefault: goto ret1 } } - case 221: + case 223: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:812 +//line parser.y:816 { yylex.(*lexer).stack.pop() } - case 222: + case 224: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:815 +//line parser.y:819 { yylex.(*lexer).stack.pop() } - case 223: + case 225: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:820 +//line parser.y:824 { l := yylex.(*lexer) l.stack.push(l.builder.ValueRange(l.stack.peek(), yyDollar[2].token)) @@ -1650,9 +1651,9 @@ yydefault: goto ret1 } } - case 224: + case 226: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:827 +//line parser.y:831 { l := yylex.(*lexer) l.stack.push(l.builder.LengthRange(l.stack.peek(), yyDollar[2].token)) @@ -1660,9 +1661,9 @@ yydefault: goto ret1 } } - case 225: + case 227: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:834 +//line parser.y:838 { l := yylex.(*lexer) l.stack.push(l.builder.Pattern(l.stack.peek(), yyDollar[2].token)) @@ -1670,16 +1671,16 @@ yydefault: goto ret1 } } - case 234: + case 236: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:854 +//line parser.y:858 { l := yylex.(*lexer) l.builder.SetInverted(l.stack.peek()) } - case 235: + case 237: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:860 +//line parser.y:864 { l := yylex.(*lexer) l.builder.RequireInstance(l.stack.peek(), yyDollar[2].boolean) @@ -1687,9 +1688,9 @@ yydefault: goto ret1 } } - case 239: + case 241: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:874 +//line parser.y:878 { l := yylex.(*lexer) l.builder.FractionDigits(l.stack.peek(), yyDollar[2].num32) @@ -1697,15 +1698,15 @@ yydefault: goto ret1 } } - case 240: + case 242: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:883 +//line parser.y:887 { yylex.(*lexer).stack.pop() } - case 241: + case 243: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:888 +//line parser.y:892 { l := yylex.(*lexer) l.stack.push(l.builder.Container(l.stack.peek(), yyDollar[2].token)) @@ -1713,9 +1714,9 @@ yydefault: goto ret1 } } - case 255: + case 257: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:916 +//line parser.y:920 { l := yylex.(*lexer) l.builder.Presence(l.stack.peek(), yyDollar[2].token) @@ -1723,9 +1724,9 @@ yydefault: goto ret1 } } - case 256: + case 258: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:925 +//line parser.y:929 { l := yylex.(*lexer) l.stack.push(l.builder.Augment(l.stack.peek(), yyDollar[2].token)) @@ -1733,15 +1734,15 @@ yydefault: goto ret1 } } - case 257: + case 259: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:934 +//line parser.y:938 { yylex.(*lexer).stack.pop() } - case 278: + case 280: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:964 +//line parser.y:968 { l := yylex.(*lexer) l.stack.push(l.builder.Uses(l.stack.peek(), yyDollar[2].token)) @@ -1749,21 +1750,21 @@ yydefault: goto ret1 } } - case 279: + case 281: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:973 +//line parser.y:977 { yylex.(*lexer).stack.pop() } - case 280: + case 282: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:976 +//line parser.y:980 { yylex.(*lexer).stack.pop() } - case 293: + case 295: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:998 +//line parser.y:1002 { l := yylex.(*lexer) l.stack.push(l.builder.Refine(l.stack.peek(), yyDollar[2].token)) @@ -1771,27 +1772,27 @@ yydefault: goto ret1 } } - case 305: + case 307: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1021 +//line parser.y:1025 { yylex.(*lexer).stack.pop() } - case 306: + case 308: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1024 +//line parser.y:1028 { yylex.(*lexer).stack.pop() } - case 310: + case 312: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1036 +//line parser.y:1040 { yylex.(*lexer).stack.pop() } - case 311: + case 313: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1041 +//line parser.y:1045 { l := yylex.(*lexer) l.stack.push(l.builder.Action(l.stack.peek(), yyDollar[2].token)) @@ -1799,21 +1800,21 @@ yydefault: goto ret1 } } - case 320: + case 322: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1061 +//line parser.y:1065 { yylex.(*lexer).stack.pop() } - case 321: + case 323: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1064 +//line parser.y:1068 { yylex.(*lexer).stack.pop() } - case 323: + case 325: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1070 +//line parser.y:1074 { l := yylex.(*lexer) l.stack.push(l.builder.ActionInput(l.stack.peek())) @@ -1821,9 +1822,9 @@ yydefault: goto ret1 } } - case 324: + case 326: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1079 +//line parser.y:1083 { l := yylex.(*lexer) l.stack.push(l.builder.ActionOutput(l.stack.peek())) @@ -1831,15 +1832,15 @@ yydefault: goto ret1 } } - case 325: + case 327: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1091 +//line parser.y:1095 { yylex.(*lexer).stack.pop() } - case 326: + case 328: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1096 +//line parser.y:1100 { l := yylex.(*lexer) l.stack.push(l.builder.Action(l.stack.peek(), yyDollar[2].token)) @@ -1847,27 +1848,27 @@ yydefault: goto ret1 } } - case 335: + case 337: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1116 +//line parser.y:1120 { yylex.(*lexer).stack.pop() } - case 336: + case 338: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1119 +//line parser.y:1123 { yylex.(*lexer).stack.pop() } - case 338: + case 340: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1128 +//line parser.y:1132 { yylex.(*lexer).stack.pop() } - case 339: + case 341: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1133 +//line parser.y:1137 { l := yylex.(*lexer) l.stack.push(l.builder.Notification(l.stack.peek(), yyDollar[2].token)) @@ -1875,15 +1876,15 @@ yydefault: goto ret1 } } - case 349: + case 351: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1157 +//line parser.y:1161 { yylex.(*lexer).stack.pop() } - case 350: + case 352: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1162 +//line parser.y:1166 { l := yylex.(*lexer) l.stack.push(l.builder.Grouping(l.stack.peek(), yyDollar[2].token)) @@ -1891,15 +1892,15 @@ yydefault: goto ret1 } } - case 359: + case 361: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1184 +//line parser.y:1188 { yylex.(*lexer).stack.pop() } - case 360: + case 362: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1189 +//line parser.y:1193 { l := yylex.(*lexer) l.stack.push(l.builder.List(l.stack.peek(), yyDollar[2].token)) @@ -1907,9 +1908,9 @@ yydefault: goto ret1 } } - case 364: + case 366: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1206 +//line parser.y:1210 { l := yylex.(*lexer) l.builder.MaxElements(l.stack.peek(), yyDollar[2].num32) @@ -1917,9 +1918,9 @@ yydefault: goto ret1 } } - case 365: + case 367: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1213 +//line parser.y:1217 { l := yylex.(*lexer) l.builder.UnBounded(l.stack.peek(), true) @@ -1927,9 +1928,9 @@ yydefault: goto ret1 } } - case 366: + case 368: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1222 +//line parser.y:1226 { l := yylex.(*lexer) l.builder.MinElements(l.stack.peek(), yyDollar[2].num32) @@ -1937,9 +1938,9 @@ yydefault: goto ret1 } } - case 380: + case 382: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1247 +//line parser.y:1251 { l := yylex.(*lexer) l.builder.OrderedBy(l.stack.peek(), meta.OrderedBySystem) @@ -1947,9 +1948,9 @@ yydefault: goto ret1 } } - case 381: + case 383: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1254 +//line parser.y:1258 { l := yylex.(*lexer) l.builder.OrderedBy(l.stack.peek(), meta.OrderedByUser) @@ -1957,9 +1958,9 @@ yydefault: goto ret1 } } - case 382: + case 384: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1263 +//line parser.y:1267 { l := yylex.(*lexer) l.builder.Key(l.stack.peek(), yyDollar[2].token) @@ -1967,9 +1968,9 @@ yydefault: goto ret1 } } - case 383: + case 385: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1272 +//line parser.y:1276 { l := yylex.(*lexer) l.builder.Unique(l.stack.peek(), yyDollar[2].token) @@ -1977,21 +1978,21 @@ yydefault: goto ret1 } } - case 384: + case 386: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1281 +//line parser.y:1285 { yylex.(*lexer).stack.pop() } - case 385: + case 387: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1284 +//line parser.y:1288 { yylex.(*lexer).stack.pop() } - case 398: + case 400: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1308 +//line parser.y:1312 { l := yylex.(*lexer) l.stack.push(l.builder.Any(l.stack.peek(), yyDollar[2].token)) @@ -1999,9 +2000,9 @@ yydefault: goto ret1 } } - case 399: + case 401: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1315 +//line parser.y:1319 { l := yylex.(*lexer) l.stack.push(l.builder.Any(l.stack.peek(), yyDollar[2].token)) @@ -2009,15 +2010,15 @@ yydefault: goto ret1 } } - case 400: + case 402: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1324 +//line parser.y:1328 { yylex.(*lexer).stack.pop() } - case 401: + case 403: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1329 +//line parser.y:1333 { l := yylex.(*lexer) l.stack.push(l.builder.Leaf(l.stack.peek(), yyDollar[2].token)) @@ -2025,9 +2026,9 @@ yydefault: goto ret1 } } - case 420: + case 422: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1365 +//line parser.y:1369 { l := yylex.(*lexer) l.builder.Mandatory(l.stack.peek(), yyDollar[2].boolean) @@ -2035,21 +2036,21 @@ yydefault: goto ret1 } } - case 421: + case 423: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1374 +//line parser.y:1378 { yyVAL.token = tokenString(yyDollar[1].token) } - case 422: + case 424: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1377 +//line parser.y:1381 { yyVAL.token = yyDollar[1].token + tokenString(yyDollar[3].token) } - case 423: + case 425: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1382 +//line parser.y:1386 { n, err := strconv.ParseInt(yyDollar[1].token, 10, 32) if err != nil || n < 0 { @@ -2058,9 +2059,9 @@ yydefault: } yyVAL.num32 = int(n) } - case 424: + case 426: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1390 +//line parser.y:1394 { s := trimQuotes(yyDollar[1].token) n, err := strconv.ParseInt(s, 10, 32) @@ -2070,21 +2071,21 @@ yydefault: } yyVAL.num32 = int(n) } - case 425: + case 427: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1401 +//line parser.y:1405 { yyVAL.boolean = true } - case 426: + case 428: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1402 +//line parser.y:1406 { yyVAL.boolean = false } - case 427: + case 429: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1405 +//line parser.y:1409 { l := yylex.(*lexer) l.builder.Config(l.stack.peek(), yyDollar[2].boolean) @@ -2092,15 +2093,15 @@ yydefault: goto ret1 } } - case 428: + case 430: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1417 +//line parser.y:1421 { yylex.(*lexer).stack.pop() } - case 429: + case 431: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1422 +//line parser.y:1426 { l := yylex.(*lexer) l.stack.push(l.builder.LeafList(l.stack.peek(), yyDollar[2].token)) @@ -2108,21 +2109,21 @@ yydefault: goto ret1 } } - case 430: + case 432: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1431 +//line parser.y:1435 { yylex.(*lexer).stack.pop() } - case 431: + case 433: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1434 +//line parser.y:1438 { yylex.(*lexer).stack.pop() } - case 432: + case 434: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1439 +//line parser.y:1443 { l := yylex.(*lexer) l.stack.push(l.builder.Bit(l.stack.peek(), yyDollar[2].token)) @@ -2130,9 +2131,9 @@ yydefault: goto ret1 } } - case 440: + case 442: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1458 +//line parser.y:1462 { l := yylex.(*lexer) l.builder.Position(l.stack.peek(), yyDollar[2].num32) @@ -2140,21 +2141,21 @@ yydefault: goto ret1 } } - case 441: + case 443: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1467 +//line parser.y:1471 { yylex.(*lexer).stack.pop() } - case 442: + case 444: yyDollar = yyS[yypt-4 : yypt+1] -//line parser.y:1470 +//line parser.y:1474 { yylex.(*lexer).stack.pop() } - case 443: + case 445: yyDollar = yyS[yypt-2 : yypt+1] -//line parser.y:1475 +//line parser.y:1479 { l := yylex.(*lexer) l.stack.push(l.builder.Enum(l.stack.peek(), trimQuotes(yyDollar[2].token))) @@ -2162,9 +2163,9 @@ yydefault: goto ret1 } } - case 452: + case 454: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1495 +//line parser.y:1499 { l := yylex.(*lexer) l.builder.EnumValue(l.stack.peek(), yyDollar[2].num32) @@ -2172,9 +2173,9 @@ yydefault: goto ret1 } } - case 453: + case 455: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1504 +//line parser.y:1508 { l := yylex.(*lexer) l.builder.Description(l.stack.peek(), yyDollar[2].token) @@ -2182,9 +2183,9 @@ yydefault: goto ret1 } } - case 454: + case 456: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1513 +//line parser.y:1517 { l := yylex.(*lexer) l.builder.Reference(l.stack.peek(), yyDollar[2].token) @@ -2192,9 +2193,9 @@ yydefault: goto ret1 } } - case 455: + case 457: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1522 +//line parser.y:1526 { l := yylex.(*lexer) l.builder.Contact(l.stack.peek(), yyDollar[2].token) @@ -2202,9 +2203,9 @@ yydefault: goto ret1 } } - case 456: + case 458: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1531 +//line parser.y:1535 { l := yylex.(*lexer) l.builder.Organization(l.stack.peek(), yyDollar[2].token) @@ -2212,9 +2213,9 @@ yydefault: goto ret1 } } - case 457: + case 459: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1540 +//line parser.y:1544 { l := yylex.(*lexer) l.builder.YangVersion(l.stack.peek(), yyDollar[2].token) @@ -2222,9 +2223,9 @@ yydefault: goto ret1 } } - case 458: + case 460: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1549 +//line parser.y:1553 { l := yylex.(*lexer) l.builder.Units(l.stack.peek(), yyDollar[2].token) @@ -2232,21 +2233,21 @@ yydefault: goto ret1 } } - case 459: + case 461: yyDollar = yyS[yypt-1 : yypt+1] -//line parser.y:1558 +//line parser.y:1562 { yyVAL.ext = nil } - case 460: + case 462: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1561 +//line parser.y:1565 { yyVAL.ext = yyDollar[2].ext } - case 461: + case 463: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1566 +//line parser.y:1570 { l := yylex.(*lexer) yyVAL.ext = l.builder.Extension(yyDollar[1].token, yyDollar[2].token) @@ -2255,17 +2256,17 @@ yydefault: } l.builder.AddExtension(l.stack.peek(), "", yyVAL.ext) } - case 462: + case 464: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1574 +//line parser.y:1578 { l := yylex.(*lexer) yyVAL.ext = l.stack.pop().(*meta.Extension) l.builder.AddExtension(l.stack.peek(), "", yyDollar[1].ext) } - case 463: + case 465: yyDollar = yyS[yypt-3 : yypt+1] -//line parser.y:1581 +//line parser.y:1585 { l := yylex.(*lexer) yyVAL.ext = l.builder.Extension(yyDollar[1].token, yyDollar[2].token) @@ -2274,9 +2275,9 @@ yydefault: } l.stack.push(yyVAL.ext) } - case 464: + case 466: yyDollar = yyS[yypt-0 : yypt+1] -//line parser.y:1591 +//line parser.y:1595 { yyVAL.token = "" } diff --git a/parser/parser.y b/parser/parser.y index 025c2c0..0ef43cc 100644 --- a/parser/parser.y +++ b/parser/parser.y @@ -260,10 +260,14 @@ revision_stmt : revision_def token_semi { yylex.(*lexer).stack.pop() } - | revision_def token_curly_open revision_body_stmts token_curly_close { + | revision_def token_curly_open optional_revision_body_stmts token_curly_close { yylex.(*lexer).stack.pop() } +optional_revision_body_stmts : + /* empty */ + | revision_body_stmts + revision_body_stmts : revision_body_stmt | revision_body_stmts revision_body_stmt diff --git a/parser/parser_samples_test.go b/parser/parser_samples_test.go index de5d8c4..8be86d9 100644 --- a/parser/parser_samples_test.go +++ b/parser/parser_samples_test.go @@ -70,6 +70,8 @@ var yangTestFiles = []struct { {"/general", "rpc"}, + {"/general", "rev"}, + {"/deviate", "x"}, {"", "turing-machine"}, diff --git a/parser/testdata/general/gold/rev.json b/parser/testdata/general/gold/rev.json new file mode 100644 index 0000000..1fab592 --- /dev/null +++ b/parser/testdata/general/gold/rev.json @@ -0,0 +1,11 @@ +{ +"module":{ + "ident":"rev", + "namespace":"r", + "prefix":"p", + "version":"1", + "revision":{ + "ident":"0000-00-00"}, + "revisions":[ + { + "ident":"0000-00-00"}]}} \ No newline at end of file diff --git a/parser/testdata/general/gold/rev.lex b/parser/testdata/general/gold/rev.lex new file mode 100644 index 0000000..c4e0f4f --- /dev/null +++ b/parser/testdata/general/gold/rev.lex @@ -0,0 +1,14 @@ +module "module" +[ident] "rev" +{ "{" +namespace "namespace" +[string] "\"r\"" +; ";" +prefix "prefix" +[string] "\"p\"" +; ";" +revision "revision" +[string] "0000-00-00" +{ "{" +} "}" +} "}" diff --git a/parser/testdata/general/rev.yang b/parser/testdata/general/rev.yang new file mode 100644 index 0000000..4cdb865 --- /dev/null +++ b/parser/testdata/general/rev.yang @@ -0,0 +1,7 @@ +module rev { + namespace "r"; + prefix "p"; + + revision 0000-00-00 { } + +} \ No newline at end of file