diff options
author | Ton Roosendaal <ton@blender.org> | 2004-10-06 22:55:00 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2004-10-06 22:55:00 +0400 |
commit | d5e0c065bc58a8a6e45a5ffee58fb97f120228e6 (patch) | |
tree | ce4f18cb2b3a010441a5011f8d89065da5699f44 /source/blender/src | |
parent | d5e1d1844a6aba0fc66e456b3fa3e70a9e4e98e1 (diff) |
Version 1.0 of the new Outliner
The outliner is a hierarchical diagram displaying a list of data in Blender
and its dependencies. The 'databrowse' doesn't really show it, and Oops is
too chaotic still. And most of all, the former two don't offer much tools.
After discussions on irc, Matt came with this design proposal;
http://mke3.net/blender/interface/layout/outliner/
Which is closely followed for the implementation.
The current version only shows all 'library data' in Blender (objects,
meshes, ipos, etc) and not the 'direct data' such as vertex groups or NLA.
I decided to make it inside the Oopw window, as an option. You can find the
option in the "View" pulldown, or directly invoke it with ALT+SHIFT+F9
Here's a quick overview of the Outliner GUI:
- Header pulldown has options what it can show (Visible = in current layers)
- click on triangle arrow to open/close
- press AKEY to open/close all
- Leftmouse click on an item activates; and does based on type a couple of
extra things:
- activates a scene
- selects/activates the Object
- enters editmode (if clicked on Mesh, Curve, etc)
- shows the appropriate Shading buttons (Lamp, Material, Texture)
- sets the IpoWindow to the current IPO
- activates the Ipo-channel in an Action
- Selected and Active objects are drawn in its Theme selection color
- SHIFT+click on Object does extend-select
- Press DOTkey to get the current active data in center of view
TODO;
- rightmouse selection; for indicating operations like delete or duplicate
- showing more data types
- icon (re)design...
- lotsof options as described in Matts paper still...
Diffstat (limited to 'source/blender/src')
-rw-r--r-- | source/blender/src/blenderbuttons.c | 2724 | ||||
-rw-r--r-- | source/blender/src/butspace.c | 14 | ||||
-rw-r--r-- | source/blender/src/buttons_editing.c | 2 | ||||
-rw-r--r-- | source/blender/src/buttons_shading.c | 2 | ||||
-rw-r--r-- | source/blender/src/drawipo.c | 24 | ||||
-rw-r--r-- | source/blender/src/drawobject.c | 2 | ||||
-rw-r--r-- | source/blender/src/drawoops.c | 80 | ||||
-rw-r--r-- | source/blender/src/drawview.c | 17 | ||||
-rw-r--r-- | source/blender/src/editaction.c | 5 | ||||
-rw-r--r-- | source/blender/src/editnla.c | 37 | ||||
-rw-r--r-- | source/blender/src/editobject.c | 10 | ||||
-rw-r--r-- | source/blender/src/editscreen.c | 3 | ||||
-rw-r--r-- | source/blender/src/editview.c | 7 | ||||
-rw-r--r-- | source/blender/src/header_info.c | 3 | ||||
-rw-r--r-- | source/blender/src/header_oops.c | 139 | ||||
-rw-r--r-- | source/blender/src/headerbuttons.c | 23 | ||||
-rw-r--r-- | source/blender/src/interface_panel.c | 27 | ||||
-rw-r--r-- | source/blender/src/oops.c | 7 | ||||
-rw-r--r-- | source/blender/src/outliner.c | 1144 | ||||
-rw-r--r-- | source/blender/src/resources.c | 11 | ||||
-rw-r--r-- | source/blender/src/space.c | 416 | ||||
-rw-r--r-- | source/blender/src/toets.c | 4 |
22 files changed, 2935 insertions, 1766 deletions
diff --git a/source/blender/src/blenderbuttons.c b/source/blender/src/blenderbuttons.c index 8af5c9f0b77..a60aaecb4ec 100644 --- a/source/blender/src/blenderbuttons.c +++ b/source/blender/src/blenderbuttons.c @@ -1,1435 +1,1297 @@ /* DataToC output of file <blenderbuttons> */ -int datatoc_blenderbuttons_size= 45738; +int datatoc_blenderbuttons_size= 41326; char datatoc_blenderbuttons[]= { -137, 80, 78, 71, 13, 10, 26, 10, 0, 0, - 0, 13, 73, 72, 68, 82, 0, 0, 2, 0, 0, 0, 1, 0, 8, 6, 0, 0, 0,197,144,206,103, 0, 0, 0, 4,103, 65, 77, 65, 0, - 0,214,216,212, 79, 88, 50, 0, 0, 0, 25,116, 69, 88,116, 83,111,102,116,119, 97,114,101, 0, 65,100,111, 98,101, 32, 73,109, - 97,103,101, 82,101, 97,100,121,113,201,101, 60, 0, 0,178, 60, 73, 68, 65, 84,120,218,236,193, 1, 1, 0, 0, 8,128,160,250, - 63,218,134, 4,108, 53, 0,192, 47, 39,128,152, 70,131, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24,121, 0, 32,128, 70, 27, 0, -163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, 1, 52,218, 0, 24, 5,163, 96, 20,140,130, 81, 48, 10, 70, 32, 0, 8,160, -209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, 2, 1, 64, 0,141, 54, 0, 70,193, 40, 24, 5,163, 96, 20,140,130, 17, 8, - 0, 2,104,180, 1, 48, 10, 70,193, 40, 24, 5,163, 96, 20,140, 64, 0, 16, 64,163, 13,128, 81, 48, 10, 70,193, 40, 24, 5,163, - 96, 4, 2,128, 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, 48, 10, - 70,193, 40, 24,129, 0, 32,128, 70, 27, 0,163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, 1, 52,218, 0, 24, 5,163, 96, - 20,140,130, 81, 48, 10, 70, 32, 0, 8,160,209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, 2, 1, 64, 0,141, 54, 0, 70, -193, 40, 24, 5,163, 96, 20,140,130, 17, 8, 0, 2,136,209, 39,166,118,244, 58,192, 81, 48, 10, 70,193, 40, 24, 5, 35, 6,108, - 94,220,196, 56, 26, 10, 12, 12, 0, 1, 52, 58, 2, 48, 10, 70,193, 40, 24, 5,163, 96, 20,140, 64, 0, 16, 64,163, 13,128, 81, - 48, 10, 70,193, 40, 24, 5,163, 96, 4, 2,128, 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, - 3, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24,129, 0, 32,128, 70, 27, 0,163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, - 1, 52,218, 0, 24, 5,163, 96, 20,140,130, 81, 48, 10, 70, 32, 0, 8,160,209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, - 2, 1, 64, 0,141, 54, 0, 70,193, 40, 24, 5,163, 96, 20,140,130, 17, 8, 0, 2,104,180, 1, 48, 10, 70,193, 40, 24, 5,163, - 96, 20,140, 64, 0, 16, 64,163, 13,128, 81, 48, 10, 70,193, 40, 24, 5,163, 96, 4, 2,128, 0, 26,109, 0,140,130, 81, 48, 10, - 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24,129, 0, 32,128, 88, 8, 41,216,178, -164, 25,133,239, 19, 83, 75, 21,139, 97,230, 82,106, 30,181,221,135,110, 30, 53,253, 76,137,191,177,185,139, 26,238,163, 86,248, -225,115, 31, 53,205, 29,236,233,101, 52,127,140,230,143,209,252, 65,251,252, 49, 10,168, 3, 0, 2,136,137,212, 68, 75, 40, 33, - 19, 50, 15,134,169, 81, 80,208,194,125,228,100, 94,106, 21, 2,244, 6,184,194,111,176,184,147, 30,241, 59,216,204, 27,205, 31, -163,249, 99, 52,127,140, 2,122, 1,128, 0, 98, 33, 70, 17,172,213, 54, 24, 35, 15,189, 69, 9,203,160,228,246, 32,176,153, 55, -152, 10, 55, 90,180,160,145,205, 36,215,157,184,220, 69,174,121,200,250,210,202, 59,192,244,172,206, 10,184, 28,185,241, 11, 51, -139, 82,243,144, 1,186,251, 70,243,199,104,254, 24,205, 31, 67, 35,127,140,116, 0, 16, 64, 76,164,100,120, 74, 27, 2, 32,253, - 48, 76,141, 76, 57, 84,134,147,176,101,174,193,226, 38,244, 48,164,102,184, 82, 99, 24, 27, 57,204,168, 29,126,148,152,135, 45, - 78, 97,236,209,252, 49,154, 63, 70,243, 7,245,243,199, 40,160, 62, 0, 8, 32,150,209, 32,192,221, 66,167, 70, 6,165,118,225, - 54, 84,230,212,168, 53,135, 61, 10, 70,243,199,104,254, 24, 5,163,128, 54, 0, 32,128,134,205, 46, 0,228,185, 57,106, 44, 92, - 25, 42, 25,148,154,243,197,131,169,101, 14, 11,119,228, 97, 67, 24,123,180,208, 28,205, 31,163,249, 99, 52,127,140, 2,202, 1, - 64, 0, 13,139, 17, 0,228,140, 73,237,196, 79,201,252, 23, 45,134, 54,177,205, 71, 82,195,141,212,240, 47,173,122, 55,212,152, - 59, 4,185, 5,228,174,145, 56, 15, 57,154, 63, 70,243,199,104,254, 24, 5,216, 0, 64, 0, 13,249, 17, 0, 90, 20,110,232,243, -124,228,180,252,169, 93,184, 97,155,123,164,230, 92, 49,178,249,131,109,142, 14, 20,134,212, 8, 71, 90,132,223,104,254, 24,222, -249, 3,150,246,144,211,224,104,254, 24, 5,195, 5, 0, 4,208,144, 30, 1,160,101,207, 6,185, 85, 76,139,214, 57, 53,122, 18, -131, 57, 78,168,213, 75, 66, 95, 68, 4, 10, 79, 74,194,110, 36, 21,106,163,249, 99, 52,127,140,230,143, 81,128, 15, 0, 4, 16, -211, 80,207, 72,212, 74,180,131,109,142,111,168,185,111, 20,140,230,143,209,252, 49, 10, 70,193,208, 2, 0, 1,196, 68,168, 37, -136,156,169, 6,227,194, 31, 90,186,133,146, 2, 5,125,104, 29,125,136,146, 90,133,242, 96, 48,131,150, 0,219, 34, 39,106, 85, - 16,148,164,231,161,178, 8,107, 52,127, 80, 47,253,141,230,143,225,151, 63, 70, 58, 0, 8, 32, 22,122,101, 36,122, 23, 66,164, - 38, 50,216,112, 38,173,143, 58,165,133,127,201,205,160,200,139,164,168,225, 95,106, 54, 16,145,221,135, 94,176, 81,243,104, 87, -106, 23,194,163,249, 99,248,229, 15,106,165,191,209,252, 49, 10, 6, 27, 0, 8, 32, 70, 96, 98,249, 63, 26, 12,163, 96, 20,140, -130, 81, 48, 10, 70, 10,216,188,184,137,113, 52, 20, 24, 24, 0, 2,104,244, 54,192, 81, 48, 10, 70,193, 40, 24, 5,163, 96, 4, - 2,128, 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, 48, 10, 70,193, - 40, 24,129, 0, 32,128, 70, 27, 0,163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, 1, 52,218, 0, 24, 5,163, 96, 20,140, -130, 81, 48, 10, 70, 32, 0, 8,160,209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, 2, 1, 64, 0,141, 54, 0, 70,193, 40, - 24, 5,163, 96, 20,140,130, 17, 8, 0, 2,104,180, 1, 48, 10, 70,193, 40, 24, 5,163, 96, 20,140, 64, 0, 16, 64, 40, 39, 1, -250,218,202,144,109,208,230,195, 79, 48,196,176,153,119,255,234,113, 6, 6,166, 31, 12,146, 50,210, 12,159,191,127,101,120,255, -246, 43,131,154,166, 13,217,230, 29, 57,119,151,129,225, 31, 59,195,203,167, 79, 25,184, 57,185, 25, 4,133,184, 25,204, 77, 20, -201, 54,143,218,254,125,250,108, 53, 3, 27,199, 31, 6,118, 14, 22, 6,102, 22,102,134,191, 12,140, 12,124,108,129,100,155, 39, - 32,100,204, 32, 40, 40,200,192,201,201,201,192,192,200,200,112,237,242, 38,162,221,199, 41,125,131,108,255,126,127,170,129, 33, - 38,197,245,146,108,243,158,125, 19,199, 52,239, 39,249,238,123,198,142,233, 62,233, 95, 55,201, 54,239, 41,155,250,144, 51, 79, - 27, 79,252,118,118,174,102, 40, 47, 15,197, 41,127, 21, 75,252,114,202,252, 34, 63,189, 60, 97,195, 76,207,210,228,167,151,205, - 79, 49,211,203,143,159,220,100,155,199,193,254, 21,211, 14,191, 41,100,155,231,187, 41, 7, 67,172,248,197, 12,178,205,235,149, -200, 24,144,242,106, 48,153, 55, 10,104, 15, 0, 2,176,115,254, 46, 9, 69, 81, 28,255,248, 52,239,243,249, 30,254, 28, 42,136, -220, 10,151,254, 0, 41, 8,140,166,218,154,155,178,161,205,161,169,161,160,161,181,182, 92, 66,131,168, 57, 40, 16,130,150,218, - 34, 3, 35, 18, 41,138,106,104,232,151,229, 83,178,103,215, 57, 68,165, 33, 9,191,227,225,242,189,247,158,123,190,231,123,166, -219,212, 87,192, 51,135,113,108,163,211, 36,170, 67, 45,111,112,149, 77, 75,203,179,208,133,139,141,245, 45,146,201, 85, 34,209, - 8,149,143, 34,225,193, 17, 44, 11,230,230,191, 8,135, 7,200,231,111, 40,153, 21,140,158, 72, 93,190,163,211, 71,170,146,241, -189,108, 50, 27, 95,102,105,109,156,135,243,147,154,164,217, 59,187, 67, 81, 96,117,113,129, 92,238,146, 80,168, 31,225,114, 16, -240,137,186,124, 23,187,251, 8, 33,208, 52, 13,195, 48,240,122,189, 4,252, 1,252,126, 31, 30,143, 23,221,237,150,198,237,144, -231,252,194, 52, 77, 10,111, 5, 50,197,215,134,247,206,231,118,164,233,155,232,134,138,170, 9, 28, 78, 59, 54,197,134, 34,135, -128,170, 61,205,103,197,134,179, 50,214,116, 30,175,111, 21,130,193, 32,170,187, 68,185, 92, 66,177, 43, 53,255,167,183,111,152, -151,151,103,138,133,236,159, 21, 81, 34,145, 32, 22,139,117,212,212, 6,104,100,244,191, 93, 95, 67,183, 75,227, 94, 14,220, 93, -170,192,146,186,105, 55, 20,159, 50, 28, 31,108,255,136, 71,167, 86,254,205, 59,111,166, 82, 8,167, 83,246, 37, 11,183,174, 51, - 49, 57,217, 41,254, 14, 90,198,183, 0, 34,250, 58,224,255,123, 23, 50,164, 57,147,214, 8, 8,245, 83, 97,248,233, 36,196,240, -251,203, 7, 6,150,191, 76, 12,102,122, 50, 12,241,241,249,112,121, 80,101,125,226,248, 2, 6, 17, 57,105,134,127, 95, 62, 49, -216,155,235, 50, 60,123,246,158, 97,207,249, 63, 88,205, 75, 79,111, 99, 96, 96,227,103, 96,228,226, 3, 86,162,255, 25, 46, 94, - 75,100,152,183, 98, 39, 92, 30,212,152,240,176,180,100, 96,248,242, 2,200,227,101,184,123,249, 58, 3,171,136, 0,131,181,133, - 14, 3,143,128, 24, 78,119, 50,130, 32,176, 54,101, 98,100, 98, 96,102, 98,102, 96, 1, 86,210, 44,172,172, 12,172, 64, 12,162, - 89,128, 13,128, 63,192, 10,155, 9, 40, 7, 82, 71, 8, 92, 60, 63, 11,216,120, 96, 97,224, 5,102, 76, 81, 49, 97, 96, 35,128, -139,225,239,255,191,192, 30,203,119,134,223,127,255, 50,112,241,112, 1,197, 37, 25,254,254,123,192,240,248,134, 2, 94,179,118, -236,190, 5,108,152,240, 0, 27, 38,130, 12,223,190,113, 2, 49, 23, 3, 7,176,224,101,132, 78,222,128, 26, 37,223,190,125, 99, -120,243,158,143,225,205,155, 55, 12,111,223,188,100,176,182,148,197,107,230,106, 96,161, 79, 44,112, 73,112, 97, 16, 20, 23,196, - 91,249,211,163, 17, 80,213,221, 13,166,219, 74, 75,169, 98, 94,101, 87, 23,152,110, 47, 43, 35,219,140, 43,192, 74,240,214,173, - 91, 96,118,144,163, 35, 89,102,204, 92,181, 10,146, 6,145,210,213,255,255,255,193,124, 24, 13, 19,131,169, 75, 11,197, 93, 97, -131, 42,115, 98, 43,117, 82, 43,127, 69, 65, 33,134,239,191,126,130,217,108,156, 28, 12,191,190,255, 96,248, 7,108,200,191,121, -241,156, 65, 82, 87,151, 40, 51, 36,149,213, 72, 10, 31,126,121, 77,134, 27,251, 54,146,164, 7, 84,249,219,184, 68, 48,112, 8, - 26,144, 30, 33,161,239, 72, 82, 30, 22, 22,198,176, 42,116, 15, 94, 53,142,123, 94,163,240,181, 4, 32,197,238,171, 31,255, 24, -190,255,129,196,235, 87, 40, 61,211, 92,128, 65,141,151, 21,175,121, 61, 61, 61, 12, 85, 5, 37, 12,254, 65,129, 12, 63,126,124, -103,152,216,223,199, 48,101,202, 20,134,156,156,156,209, 26,109, 20,144, 4, 0, 2,136,168, 6,192,108,135, 62,134,224, 19,173, - 12,255,142,109,101, 72,179, 98, 32,186, 17,240,243,203, 59, 6, 9, 21,103,134,150,210, 32,134, 5, 51, 15,192,197, 15, 30,155, -193,240,245,219, 79, 6, 47,151,124, 6, 43,235, 4,134,136, 48, 39, 6, 78, 78,118,134, 95,127,255, 48,124,254,246,139, 65,205, - 34, 10,135,137, 15, 25, 24,126, 1, 11,219,232,233, 12,169, 69,136, 33, 50, 15, 43, 7,112,165,184, 97,223, 78,134,109, 71,143, - 51, 44,154, 63,141,225,199,247,159, 12,108,204, 44, 12, 60, 92,108, 12,124,108,127, 25,238, 60,122,129,189, 97, 3,204,119,255, - 65, 16, 78, 67,217,255, 32,236,127,255,255, 49,252, 5, 86,218, 32,252,231,207, 31, 48,198, 7, 78, 30,159,197, 32, 38,202, 12, -172,180,185, 25,100,101,229, 24,212, 53, 85, 25,120,128, 21,254,187, 15,111, 25,158, 1, 11,202,215,111,223, 48,252, 3,102,118, -110, 46,110, 6,117, 53, 45, 6,126,129, 71, 12, 87, 78,240, 96, 53,107,211,134, 83, 12, 12, 44,236, 12,223, 89,152, 24,216,216, -217,128, 21, 61, 7,184, 17, 0,110, 0, 48,254, 7, 55, 93, 64,149,255,183,111, 95,128,248, 43,195, 87, 96, 35,234,237,235,103, - 12, 75, 22,156, 99,224, 87, 54,198,235,206,238, 69,221, 4,227,175, 52, 14,127,101,251,254,253,123, 12,190,144,144, 16,188,242, - 2, 77, 85,220,189,123,151, 97,245,234,213, 20, 53, 14,216,196, 17,195,191, 32, 27, 5,169, 57,122, 1,116, 91,118,118, 54,195, -239, 87,175, 72,174,252,197,196,196, 24,130,220,220, 24,126,179,179, 51,244,246,246, 50, 4, 59, 57,193, 43,106, 98, 1, 40,172, -122, 26, 26,224,252,226,250,122,134,222,198, 70,188,124, 66, 0,189, 17, 0, 98, 27, 27, 27, 51,236,217,115,143,193,197, 69,137, -172,202, 95, 67, 66,146, 65,128,143, 15,222, 24,225,230,224,100,120,254,250, 21,195,167,247, 31,128,141,107, 65,134,135,167,207, - 48,200,155,154, 16,101,150, 95, 90, 9, 67, 76,176, 47,131,170, 2,162,241, 91,223, 59, 25, 69, 77, 99,113, 46,152,126,180,125, - 47,131,153,154, 44,201,241, 74, 86,229, 15,111, 33, 11,145,160,216,133, 36,163,185, 89, 24, 25, 46, 54, 38, 51, 48,242,137, 48, -252,189,119,145,225,231,189,171, 12,183,222,125,101, 48,217, 78, 92,250,155, 49,115, 38, 67, 81,122, 54, 67, 92, 74, 18,195,234, -165, 43, 24, 20,128, 97,216,210,217,197,192,219,208,194,176, 97,195, 6,134,128,128,128, 97, 93, 97, 81,235,226,178, 81, 0, 1, - 0, 1,132,181, 1,144,118,123, 26, 82, 13, 9,174,103,128, 21,226, 23, 96,229,251,147,225,247,129,101, 12,105, 14, 12, 36,140, - 4,176, 49,104,105,170, 3,123,207, 7, 24,110, 1, 43, 65, 6,134,235, 12, 31,159,222, 6, 15, 31,110,220, 58,137,225,219,155, -191, 12,209,137,133,224,222,187,159,175, 37,195, 95, 22, 30,130, 38,222,186,117, 29,172,222, 75, 31,212, 59,146, 2, 98,121, 96, -239,250, 23, 67,136,135, 27, 3,135, 0, 19,195,162,101, 59,192,163, 11,107, 86, 44, 96, 96,254,243,153, 65, 83,158, 29,216, 0, -192, 49,178, 1,170,228,129,134,129, 48,184,146, 7, 54, 66,126,253,254,197,240,243,231, 79,134,239,192,214, 53,120,100, 0,104, -216,159, 63,191, 33,149, 45,176,199,205,128,103,233, 36, 63,223,127,240,200,129,144,144, 48,131,138,178, 42,131,154,138, 6, 3, - 19, 51, 35,208,220,127, 12,175, 94,191, 99,248,249,227, 55,176,231,255,149,225,245,203, 55, 12, 50,210,223, 25, 52, 84, 53, 24, -206,157,223, 0, 26, 88,197, 48,139,157, 9,216, 8,249,247,157,225,247,183, 63, 12, 95,153, 65,243,150,108,224,202,159,149, 21, - 52, 37,241, 7,236,182,175, 64, 55,189,122,249,140,225,234,165, 51, 12,111, 95, 61, 3, 79, 85, 48, 49,146,183,182,115,222,244, -121,112,118, 82,102, 18,225,114,114,245,106, 12,126, 81, 81, 17,195,163, 71,143,192,110,155, 9, 44,172,168, 1,166, 78,157,202, -240,242,229, 75,134, 53,107,214, 48,120,219,217, 49, 8,138,137, 81,108, 38,168,231,255, 30, 26,255,160,222, 19,120,132, 9,216, -155, 35, 22,128,122,254,160,202, 31,156,194,217,216, 24,212,212,212, 24,214,238,219, 71,242,104, 0,169, 13, 6, 98, 1,168,114, - 7, 85,248,103,207,158, 5,243,145,233,208,208, 80,146, 42,127, 53, 49,113,112,229,207, 12,204, 7, 89, 49,209,192,124,241,147, -161,119,238, 92, 6, 46, 78, 78, 96, 15,244, 7,176,177,253, 29, 60,181,245,248,252,121, 6, 89, 67, 67,130,230,193, 42,247,219, - 15, 30, 96,136, 81, 3,152, 59, 69, 48,236, 89, 93,193,224,234,151,204,240,159, 93,149, 44, 51, 24,195, 16,141,219,255,171, 4, - 9,138, 19, 2,160, 94,255,195, 47,127, 25, 14,186,138, 50,176,230,207,100,248, 20,173,200,192, 34, 40, 70, 82,229,191,119,239, - 94, 6, 5, 73, 41,134,148,172, 12,134,138,194, 50,134, 41,243,103, 48,152, 25, 25, 49,204,152, 60,131,161,160,172,132, 97,169, -165, 57,195,229,203,151, 25,116,137, 28,141, 25,234,149, 63, 76,108,180, 17, 64, 62, 0, 8,192,222,217,180,180, 17, 69, 97,248, -141,215,160, 70, 52, 56, 82, 45,126,208,157,110, 68,130, 27,133, 16,162, 32, 46,164,184,144,116,171,104,169,249, 9,226, 94,186, - 12,226,162, 42,146, 72,192,238,154,141, 85, 17, 90, 17, 23,118,167, 11,145,130, 32,148,226, 7, 38,118,140,154,143,105, 38, 97, -226, 57,183, 78, 45, 68,209, 72, 16, 41, 94, 72, 50, 16,114, 51,225,146,121,158,247,156, 11,147, 35, 0,239,190,141, 33, 41, 74, - 97, 16,176, 12, 11, 37,217, 44, 1, 47,253,155, 28,128, 8, 84,223, 4,171,158, 64,246,107, 0, 35,221,195,247,148, 0, 3, 66, -136,171, 99, 78, 16, 13,176,215, 55,227,231,238, 39, 76,205,204,161, 40,101, 67, 79,151, 19, 43,171, 27, 4, 88,192,166,216,111, -157,169,204,214, 12, 45,185, 43, 65,125, 61, 56,217, 31, 17,100, 59, 49, 48,248, 22, 70, 73, 2,139, 75, 1,146,137, 97, 80,200, - 70, 82,141,222, 8,215,191,103, 39, 19,190, 33,147,125, 58,157, 38, 64,167,232, 60, 52, 9,113, 22, 31, 93,215, 37, 80,249,125, - 22,128,120,156, 68,200,126,115,223,115,125,109, 6, 47,107, 45,176,208,133,178, 88, 88, 9,244, 89,156,170,231,208, 51, 58,194, -199, 42,206,162, 49, 36, 19, 58,160,101, 8,212,199, 16,197, 59,168,107,120,133,114,222,208,119,219,133,136,159,232,243, 90,244, - 4, 17, 45, 14,131,214, 66,176, 80,144,144, 68,194,135,248,190,189,137,240,209,190, 4, 9,183, 40, 88, 86, 96,121,156, 27, 93, -153,169,158,203,255, 30,143, 7, 14,135, 67,238,167,240,249,124, 5,251, 14, 51,253,119,180,180,160,150,142, 25,214,175,221,110, -212, 21, 64, 2,170,174,160,111,165,185,120, 94,126,205,167, 18,192,201,223, 74,162, 24, 10,133,114,170, 1, 15,109, 9, 20,114, -152,208,255, 87,196,188, 94,175, 20,181,124, 4,128, 37,243,133,162, 96,136,214,248,236,252, 2, 39,167,170,148, 80,110,141,241, -131,255, 43, 37,101, 54, 92,168,191, 16,219, 63, 64, 69,227,221,155,193, 24,254,243,161,207, 57, 2, 96, 86, 2,218,219, 90,209, -219,229,206,243, 23,199,192,173,191,138,106, 7,186,251,202,241,101,193,255, 39,163, 63,129,222,255,118,112, 2,169,149, 57,212, -204,110, 73, 25, 16,149, 10, 50,209,136,132, 63, 87, 5,184, 5, 32,238,240,246, 31,123,123, 88, 94, 88, 66,112, 54,136, 73,255, - 7, 76,251, 38,160, 84, 43, 24,127, 63, 78,161,231, 35, 92, 29, 78, 4,252, 1,244,191,233,135,203,233,250, 47,225, 63, 50,122, -189,150,230,109,134,159, 37,224,225,227, 82, 0,118,173,223,165,141, 48, 12, 63,137,209, 72, 65,145, 38, 14, 46, 74, 7,205, 42, - 58,168, 73,151,254, 5,197,191,192, 73,135, 58, 20,138, 52,163, 58,117,172, 8, 78,173, 91,177,198,193,128, 80, 16,132,186, 20, - 49,209,180,233,149,134, 96, 98, 2,213, 24, 80, 46, 23, 79,107,114,167,177,190,239, 23, 46, 94, 45, 73,174, 82, 40,136,207,144, -187,203,193,119, 9,223,123,239,243,227,251,254, 40,185, 55,222, 87,120, 55, 48,137, 5,239, 52, 90,125,195,194,245,219, 30,118, - 0, 47, 3,216, 26, 93, 38,155,254,140, 40,157,200,241,211,123,140,217,191,213, 28,124,229, 35,175,167,169,120, 58,242, 92, 56, -118, 32, 39, 94, 80,106,157,232,242,244,145,163,117,160,116,161,225,151, 94,142,213,121, 19,158,156, 83,170,142, 55,243,250,133, - 56,198, 54,231,133,195, 55, 4,134,248, 44,124, 71, 81, 59, 71, 67, 99, 51,108, 77,229, 53,180, 19, 85,133,203,229,170, 45, 79, -132,251, 47, 9, 66,213, 52, 93,184,126, 38,249, 99,106,116,121, 37, 79, 4,158,131, 44,203,244,187,100, 40,121, 5,199,106,245, - 13,128, 78,167, 46,196,132, 78,255, 71,201,171, 72, 38,211,216,142, 68, 17, 14,127, 65, 60,190,139,131,204, 17,141,173,225,244, -164,136,163, 67, 5,177, 88, 2,161, 80, 4,153, 76,245,221,209,102,127,168, 23,206,144, 73, 39, 32,133, 55, 16, 12,204, 99,117, -101, 17,251, 63, 82, 36, 52, 74,101,210,183,153, 68,131, 69,212,139,249,235, 42, 72,199,181,134,228,200,159,231,208,239,247,255, -179, 2,101,247,207,226,130,241,168,189,221,210, 30,140,191,133, 65,250, 70, 18, 80, 15, 28,255, 51,152,232, 19,217,172, 32,254, -199,189,229,200, 89,146, 36,113, 92, 94, 95,183,252,124,142,245, 39,166,166, 42,241,190,113,110, 92, 27,231, 86,226,127, 3,236, -254,111,146,191,249,218,184, 95, 15,109, 52,191, 69,234, 1, 44,226,227,169, 93,164,246,247, 16,138,126,165, 26, 63,135,157, 42, -141,231,159,231,228,146, 68,121,225,231, 25,214,150, 2,150,198, 53,147, 63, 47, 7,220, 68,232,179,244, 91, 66, 96, 13, 45,166, -151,177,187, 66,252,156, 6, 52, 94, 36,254,111,167,205,101,209,212,217,131,195,113,175, 16, 3, 14,119, 71,229, 22,127,231,110, -182,163,213, 81,187,182, 61,221, 30, 60, 32, 87, 51,251,118, 14, 79, 72, 4, 15, 12, 13,146, 40, 72, 35,158,220, 97, 39, 67,253, -212, 9, 95,191, 15, 31, 72, 36, 4,131,193, 59, 79, 94,102, 49,112,143,219,225, 74, 0,225, 92, 3,144,198,120,145,225,255,193, -101, 12,140,204, 64, 37,185,115, 25,242, 31, 72, 50, 76,234, 91, 8,204, 99, 60, 12,211,107,111, 50,164,182,169, 51, 48,239,153, -197,144, 38,171,201, 48, 75, 53, 11, 50,244,204,196,140, 97,142, 10,159, 12,195,149, 75,235,144,218, 27, 95,193, 13, 0, 48,254, -253,147,129,229, 31,176,215, 10,173,196,215,111,216, 5,166,173, 61,113, 15,197,238,184,252,159,193,195, 80, 7,173,143, 12,242, - 6,176,210, 7, 86,254,127, 24,255, 2, 77,131,100,164,240,232, 60, 48,253,240,216, 44,188, 13,128, 63,192,194,139,233,247, 31, -160,251,127, 66,122,208, 64,253,127,255,254, 1,175,182,103, 97, 97, 5,215,173,160, 81, 7,208,104, 0,104,132,128, 93, 86, 18, -171, 89,224,202,255, 55,208, 47,223,127, 49,188,121,243,158,225,219, 55, 80,193,201, 2, 46, 44,127, 2,245,254,254,251, 27, 60, -226,240, 31,100, 32,211,111,134,207, 95,126, 49,188,126,253,153,225,235,119, 80, 3, 72,141, 64,245,143, 96,255, 4, 54, 82, 62, -126,120, 7, 93,148, 8, 93,196, 72, 65, 34,184,249,240, 38,131,186,188, 58, 81,195,254, 40,163, 19, 64,203, 57,145, 70, 47, 64, -149,193,189,123,247, 24, 58, 59, 59,161,195,208,229, 12,252,252,252,192,198,212, 71,134, 15, 31, 62,144, 60,220, 13,235,253, 75, - 72, 32, 70,112, 64, 11,157, 38, 79,158, 76,181, 81, 0,100,115,137,105, 0, 32,207,253, 51, 2, 27, 59, 32,191,150,149,149,129, -123,193,191,223,191, 7,251,183, 2,104, 22, 41, 35, 1,232,115,252,132,214, 4,224, 2,157, 36, 44,238, 4,141, 14,192, 70, 8, - 64, 0, 87, 15,234,253,187,119, 12, 60, 64,127,190, 1,250,109,255,201,147, 12, 44,192, 52,247,243,247,111,240, 84, 24, 40,239, -192,214,123,252,249,253, 11,216, 87,248, 73,116, 28,227, 26,242, 7,137,195, 70, 1, 64,107, 4, 30,221,187, 67, 81,188,130, 26, - 1, 95, 95,159,100,216,190,126, 46, 85, 70, 2, 72, 25,246, 71, 6, 23, 86,205,102, 48,136, 47,100, 96, 87,212, 3,243,255,188, -121, 14, 30,254, 7,183, 85, 44,125, 24, 30, 1,203, 27,174, 41, 39,241,154,241, 9,216,161, 97,231,228, 96, 80, 81, 84,100,184, - 15,108,136,189,125,253,150, 33, 60, 38,154, 97,219,222,221, 12, 19, 59,122, 25,214,111,219,196,160,170,168,202, 16, 23, 28,203, -112,252,220, 81,134,245,107,215, 50, 4, 6, 7,143,214,114,163, 0, 39, 0, 8,192,190,185,188, 36, 16, 69, 97,252, 27,200,222, -132, 84,174, 34, 19,139,118,109,218,244, 64,202,157,129, 72,255, 70,127, 68, 66, 68,203,160,104,213,174,135, 61, 54, 21,110, 52, - 36,140,194, 32, 8, 34, 90,180, 8,164,192, 16,194, 50, 34, 43,167,113, 70, 59,231,218,200, 32, 99, 73, 69,171,206,202,185, 92, -102,198,153,185,243,253,206,249,206,212, 84, 20,255,253,101, 78,105,129, 86, 59, 94, 59, 7,176, 48,179, 72, 10, 71, 15,236,237, - 19, 38, 55, 15, 49, 49, 62, 65,104,189,130,196,237, 29,173, 84, 18, 82, 77, 53, 5,128, 56, 61,180,189,214, 22, 80,162,143,248, -193, 26,122,220, 30, 26, 45,206,203,145, 48, 90, 72,254,159,229, 98,103,241,152,187, 31, 13,109, 29,159,158,240, 88,159,132,240, -121,129,181,158,136,218, 3, 37, 17, 43, 85, 1, 44,181,117,132, 21, 50,154,105,145,136, 10, 68,120, 19,217,244, 13, 6,187,173, -159, 0, 64,161,232,253, 75,124,254, 82, 9, 10, 88,236,185,195, 94,207,112, 5, 40,168,170, 24,183, 85,216,151, 44,171, 31,229, -249, 60,193,131,134, 76, 38, 43, 26, 10,121, 59,151,211, 4,255,176, 87, 10, 58, 78, 65,188, 56,105,110,254, 5, 89, 89,171,238, -229, 99,228, 0, 73,175,244, 27, 51,127,125,176, 58, 28,248,105,246,207,209,104,248, 12,172, 92,252,157, 78, 39, 93,131,140,184, -110,186, 80,124, 39,251,119,180,183,151,198,248,183,244, 71, 22,135, 89, 24,189,255, 2,253, 55,191,223,143,183,116, 90, 32,173, - 0,222, 15, 88, 97,107,192,231,243, 33,153, 74,161,227,143, 62,149, 51,150,245,141,254,191, 89,112, 83,160,222, 16,200,113,145, - 52,159,167,190, 41,120, 84, 30,132,215,111, 37,184,169,231, 53, 70,107,157,239,165, 14,197,108,157,229, 85,173,234,251,203,153, -189,177, 1,176,220, 14, 40,111, 16,252,105, 52,217, 6, 56,189,248,149,125,125,183, 7, 96,116,239, 14, 41,199,150,168, 2, 72, - 4, 1, 93, 75,103,184,151,243,162,252,175, 28, 5,113,121,117,253,165,115,151, 85, 21,156, 30,159, 96,126,118, 14,195,110, 23, - 38,167,167, 16,217,141, 96,125, 53,128,161, 17, 23, 58, 29,118,212, 52, 90, 16,141, 69,177,177, 18,192, 78,112, 27,161, 80, 8, - 94,175,247, 95,233,254,195, 52,222, 5, 96,231,106, 94, 33,136,195,240, 35, 66,173,175,104, 19, 73, 92,148, 18, 41, 23, 23,185, -144, 36, 78,108,142, 14, 14, 14,146,219,198,127,224,232,127,240,177,229, 32, 89, 81, 98,217,164,144,156,212,106, 21, 18, 34,118, - 62,118,118,198, 90,187,222,247, 55, 59, 26,100,119,113, 80,242,212,123,152,217,153,217,221,102,127,251,188,207,243,190,239,124, - 40, 1,176,173,159,240,207, 0, 68,162,103, 10,215,171,101,228,197, 35,104,108,160, 63,139,251, 8, 16,141,161,189,169,206,156, -185,227,122,116, 86,210,130,143,127, 70, 98, 18, 78,164, 11,110,102, 71, 87,239, 56,102,167, 57, 11,167,235,146, 58,126,214,129, -197,205, 35,172,239, 31,139, 35,171,170,107, 77,130, 76, 3,110,254,163,183,198,146,119, 21, 45,157,163,166,250,167,200, 38, 49, - 58,208,211,143,238,182, 62,113,220,229,249, 41, 18, 79,169,201, 53,145,136, 39, 93,128,152, 80,233, 6,169,126, 93,143, 64,211, -194,130,188, 88,189, 42,178, 66,217,183, 42, 74, 3,220, 7,240, 25, 52, 45, 78,231,198, 68,104, 90,148,206, 55,160, 80, 18,160, -134, 13, 97,253, 43,178, 65,251, 30,161, 42,102,200, 50,133,164, 35, 20,210, 83,125, 64, 27,241,139, 57, 5,177,207,212,252, 89, -118, 57,254,234,135,124, 5,245,173,245,216, 89,217,193,218,198,218,107, 82,192,142, 64, 38, 96, 91, 56,199,118,191,166,146,163, -117,110,183, 91,144,191,229, 18,152, 95,227,123,234,191,188,252,227, 3, 96,184,107,223,187,189,141,171, 47,118,238,167, 2,171, -255, 76, 19, 11, 86,247, 22, 60, 30, 15,130, 55,230,132,201,178,207,247,230,181, 64, 32, 0,167,211,249, 43, 11,219, 34,119,174, -249,219, 97,109,219,201, 63,101,130, 87, 84, 40,236,125,229, 33,100,142,153, 74, 33,209, 19,192,161,210,122,208,104,109,168,146, - 4,131,214, 76,148,146, 4, 78, 4,210,225, 61,185,219,201,223,218,126, 63, 21,144, 41,194,164,246,217,242,183,131,159, 11,240, -219,184,118,213, 8,210,103,242,127,220, 90,192,249, 80,179, 32,127,127,135, 19, 49,249, 14, 45,171,183, 72, 83, 1, 16,201,240, -240,216, 8,130,244,187,218,245,249, 81, 92, 88,140, 65,215, 32, 74,202, 74,113,184,119,128,130,220,124, 56, 28, 14, 84,212, 84, - 98,110,126, 14,238,201, 9,132,233,222,252, 5, 88, 14, 21,215,253,237,241,143,159,225, 69, 0,118,174,237,149,161, 56,142,127, -218, 9,203,139,100,137, 55, 43,181, 69,194,131, 7, 94, 36,138,198,202,131, 7,182, 23, 74, 60,224, 63,192, 11, 15, 74,188,241, - 44, 45,143,174, 15,228, 18, 37,164, 92,178, 23,183,194,120,144, 75,174,155,251,204,239,251, 61,206,156, 49,118, 38, 41,229, 83, -167,118,218, 58,173,179,181,207,229,251,249, 46, 32, 1,168,217,234,134,239,100, 15,119,194, 94, 79, 30, 71, 51,153, 36, 93, 28, - 66,234,111,197,104,109, 11,218, 83,146,145, 24,171, 71,131, 89, 48,109,215,170, 32,215, 7, 28, 72, 9, 31,211,234, 0, 80,171, -223,205,143,214,156, 35, 72,207,176,162,185,177, 23, 67,253,157, 24,159, 94, 71, 94,118,170, 32,145, 40, 76,204,174,192, 71,113, -185,215,171,249,205, 23,101,154, 49,182,188, 1,116,180,161,204,106, 65, 73,137, 85, 16,217, 0,158,132, 58, 40, 46,172,128,206, -251,136, 8,233,107, 65, 65, 9,128,146, 32,240, 10,224,179,188, 21, 32,241, 72, 64, 39,167, 2,228, 94,121, 45, 80, 22, 11,159, - 10,128,155, 72,241, 82, 42, 16,202,127,250, 3,222, 48, 0,188,156, 30,208, 33,136, 91,122,146,175, 7,114,255,164,167,158, 57, - 1,136,142, 13,233,253, 63,156,113,252, 31,204,241,107,224, 49, 34,122, 34,127,191, 99,236,153,228,131, 64,130, 0, 22,109,159, -129,124,255,192, 13,125,229, 71,202,104, 52,250, 83, 19,114,135,148, 0,132, 35, 0,136,252, 21,247,111,252, 5, 2,141,120, 29, - 37, 20,231,134, 46,157,229,164,165,113,180, 79,238,158, 8,158, 18,129,210, 2,121, 21,204,100, 50, 5, 60,231,114,185, 96, 16, -130, 32, 65,149, 96, 4, 3,197,250,234,132,132, 58, 0,234,251, 21,206,236, 95, 13,106,251, 83,225,143, 72,159,102,255, 10,249, -147,251,215,138,243,211, 75,250,166, 10,167,127,143,187,163, 27, 68,234,245,156,138, 41, 9,192,173, 16, 1,247, 30, 15,111,205, - 16,217, 20,217,237, 33,175,169,144,187, 50, 6,160,194, 31,205,252,213, 8,214, 11, 8,133,107, 65,254,139, 51, 3,200,183,148, -191, 9,130,203,109,108, 58,231,126,196,245,127, 55,254,231,228,232,204,131,253,234, 44,248,118,157, 92, 4,164,210, 31,109, 2, -196,244,237,226,170, 42,142,201, 95,167, 65,128,214,213,215,163,169,173, 21,241,113, 6, 60, 10,211,181,125,176, 3,123,133, 13, -189, 14, 7,134, 6,135, 97,179,219,120, 76, 57,187, 52, 47,140,136, 27, 53,149,149,152, 90, 88,192, 87, 69,232,191, 36, 2,212, -155, 0,239,207,255, 17, 62, 94, 4, 16, 74, 3, 96,150, 90, 22,131,195,215,153, 12,183,158,188,103,120,238, 11,109, 93,157,172, - 96,248,191,101, 58,131,212,203,251, 12,253,246, 65,192, 14,253, 59, 6,134,182, 5, 12,255,159,222, 96,248,203,201, 13,228, 66, - 6, 63, 25,153,176, 47, 97, 61,120, 96, 35,131,189,131, 51,164,130,252,247,155,225,206, 7,208,126,188,191, 12, 42,124,138, 12, -142,142,122, 12,226, 34, 18, 12,111,129,189, 8,240, 88,193,175, 63, 12,207, 63,124,101,208,196,227, 96, 25, 57, 75,134, 39,143, -142, 67,115, 38, 11,131,135, 62,100, 13,192,142,203,191, 25,118,110, 89,195,240,242,205, 51, 6, 97, 1,200, 78, 2, 1, 54, 86, - 6, 73, 1,252,219, 10, 65, 61,106, 72,157,254, 15,122, 6, 0,164, 1,240,151,233, 47,184, 18, 7, 21,204,140, 12,208,243, 2, -254, 67, 26, 1,184, 64,100, 84, 62,195,226, 69,141, 12, 28,160, 99,127,153, 25,225, 21,228,191,191,255, 25,254, 0,241,239,223, -192, 70, 0,168,194, 4, 45,154, 2,175, 51,248,207,240, 19, 40,150,159,217,136,245, 40,204,255,104,238, 68, 22, 64,174,248,225, - 44, 18, 22, 1, 34, 87,254,216,248,224, 70, 0, 1, 0,170, 0, 64, 5, 63,168,162,134, 53, 0, 64, 52, 8,131,196,148,149,149, -193,238,156, 56,113, 34,120, 84,224,221, 59,226, 14, 89, 41, 41, 41, 1,227, 29, 59,118, 48,124,125,137,185, 64, 18,212, 40,184, -127,255, 62,152, 77,204,193, 64,184, 14,253, 1, 85,252,160,134, 6, 40, 94, 65,107, 10,164,137, 88, 83, 0,170,204,173,244,244, - 24,222, 62,120, 0,174,220,111, 49, 32,118, 3,168, 74, 74,130,183, 65, 30, 61,122, 20,188, 45, 80, 71, 90,154,112,229,130,229, - 28, 0,114,215, 0, 32, 3,216, 62,127, 16,190,119, 15,209,243, 71, 62, 27,128,152,157, 0, 60,210, 98, 12,223,159,191, 0,247, -236,191,126,252,200,240,241,205,107,160,155,153,192,249, 0, 52, 45, 0,203, 51,247,175, 93,103,248, 13,108, 36, 16,179, 3, 0, - 99, 68,207,209, 30,140,145, 23,253,145, 58, 5,240,229,205, 41,112,229, 15,118, 51,176, 23,188, 17,109, 20,192,196, 54,112, 64, - 11, 90,208,106,255, 51,158, 12, 12, 6,198, 46,224, 69,127, 18,211,142,129, 27, 5,130,108,140,224,133,207, 44,192,116,192, 66, -228,240, 93, 92, 92, 28, 10,127,243,230,205, 12, 94,222,158, 12, 91, 54,109, 97, 88,181,106, 21, 67, 67,117, 45,195,174, 3,123, -193, 71,143, 75,203, 72,131, 71, 49, 25,216, 36,134, 69,133, 53,186,218,159,186, 0, 32,128, 48,214, 0, 28, 48, 4, 22, 20, 72, - 91,121,183,188, 18, 96,240, 17, 5,246, 78,206,108, 99,248,127,124, 19,100,164, 25,216, 11,248,193,197,203,176, 91,192,129,225, -133,165, 11,116, 56, 24,251,233, 85, 55,111,253, 98, 56,114,162, 13, 82, 25, 50,115,192, 6,143, 25,238,124,122,206, 80,151,147, - 4, 94, 40,247,233, 59,100, 13,192, 47, 38,118, 6, 39,143, 16,188, 14,174,173, 78, 96,216,177, 21,122,224,200, 95,216, 89,229, -127,192,107, 3, 34,178,250, 24,184,184,216, 25,248,160,107, 0, 88,255,253, 96,144, 22, 37, 80,168,131, 10, 48, 70, 72, 69, 13, -235,133,253, 99, 4, 86,207,255, 24,225, 39, 4, 66, 90, 0,208,106,152, 64, 71, 22,116, 80,207,247,239,159,193,163, 0,160, 65, - 0, 80,125, 15, 50, 27, 50, 2,240,143,225,219,247, 63,224,222, 63, 72,252, 55,176, 23,240,159,137, 17,159,211, 32,149,249,127, -228, 70,192,127,156,195, 45,176,165,128, 49,137,129, 4,207,214,190,126,252, 58,197,137, 7, 20, 86,160,117, 18,160,125,199,160, - 33,255, 7,192, 2,124, 21,244,100, 59, 88,131, 0, 6, 58, 58, 58, 72,106, 4,128, 64, 70, 70, 6, 78,185,224,248,120, 72, 15, -149,129,248,131,129, 96,167,238,161, 3, 95, 7, 7,146, 22, 20, 74, 32,237, 44, 65, 31, 17, 0,245,250, 77,212,213, 25,216,190, -126, 37, 58, 12,169, 13,208, 43,119,244,243, 26, 96, 13, 1, 98, 27, 1,156,146, 18, 12,223,110,223, 97,248,251,231, 15,248,224, - 31,200,136, 14,164, 33,252,254, 37,232, 48,160,247, 96,127, 16,211,251, 71, 7,176,249,127,244,109,127,232,235, 4,240,103,186, -139, 12, 39,246,175,131,115, 55,174,134,108,255, 51,178,143, 96, 16, 18, 51, 24,192,226,245, 63,102, 35,128, 97, 54,131, 65, 70, - 29,195, 11, 96, 39, 67,127,193, 41,134, 83, 30,226, 12,218, 91, 94,130, 43,127, 94, 86,242,206,239, 0,165,189,125, 7,246, 49, - 56,185, 58, 51,108, 90,187,129,161,185,179,131,161, 28, 88,233,255, 7,218,177,114,229, 90,240, 17,226,143, 62,141, 86,118,163, - 0, 19, 0, 4, 16,193,147, 0, 65, 35, 1,115, 47,239, 97,208,249,123,149, 65,130,245, 35,195,143,255, 44, 12,183,255, 11, 48, - 48,191,254,196,240,194, 2,113, 10, 22, 19,158,161,118, 81, 33, 67, 6,175,132, 56,134,191,255,121, 80, 50,199,151,175,159,128, -173, 84, 96,111,157,137,139,161,172,135,248, 67, 99, 60,188,117, 24, 54, 76, 5,182,240,153,190,193, 70,239, 33, 45,127, 30,126, -134,191,191,129, 85,194,255,175,224,149,255, 38,122,114,196,101,209,255,144,211,142, 64, 21, 44, 35,184,131, 14,157, 99,103, 68, -174, 86,177,103,106,116,144,158, 81,198, 48,101,114, 27,195,231,207, 31, 25, 88, 88,152,224,163, 0,127,161, 35, 0, 95,190,252, - 2, 15,251,255, 3,182, 58,152,129,242, 93,237, 19,112,154,229,233,111, 1,166,119,110, 62, 1, 44,124,255,194,109,135,212, 25, -176, 85, 0, 8,119,198,167,132, 16, 21,126, 41,205, 41, 12, 15,238, 62,160, 74, 2, 2,141, 0,188,135,174,126, 7, 13, 45,155, -153,153, 49,188,126,253, 26,124, 2, 32,120,123, 24,176, 16, 2,237,147, 39,165, 17,144, 3,172,220, 57,129, 21,178, 15,158, 33, -249, 28,104, 3,128,147,136,138,187, 20, 58, 74,128,205, 60,105, 44,107, 12, 72, 1,160, 17, 1,107,232,136,128, 24, 39, 39,131, -142,149,213,128,102,104,108,149, 58, 40, 94,176, 45, 8, 36,165, 17, 32,172,170,194,240, 25, 24,207, 44,236,108,224,221, 49,127, -127,255, 1,199, 45,175,160, 32,195, 71, 96,124,130, 42,127, 98,123,255,200, 7, 1,193,230,255, 65, 83, 0,160, 6, 0,242,220, - 63,161,195,129,212, 36,223, 51,188,121,251,134, 97,213,234,229, 40,226, 97,209,201, 12,239,126,169, 82, 20,142,184,134,251,177, -139, 19,191,242, 6,124,232,207,118,196,145,189, 42, 27, 17, 39,148,126,252,253,151,108,247, 58, 57, 56, 49, 92, 20,188,200,224, -230,237,193,144, 26,155,204,160,167,175,203,176,105,227,102,134,227, 23,206,130,207,235,120, 52,196, 47,219,129, 13,245, 35,143, - 0, 96, 19, 27, 5,164, 1,128, 0, 34,234, 40,224,127,186, 46, 12,151, 24, 64,152,124,160,163, 99,205, 48,105,210, 34,134,188, -252, 72, 6,105,121, 80,230,252,201,192,202,206,193,240,228,249, 39, 6,123,223, 56,146,205, 51, 52, 84, 98, 72, 72, 8, 99, 88, - 48, 15,216,242,255,247, 16,236,149, 63, 63,190, 51, 72, 75,242, 51,200,241,253, 33,169, 23, 11,170, 68,255, 51, 66, 42,127, 88, -255,154, 17,220,219,102, 4, 55, 6, 72,237,163,229,228, 86,129,233,170,202, 60, 6,102,102, 38,176,126, 80, 3,224, 15,176, 18, -255,242,229, 15,184, 65, 0, 90, 91, 48,125, 58,113,183,133,185,251, 66, 26, 2,219, 54, 28, 69, 58, 19,158, 1,190,240, 47, 57, - 61,146, 36,247,125,252,242, 17,239,249,254,164, 0, 80, 37, 0, 26, 5, 0, 77, 7,128,182, 41,129, 22, 6,130,216,160,173,123, -160,249,127,244,125,232,160, 70, 0,161, 99,129, 97,189,113, 65, 42,109,243, 19,130,205,173, 82, 88,217,227, 2,226, 4,206,154, - 32, 4,168,185, 6, 0, 91,101,142,111, 55, 0, 41, 7, 2, 41,152,153,130,233, 27, 7, 15, 50,252,248,246, 29,188, 56, 80, 19, -216,184,208,181,178, 3, 79, 21, 16,151,225, 24, 25, 30,222,191, 11,102,130,238, 11, 76, 10, 66, 44, 54, 1,137,163,243,241, 45, -141,191,245, 92, 16, 60,254, 19, 30,157,194,240,240,241, 11,134, 19,135,182,128,197, 87, 45,157,203, 96,110,231,195,192, 43,110, - 67,114, 92,132,129, 79,131, 36,237,120,223,191,140,236,120,229, 31, 5, 74, 48,108,127,246,131,230,133,185,190,190, 62, 24,159, - 57,115,134, 97,239,137,131, 12,194, 34,194,195,238,146,174,209, 57,127,234, 2,128, 0, 98,161,167,101,202, 26,166, 12, 91,119, -222, 97, 8,240,230, 98, 16,147,150,101,120,247,249, 15,131,189,119, 44,217,230, 89,154,106, 0,113, 21, 67,122,122, 29,144,247, -146, 65,144,151,133, 65, 78,232, 31,105,102, 68,135,211,204,191,109,237,147,192,116, 94, 94, 46,195,239, 95,191,192,195,254,160, -109,115,253,253,253,100,153,231, 21, 0,185, 37,113,235,250, 35,224,121,216,180,172,152, 65,145,136, 64,149, 21,104, 36, 0,180, - 37, 12, 86,145,193, 42,176,209, 91, 2,241, 3, 82,142, 31, 38, 23,144,122,219, 31, 33,160, 97,111, 79,182,222,231,247,110, 50, -152,171,202, 80,213, 61,111,127,169, 48,240,136,171, 48,184,132,218, 80,108, 22,161,139,125, 80, 1, 19,195, 31, 96,229,255,157, - 9,255, 66,213,187,192,114, 78,141,151,152,162,150, 58,219, 91, 77, 76, 76,134, 93, 62,193,181,224,111,180,247, 79, 25, 0, 8, - 32, 70, 96, 0,254, 31, 13,134, 81, 64, 41,224,252,121,131,225, 59,187,198,104, 64,140,130, 81, 48, 10, 6, 61,216,188,184,137, -113, 52, 20, 24, 24, 0, 2,136,105, 52, 8, 70, 1, 53,192,104,229, 63, 10, 70,193, 40, 24, 5, 67, 11, 0, 4,208,104, 3, 96, - 20,140,130, 81, 48, 10, 70,193, 40, 24,129, 0, 32,128, 70, 27, 0,163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, 1, 52, -218, 0, 24, 5,163, 96, 20,140,130, 81, 48, 10, 70, 32, 0, 8, 32,148,165,169,190,182,228,175,206,197,118,240,204,168,121,163, -230,141,154, 55, 56,204,131, 29, 7, 60, 26,126,163,230, 13, 21,243, 70, 1,237, 1, 64, 0,177, 96, 43, 40, 72, 5,248, 10, 22, -106,155, 55, 10, 6, 31, 32, 84,185,140,130,193, 27, 23,132,212,179,131,142,171,102, 70, 93, 48,253,232,209, 35,134,167, 79,159, - 50,176,179,179,131, 79,153,147,147,147, 27, 84, 97,128,124, 43,229,112, 43, 87, 94,189,122, 5, 14,123, 98,129,180,180, 52,248, -250,106,122,153, 55, 10,134, 22, 0, 8, 32,172,155, 83, 73, 57,158,148,152, 27,212,176,153,135,235,122,216,129,188,234,117,176, - 22,232,196,130,130,130, 2, 6, 77, 77, 77,170,154, 9,186, 80,198,197,197,133,160, 89,180,110, 4,184,187,187,131,233,157, 59, -119, 14, 10,243,190,126,253, 10, 62,225, 16,116, 25, 16, 8, 4, 7, 7, 51, 24, 26, 26,146, 29,191,200,233, 30,124, 56, 21, 52, -127,160,223,166, 8,226,207,152, 49, 3,111,227,153,216,184, 32, 70, 29,114,229, 15,170, 44, 64,231, 61,128,220,192, 1, 58, 14, -252,199, 15,112, 99,224,244,233,211,224, 3,104, 84, 84, 84, 8,218,105,109,109, 77, 82,248, 60,127,254, 28, 92,161,147, 2, 64, -149, 63,236, 58,106, 82, 1,169,231, 86,128, 14, 14,194,151, 63,176,229, 55,121,121,121, 48, 13,186,109, 20, 20,158,176,244, 68, - 76,126, 3, 85,214,160,251, 38,136, 1,160, 19, 58,205,205,205,241,198, 49,200, 60, 45, 45, 45,162,204,123,249,242, 37,248,250, -235,209,198,254,240, 1, 0, 1,196, 50, 26, 4,131,191, 39,187,113,134, 7, 65, 53, 1,153, 59,168, 62,202, 66,168,161,176,103, -207, 30, 12, 62,114,225, 5,186,176, 7,116, 36, 48,232, 44,122, 74,194,245,242,229,203,240, 10, 27,221, 14, 74, 1,232,190, 1, -208,245,194,160,251, 12, 72, 1,160,202, 31,212, 19, 2, 93,204, 2, 42,104, 65,247, 1, 40, 40, 40, 48, 8, 10,146,118,194, 34, -168, 50,221,190,125, 59,156,239,225,225, 1,190, 4, 9, 31,159,152,184, 69, 78,203, 32, 54,232, 56,224, 89,179,102,193, 43, 56, - 82,211, 58,232, 66, 25, 88,207, 15,212, 24,225,228,228, 4, 55, 8, 62,124,248, 0, 62, 6,250,212,169, 83, 96, 57, 98, 26, 1, - 58, 58, 58,224,138, 14,185,130, 70,239,177,131, 42,112, 16, 56,113,226, 4, 67, 84, 84, 20,201,241, 74, 78,229, 15, 3, 19, 38, - 76,160, 89, 94, 6, 93,215,123,237,218, 53, 6, 86, 86, 86,240,193, 89,160,184,189,125,251, 54, 67,101,101, 37, 73,230,188, 68, -187, 36,203,214,214,150,225,240,225,195, 40, 98,160,235,155,201, 49, 11, 23,120,128,116, 89,211, 64, 1,244,195,128, 70, 15, 2, -162, 12, 0, 4, 96,239,236,109, 24, 6,161, 32,220,177,129,171, 48,132,139,244, 30,196,141, 87,160,167,204, 8,222,198,242, 6, -150,188, 82,244, 61,233, 18,139,252, 25, 66,138, 68,185,198,152, 2, 11, 25,184,123, 15,233,221,207, 8,128,117, 93,139, 34,176, -111, 17, 1, 41, 14,199,211, 85,197, 47,177,202,152, 16, 68, 78, 36,148,154,204,240, 14, 57, 79,211,100,196,118,207,132,166, 4, - 56,246,113, 72,201,101,176, 6,136,252,231,121, 54, 50, 27,199,113,183, 40, 18,136,252,229,202,230,156, 51,247, 63, 68, 64,110, - 54,224, 19,102, 64,154, 11,255, 83,101,128,245,100,125, 67,190, 57,115, 69,224, 32,108,176,199, 30,134,193, 34,127,178, 16,136, - 0,218,148,130,166, 4, 52,223,104,154,198, 4,193, 51,136,220,183,145,189,250,106,128,177,152,103,105, 22, 0,132, 16, 46,237, -109,229,206, 71,253,175, 64,212, 15, 33,199, 24, 77, 4,176,150,187,174, 43, 34,255, 20,144,127,223,247, 55, 34, 64,217,133, 61, -123,161, 38,218,182,181,171, 2,132,142, 92, 59, 5,239,189,237, 21,206, 7,246,223, 59,228,175,190,191, 8, 40,199, 89, 0,246, -206, 38,133, 65, 24,136,194,129,230, 6, 46, 60,144,184,202, 5,114,130, 94,161, 5, 47,208, 94, 36,247,240, 64,217,102, 93,190, - 41, 83, 66, 17, 77,140,148, 46,124, 16, 52, 46, 70, 48, 63,239,205, 27, 33, 63, 17, 0, 57,177,148, 60,223, 3, 54, 36,178,185, - 86, 17,192, 66, 58,107,218,117, 46, 2,223, 11, 98, 30,199, 81,250,223, 39, 1,182,128,236, 31, 32, 44,250,190, 23,178,230, 90, -155,177, 47, 97, 24, 6,105,188,131,184, 92,107,226, 42, 49, 30,229, 6, 28, 13, 37,253,124, 46, 51, 86, 42,212, 74,145, 82, 50, - 93,215, 25,239,189, 56, 1, 49, 70,201, 96,173,181,210,184, 71, 12,112,200, 19,229,128,146,216,144,127, 46, 16, 85, 0,168, 19, -128, 99,177,215,233,129,244,137,167,177,254, 97, 45,147, 61,207,243,108,156,115, 34, 6,248,119,130, 62,228,143, 32,160, 4,112, - 89, 57, 80,109,141,252,167,105,250,236, 93, 75, 78,192, 22, 66, 8, 69, 46, 0,229, 2,230,192, 22, 56, 11, 4, 1, 64, 99,156, -213, 41,164, 76, 68, 73, 66, 5,244, 94,242,191,222, 30,111,254,120,222, 79, 17,208,136,151, 0,236,157,203, 13,195, 32, 16, 68, - 93, 19, 77, 68,112, 77, 27,105,131, 14,210, 70,196, 57, 55,106,224, 76, 49,214,179, 52, 18, 78,226,132, 95,114,202, 92,140,176, -252, 89,140,216,217, 89,228,253, 9, 1, 56,146,146,123, 54, 8,126,155, 4, 56,231,134,149,128, 22,187, 90,158,113,190,220,151, -219,245, 52,253,219,204, 94, 32,203,197,119, 70,244,175,168, 31,231, 76,228,192, 98, 53,131, 0, 8,186, 23, 36,224,211, 88, 40, -247, 15,112,244, 68,251,101,125,246,148,210,238, 92,205, 92, 68,214, 47,247,196, 88,107,119,202, 64,141,236,127, 68,174, 31,237, - 81,122,160, 76, 7,188, 67,206,121,139,252,113, 78,180,121, 47,202, 30,171,238, 3, 4,128, 35,139, 62, 68, 33,132, 80,229,184, - 75,231,143, 34,241,138,188,140,200,248, 92, 43, 91, 71,213,128, 25,160, 48,150, 49,102,137, 49,110,255,234,103, 30, 41,181, 67, - 31, 41, 46,202, 44,183, 58,127,224,189,127,234,111, 37, 1, 51, 1,145, 70, 21,131,196, 49,230,216,205,124,145,243,135, 20, 96, -115, 15,228,252,213, 22, 9,248,163, 15,171, 0,236,157,193, 13,195, 32, 12, 69,179, 0, 67,244,192, 37, 19,148,157, 24,131, 13, -152,129, 21, 24, 1,117,130, 94,187, 74,245,144, 44, 57, 81,211,150,196,138,122,168, 47,145, 66, 68, 64,178,205,247,231, 75, 62, - 5, 0,156, 41, 2,180, 0, 1, 84,111, 71,152, 0, 73, 60,165,148,151,227,181,214, 62,182,103,238,219, 99,158,174,151,187, 25, -237, 47, 1, 73,160, 90, 52,238,209, 10,108, 73,186,163, 34,174,117,245, 79,103, 65,177, 24,227,148,115, 54, 99, 1,244,188,114, - 21,240,206,116,181, 79, 18,103,175,222,251, 94, 5,163,138,135,254, 78, 41, 13, 49, 1,235, 59,254, 79,154, 0, 11,224,201, 1, -171,191,223,170,160,168,234,157,115,253,217, 90,235, 64,128,100, 14,237, 79, 39, 72,137, 99, 14, 56, 40,231,111,175, 52,182, 40, -127, 13, 30,241, 29,116, 6, 71, 89, 42,241, 73, 11,160,187,183,145, 23,190, 64, 91,106,201, 75,172, 9,250, 31,227, 29,160,106, - 84, 93,111,125,200, 11,160,176,248, 23,254,133,159,132, 16, 22,205,137,216, 39,204,199,223,126,195,158, 2,176,119, 6, 41, 0, -194, 48, 16,244,105,253, 64,207,253, 94,175,253, 71, 31, 38, 19, 9,132, 98,161,196, 90, 69,220,139, 21,209,131,148,236,102,147, -146, 79, 54, 1,190, 69, 4,240,190,218,115,214, 10,244,144, 63,217,255, 42,103,102, 38,249,107, 32,191,146,253,211, 52,166, 96, -125,135, 11, 48, 10, 91,251,199,186,165, 43, 26,242, 87, 80,255, 4,144,126,140,113,171,181,202,117, 5,236,158,178,245,255, 51, -144,157, 89,193,215, 59,135, 77, 16,135,252,169,245, 35,110, 16, 57,100,170, 16, 61, 89, 63,207, 33,127,214,163,228,175,130,211, -222,183,142,192,204,108,125,230,183,188, 61, 0,136, 66,236,127,226, 10, 19, 65, 67, 8,242, 95,217, 67,136,197,156,179, 56, 45, - 79, 2,146,183, 37, 5,141, 85, 94,161,129,128,231,148, 72, 74,199,196,213, 82,138,148,144, 60,208,105,128,100,252,109, 9,224, -183,255,253,216, 5, 96,239,108, 82, 24, 6,161, 32,236,186,167,105,123,129, 94,203,149, 7,240, 22,110,130,151,104,122, 5,207, - 34, 30,160,249,132,151,218,144, 66,252,129, 66,233,128, 40,196,141, 16,222,204, 27,135,228, 39,191, 4, 56, 34, 11, 0, 90,187, -244,178, 32,151,246, 92, 43,249, 11,174,151,179,186,207, 15, 53,205,167, 85, 20,224, 8,244, 0, 34,224,142, 78,238,233, 16, 5, -117, 29,251,171,232, 91,107,243,172,181,238, 46,186,210,253,211,233,111, 65,106,159,156,129,236, 25, 1,186,255,163,238, 19, 5, - 91, 64, 81, 11, 33,228,181,247,254,237, 25,221, 14,161,184,111,160, 76,251,239,137,190,163,110, 15,221, 63,228,206,185, 8,177, - 49, 99,245, 51, 82, 74, 42,198,152,139, 58,142, 0, 14, 0,123,107, 9,121, 47, 76,218,122,133,196,187,187, 61,115,171, 3, 53, - 18,206,185, 76,250,144, 63,225, 56, 44,112,200,223, 24,147, 69, 34, 89,128, 90, 1, 0, 89,127, 26, 61, 34,128,154,213, 75,254, - 0,129, 46,228, 15, 88,223, 58,126, 37,189,138,219,133,248,255,214,255, 24, 60, 5, 96,231, 12,114, 24, 4,129, 40,234, 85, 92, -113, 9, 54,237, 21,220,234, 17,219, 38, 30,132, 59,176,230, 18,245, 97,126, 66, 73,173, 5,113,211,116, 18, 35, 9,201, 68, 29, -224,207,252,153,241,103,138, 0, 91,131, 63,155,160, 5,101,168,116, 0,108, 64, 45,248, 3,244,128,191,228,118,127, 44,215, 58, -198, 33,232,174,151,101, 84,214, 6,168,214,176,244,208,213, 65, 92,214,106,183,130,166, 10,255,136,216,251,190, 63, 12,254,138, -254, 63, 69,249,173, 88, 0, 57, 18,164, 1,118,109, 49, 12,145,206, 37,170, 7,224, 97, 4,198,113,140,115,198,152,151, 57,239, -125, 55, 77,211,174,206, 51,106, 0, 20, 73, 99, 83,177, 88, 2,198,212,238,123, 66,241, 31, 69,127, 68,250, 33,132,200, 0,144, -247, 23, 3, 64, 26, 4,103, 0,240,199, 17,120,151,207,207, 37,101,137,244, 60, 57, 91,241,141,158, 45, 6, 42, 77, 47,108,253, - 20,168, 38,234,175,165,255, 17,232,126,214, 4,223, 10, 90,156, 59,182, 1, 20,231,121,142,169,149, 82, 7,160,117,196,158,235, - 61,162, 7,155,106,157, 57,231,226,251, 90,107,227, 30,129, 49,203, 91,136,139,156,219,140, 1,248, 75,189, 60, 5, 96,231,236, - 82, 32, 6, 97, 32,124, 1,111,225, 73, 60,147, 30,194,139,249,230,161,150, 47, 16, 8,161, 22, 77,251,176, 44, 43, 72, 43,165, -165,224,207, 76,226,140, 63, 37, 2,252, 54,240,247, 36,224, 73,228,127,215, 22, 18, 16,152,160,119,237,147, 9, 10, 80, 43, 1, -224,170,118,189,156,179, 0, 91,239, 93,178, 2,187,196,160,181, 38,213,238,125,251,200, 66,237, 69, 59, 22,166,213,161, 63, 74, - 52, 0, 51,192,223,110, 53,172, 10,227, 11, 21,247, 24, 67,236, 76, 16, 0,117, 3,248,103, 86, 28,184,164, 79, 23,231, 0, 68, - 53, 0,126,110, 49,222, 32,114,244,165,206, 53,235,220,216, 25,143,216,182, 16,255, 1,246, 68,251,164,251,149,172,176, 45,192, -213, 10, 3, 35,153, 31,254,145,106, 35,245,211,239, 88,160,231, 93,191,182,188,105, 51,140, 20,181,250,213, 90, 37,250, 47,165, - 8, 41, 72, 41, 73,154, 60, 66, 0, 44, 88,107,128,241,150, 46,224,105,228,175,235, 9,253, 50,231,148,123,128, 31, 33, 32,253, - 67, 54,228, 68, 8,168, 46,128, 43, 17,224,223, 5, 16, 47, 31, 1,216, 57,123, 28, 0, 65, 24, 10, 47, 46, 58,114, 79,206,193, - 93,184, 13,103,208,193, 99,152,207,164, 6, 27, 81, 64,140, 14,190, 77, 99,186, 96,233,235,207,107,151,186,148, 90,226,200,249, - 52, 83,215,217,193, 91,193, 31, 71,122, 66, 54,116,199,230, 56,205,151,223,244,253, 80,100,243,172, 63, 92,115,129,227,212,100, - 32,222,251, 93, 69, 64, 80, 74, 2,228, 76, 83,144,165, 36, 37,213,138, 20,225,180,214,102, 5,127,129, 49,102,235,235,147, 17, -235,172, 31,173,119,174, 15, 61,177, 7, 64, 7,247,163,125, 12, 37,164,148,178, 45,131,171,244,254, 89,252, 35, 51, 0,128,170, - 0,239,120,174,233,221, 75,255, 95,203,254,244,156, 64,110,240,143,207,249,107, 82, 94, 33, 1,248, 1,131,112,252, 51,206,185, -149,236, 82, 85, 97,187, 98, 14,226, 54, 83,139,140, 93,219,187, 11,200, 12,146, 65,189, 7, 32,132,176, 86,147, 32,199, 53,146, -199, 31,237,177, 8,192,206,217,165, 0, 8, 2, 65,248,165, 3,120, 78, 15,224,137,197,115,196, 39,108,136, 89,174,174, 81, 15, - 13, 8, 17, 36, 81,178,191,179,179,105, 29,118,175,156,247, 54, 86, 56,255, 47, 26, 13,200, 67, 90, 69,175,145,128,108,101, 95, - 20,103, 71,182,207, 98,174,158,189, 81, 0,228, 62, 76,113, 25,155,211, 6, 1,176,165, 1, 14,165,230, 0, 72,246, 25, 66, 80, - 59,207,187,253,172, 45,132,153,172,255,233,106, 91,125,134, 91, 37,246,145, 32,128,111, 14,129,141, 12,147,241, 46,202,253, 4, - 1,252, 91,231, 92,118, 32, 61, 9,219,150,125, 41,201,127,188, 31,207,151,246,164,103,135,228, 12,183, 84, 4,173, 28,148,171, -114,191,165, 13, 32, 65, 64, 41,252,227,189, 63,174,169,176,104,144, 82, 58,137,252,192, 63, 25,209,244,239,237,103, 1,156, 24, -225,197,212,136, 49,230, 53,139, 22, 9,240,199, 60,118, 1,196, 66,143, 74, 29,151,121,131,165,241, 48, 88, 43,127, 16, 0, 45, - 34,163,246, 66, 50, 80,225, 72,203, 61,209,200,230,163,247,186, 65,141, 0, 66,225, 76,205,163,126,105, 97, 30,190, 17, 1,114, - 0, 53,215, 0, 96, 11, 91,124,163, 61,164,164,121,208,232, 24,168, 97,183,127,255,126,240,162, 63,208,180, 0,104,215, 3,232, - 60,124, 82,210, 19,232,120, 95,228,209, 5,100,113,116, 62,161,116,134,220,160,133, 53, 38, 64,229, 10, 41, 13, 18,100, 0,242, -203, 96, 46, 87, 64,135,235, 4, 6, 6, 18,173,190,185,185,153,174,230,209, 10,192,118, 1, 96,171,248, 71,135,255,201, 7, 0, - 1,196, 66,235, 74,112,244, 68,189,145, 13, 70,227,127,224,195,135,154,118,192, 70,122,200, 5,160,145, 18,114,206,246, 39,166, -193, 73,141,134, 30,173, 27,139,148, 2,208, 89, 1,212,140, 79,106,155, 71,175, 70,192,104,229, 79, 29, 0, 16, 64,140,192, 0, -252, 63, 26, 12,163,128, 26,128,243,231, 13,134,239,236, 26,163, 1, 49, 10, 70,193, 40, 24,212, 96,243,226,166,209,107,103,129, - 0, 32,128,152, 70,131, 96, 20, 80, 11,140, 86,254,163, 96, 20,140,130, 81, 48,116, 0, 64, 0,141, 54, 0, 70,193, 40, 24, 5, -163, 96, 20,140,130, 17, 8, 0, 2,104,180, 1, 48, 10, 70,193, 40, 24, 5,163, 96, 20,140, 64, 0, 16, 64,163, 13,128, 81, 48, - 10, 70,193, 40, 24, 5,163, 96, 4, 2,128, 0, 66,217, 5,224,107, 43, 67,182, 65,216, 46, 19,193,103, 30,161,253,199,164,154, - 71,109,247,141,154, 55,106,222, 72, 55,111,179,223, 20,178,205,243,221,148, 67,115,243, 54,250,146,111,158,255,102, 76,243,124, -108,164,193, 52,104, 75, 38,232,196, 67,208, 33, 54,160,211, 13, 65,135,244,128,246,174, 71,242, 43, 48,236, 60,115,134,225,187, -158, 44,131,133,133, 5,248, 48, 27,216,118,205, 45, 71,158,210, 60, 62, 96,238, 67, 6,176, 3,167,174, 94,189,202, 32, 37, 37, - 5,190, 96, 8, 68,115,114,114,130,197,241,185, 15,159,121,143,175, 44, 97, 72,183,125,196,176,236,140, 26, 3,139,152, 27, 3, - 15, 47, 31, 65,243,168,237,223, 81, 64,123, 0, 16, 64,100, 31, 5, 76,236,105, 91,164, 30,129, 75,206,145,185, 18, 39,174, 49, -220,121,245,156,129,147,141,131, 65,157,139,159,225,142,157,206,160, 10,100, 92,231,145,143,110,145, 27,120, 0, 58,189, 15,116, -184, 75,111, 21,132,191,225, 48,228, 88, 85, 98,192,131, 39,143, 25,158, 2, 43,134,155, 55,110,128, 15,195, 1, 29, 8,196,195, -203,203,224,225,234, 70,180,253,187,119,239, 38,201,189,160, 19, 22,201, 77, 55,176,147, 21, 65,183,101, 82, 4, 66,223, 65, 25, -160,202, 0, 88, 97,172, 22, 34,223, 44,227,126, 6, 6,165,120,104, 70, 89,192,192,112,182,136,242, 72, 13,121,131,234,190, 53, - 34, 68,105, 3, 85,126,160,187, 13,118,237,218, 5,206,179,161,172,194, 12, 18,178,162, 12, 63,190,126,103,224,252,246,135,193, -186, 36,149,193,206, 55,156, 97,203,220, 25, 12,155,247,238,101,112,115,115, 27, 20,105, 24,116, 30, 3,200,189,250,250,250,224, -195,168, 64,103,239,131,142,105, 6, 93, 83,141,235,218,117,124, 0,116,200,211,197, 51,231, 25,100,146, 13, 25,202,204,180, 25, - 78,236,234, 97, 88,123,217,129, 65, 85,199,137, 44,243, 70,193,224, 5, 0, 1, 68,114, 3,128,212,243,251, 73, 57,114,148,212, -202, 95,245,220, 93, 6,193,183, 95,128, 89,252, 63,195,175,191,204, 12,191,223,125, 97,120,242,230, 35,195,131, 41,103, 25,120, - 28,205, 25, 68,180,137, 91,149,126,118,127, 58,131, 6,124,107, 51, 51,195,250, 93,255, 24, 14,159,254,207,144, 22,193, 0, 22, - 47,106,165,172,226,134, 29,123, 76,141,195,119,208, 27, 19,212, 50,151,162,250, 32, 20,114, 0,139,144, 16,238,251, 3,222,189, -115,129,198,177,224,160,217,107,141,168,252,255, 67, 43,127, 59,240,205,108,196, 52, 0,244,244,119, 49, 60,123,182,150, 97,209, -124,132,216,173, 27, 55,193,116, 74,226, 58,134,143, 95,114, 24, 62,127, 32,174, 33, 10,186, 81,144, 88, 64,238, 17,170,184,242, -109, 6, 80,124, 6, 25, 13, 10, 88, 79,145,226,202, 0, 88,249,163, 92,182, 67,141, 6, 0, 82, 56, 17,115, 59, 33, 12,128, 14, - 57, 58,176,106, 21, 67,147, 75, 24,131, 65,116, 22, 3,155,184, 32, 3, 3, 11,104,150, 20,136,255, 1,253,249,143,149,225,223, -207,255, 12, 94,241,105, 12,143, 38,117, 48, 28, 59,118,140,193,202,202,106,192, 43, 68,208, 29, 2,160, 3,153, 64,103,235,131, - 26, 1,102,102,102, 12, 47, 94,188, 0, 31,189,171,167,167, 71,242,209,238,160,176,115,118,114,101,104,239,219,196, 80,158,112, -153,193,194, 35,147,193,194,124, 15, 67,201,228, 39, 12,106,166,113,120,205,131,165, 51, 98, 27, 10, 32,117, 20, 55, 72, 71, 1, -217, 0, 32,128, 88,200, 42, 64, 92, 86, 49,204, 12, 37,254,252,104,244, 70, 0,236, 38, 58,208,109,128,200,215,150,146, 82,177, -202,220,125,201, 96,196, 41,200,192, 38,201,207,240, 23,216, 0,224,252,192,197,240,226,245,107,134, 23,159, 63, 50, 40,178,243, - 48,220,216,121, 4,220,254, 23, 37,162, 17, 0,170,228,111,220,101, 2, 38, 88, 14,134,191,140,236, 12, 1,174,191, 25, 2,221, -190, 3,101,254, 33,245, 36, 40, 44,231, 40,172,164,145,111, 58,131, 93,174, 97, 82, 1, 20, 3, 29,242,214, 25, 70, 82, 67,128, -148, 70, 28, 41, 39,170,129,226, 20,183, 27,200, 59,111,252,246, 94, 62,134,158, 85,145,112,126,113,232,114, 6, 53,151, 79, 20, -199, 7,168,242,239,235,235, 3, 23,158,197,109, 12,240,179,212,137, 41, 44, 65,149,191,133,249, 90, 32,102, 96,104,108, 68,149, - 3,157,113,227,229, 5, 98, 77, 97, 88,190,138,184, 70, 0,168,192,133, 93,168, 4,170,176, 64, 55,196,193,238, 82, 32,165, 2, -195,215,243,135, 29,203,140,236,191,140, 12,242, 42,127,170, 1,227, 62, 48, 53, 97,194, 4, 68, 3,192,168,151,129,225, 92,241, -128, 56,103,223,190,125, 12,211, 3,211, 24, 20,129,149, 31, 3,243, 79, 6, 70, 86, 38, 6, 70, 96, 3,128,145,153, 21, 88, 54, - 0,195,239,235, 31,134,255,192,248,248,255,235, 47, 67,106,124, 22, 67, 86, 93, 62,195, 93,113,113,138, 14, 70,162, 6, 0,149, - 7,146,146,146,224,248, 5,221, 49,112,227,198, 13, 6, 87, 87, 87,240,173,131, 39, 79,158,100,208,214,214, 38,201,188, 35,123, -151, 51, 4, 25,124, 99, 56,251,153,153, 33,170,254, 11,131,141,225, 68,134,156,130,112,134,158,242, 15, 12,229, 61, 75, 25,148, - 12,163,136,170,208,145,203,116, 80, 26,196, 38, 78,108, 89,132,126, 0, 16, 58, 24, 61, 16,136, 60, 0, 16, 64, 68, 53, 0,208, - 43,127,176,216,106, 65,146, 27, 1,160, 10, 31,118, 44, 41,140, 6,153, 13,170,100, 72,169,252, 21,110, 60, 99, 80,103,227,102, - 96,251,255,135,129,179,167,148,225,207,183, 95, 12, 28,197,173, 12,252,108, 28, 12, 63, 88,191, 51,124,253,241,157,129,147,129, -145,225,249,193, 19, 12,108, 50,146, 12,252,252,252,120,205,187,113,151,129, 97,214, 10, 80,101,255, 13,138,129, 21,130, 41, 19, -176, 17,192,136,212, 8, 96, 0,143, 8,204, 90, 65,122, 32,131, 42,103,144, 63,201,237,173,195, 42,127, 88,197, 15,171,252,145, -227,164,147,196, 70,192,221,142,187, 4,213, 40, 87, 16, 87,176,129,122,254,160,202, 31,223, 29,243, 66, 66,233, 80, 53,196, 93, -243,250,230,178, 36, 67,205, 20,127, 96,211,235, 63,131,165, 80, 13,131,181,139, 54,195,145,221, 87, 25,122, 87, 3, 11,159,213, -255, 25,234,139,166, 49, 72,169,147,215, 27,254,242, 48,157, 65,154, 3, 24,211,111,175,130,123, 41,188, 98,122,240,202,127,250, -244,233,120,245,242, 10, 92, 1, 87,254, 48, 0, 44, 95, 25,204,205, 17,242,200, 39,165, 70,134, 77, 97,152, 49,167,154,129,233, -159, 44, 65, 55,161, 95,158, 68, 45, 0, 74,119,176,202, 31,181, 81, 0,172,252,103,224,207,115, 76, 97,239, 81,154,191,140, 80, -226, 95, 40, 22,117,140, 80,133,140, 16,134, 55,150, 65, 20,166,240,247,240, 81,121, 16,248,247, 47,129,161,160,160, 0, 46, 15, - 98,131, 26, 3, 76,170,201, 8, 91,161,234,177,153,199, 18,142,221,125,127,254, 96, 81, 71,132,251, 64,195,230, 18,242, 10, 64, -135,253, 98, 96, 98, 7, 42,101, 97,102,248, 3,236, 80,252,184,119,159,225,245,147,167, 12, 50, 86, 14, 12,140,108, 2, 12,140, -191,127, 1, 27, 8, 76, 12,157,153, 37, 12,174,179, 26, 24,138,138,138,168, 30,103,196, 84,104,176, 94, 54,232, 88,102,208,113, -212,160, 70, 45, 40,158, 65,107, 23, 22, 44, 88,192,160,169,169, 9,190,168,137,148, 81, 29,144,121,242, 76, 39, 25, 36,229, 60, - 24, 62, 28,188,204,240,241, 61, 59,195,226, 45,127, 24,182,157, 88,194,144, 23,202,201,192,242, 13,148,142,112, 55, 0, 70,167, - 7,134, 22, 0, 8, 32, 22, 98, 43,126, 80,196, 50,186, 34,221, 42,182, 39, 12,216, 61, 36,173,247, 0,171,244,191,125, 91, 10, -206,169, 63,126,204, 3, 87, 30,160, 51,188, 73, 25, 22, 22,123,254,142, 65, 76,156,131,129,163, 62,139,225,239,155,119, 12,127, -158,189, 97, 96, 97, 99,101,224, 98,100,102,224, 6, 97,102, 22, 6, 33, 86, 14,134,247,159, 63, 48, 60,223,119,140,129, 63,208, - 19,175,121,216, 42,245,195,167,255, 65, 27, 0, 12, 12,125,213,192,140, 1,100, 50,254, 39,111, 52, 0, 84, 41,131, 42,103,216, -208, 61, 57, 83, 8,200,149, 63, 86, 0,109, 4, 80,178,174, 64, 48, 13, 17,223,239,103,205, 36,217,143,212, 28, 5,169,158,226, - 7,175,248,173,180, 67,192, 98, 32,250,216, 85, 72, 67,160,177, 47, 27,232, 87,242,134, 14, 65,117, 64,122,225, 21,120,161, 7, -186,167, 28,212, 0, 32, 84,249,131,128,157,205,105, 20,190,169, 41, 3,195,236,217, 12, 12,251,247, 51, 48,168,170,130,252,136, - 58,130, 96,160,123,157,225,210, 69,252, 13, 0,244, 94, 62, 41, 83, 2,196,140,240,160, 87,254, 32, 64,168,242, 7,171, 1,166, - 37, 88,125,141,175,113,247, 15,169,208,159, 9,108,228,131,194,119,243, 33,204, 69, 93,211,129,118,194, 66, 71, 65, 65, 1, 92, -166, 76,156, 56, 17, 46, 15, 98,131, 26, 0,160,107,155,145,111,145, 99,192, 97, 30,108,244, 2,100, 78,106,106, 42, 78,247,253, - 65, 10,223, 89,192,200, 2,185,111,203,225,167, 88, 43, 47, 22, 94, 94, 6, 6, 86,102,134,191,223, 62, 48, 92,223,182,151, 97, -233,170, 53, 12,211,158, 65,220,114,170,145,143, 65,213,206,139,225,231,163,199, 12, 87, 47,158,101,184,124,255, 22,195,199, 23, - 47, 24,174, 92, 1,165, 37, 9,170, 20,200,184, 46,209,193, 85, 89,131, 46,242,169,173,173,101,232,233,233, 1, 47, 88, 4,141, - 38,241, 2,253, 0, 90,203,112,234,212, 41,162,243, 28,204,188, 15, 79,142, 50, 52,206,127,196, 48,183, 64,138,225,221, 87, 54, - 6, 54, 22, 38, 6, 25, 65, 14,134, 23,111,126, 49,164,119,253, 97,208, 55, 49,102,144, 35, 98,196, 9,214, 16, 64, 78,139,184, -216,196, 0, 92, 13, 34, 66, 35, 3,163, 0, 63, 0, 8, 32, 38, 66,133, 8,236,190,111, 20,176,135,244, 11, 51, 64,189,127, 72, -229,191, 12, 94,249,131, 0,108,110, 24, 38, 79,176,197,114,224, 44, 3,255,187,207, 12,255,216, 88, 24,126,157,189,202,240,243, -250, 61,134, 31,187, 14, 51, 48,124,255,201,192, 6,116, 39, 23, 3, 51, 3, 11,208,252,159,255,254, 48,188,251,249,131, 97,218, -238, 45, 4,205,236,171,134,244,238,145, 1,132, 15, 43,254,254, 51,220,188,243,159,161,168,149,252,214, 45, 40, 35, 34, 15,123, - 17,123, 27, 31, 72, 29,236,110,109,172,189,127,180, 70, 0, 53,111,249, 27, 40,112,247,252, 23,112,184, 35, 87,254, 32, 16, 84, -207, 10,158, 14,176,113,213, 6,199, 9, 68, 29,105, 96,217,178,101, 12,197,109,140, 12, 60,162,186,224,216,245, 8,204, 4,207, -251, 19, 3,254, 49, 61,102,144,150,194,188,160, 70, 95, 31, 82,249,199,197, 97, 78, 31,200,202, 18,190,161, 13, 84,104,131, 48, -104,232, 31,198, 70,198,200,226,196, 2,172,249,150,156,198, 18, 90, 37, 1,195,184,196, 24,241,180,145,145,205, 2, 45,160,195, -214,115, 6,141, 2,128,134,175, 81, 61,131,221,188, 13,192,252, 4,170,124, 97,118, 35,135, 25,122,216,194,196,240,185, 15, 84, -126, 48,113,177, 51,252,126,241,144, 97,102, 77, 13,195,130,175, 31, 24,222,219, 91,192,229,231, 46, 89,192,208, 80,146,194,160, - 86, 20,201,208,116,121, 31,195,170,247,247, 25, 92,253,252,200, 26,213, 3, 85,244,160,114,224,252,249,243,104, 13,179, 25,120, -167,161, 96, 97,125,249,242,101,240,112,127,100,100, 36,195,148, 41, 83, 24,190,124,249, 2,191,166, 25, 52,146,193,195,195, 3, -190,216,200,218,218,154, 96,197, 15, 54,239,248, 90,134, 91, 59,139, 24,138, 42,123, 25, 54,215, 75, 49, 92,127,202,194,240,241, - 11, 51,195, 63,160, 83,222,126,249,197,240, 95, 88,153,161,176,170,149,193, 39, 32,134,112,195, 17,232, 7, 88, 89, 7,162, 9, -177,201, 5,176,202,127,116,248,159,124, 0, 16, 64, 44,248, 42,126,106, 12,101, 97, 3,176,202, 31,125,116, 0, 89, 61,174, 72, -101,121,251,129,225,221,127, 86, 6,182,183,239, 24, 56, 54,236, 3,207,209, 49,252, 0, 38,208,207, 95, 25, 24,129, 25,128, 21, -212,163,250,255,143,225,199,223, 63, 12,159,255,252, 2,150,218,132,231, 80, 97,139,252, 64, 13, 1, 92, 69, 23,100,145, 32,229, - 97, 2, 74,244,176, 33,125, 98, 50, 0,182,222,255,153, 14, 37,156, 13, 2, 98,205,133, 1,208, 48, 63, 49,211, 1,244, 4, 93, - 51,138, 25, 44, 4,107, 80, 42,127, 24,128,137, 91, 10, 93, 5,171, 35,197,175,160,235,108, 15, 29, 58,196,240,246,173, 51,131, -176,240, 94, 6, 30, 17, 29,112, 58, 7,173, 3, 32,102, 33,210,163, 71,160, 6, 25,122, 69,203,192, 96,102, 6, 97,223,190,205, -192, 48,117, 42, 66,238,221, 59, 96,122,101, 33, 60, 77, 70,202, 60, 63,181,238, 81, 71,206,107,196,134, 97,126,126, 62, 74,143, - 29,189,226, 38, 22,192,174,131,134,205,253, 35, 3,216, 40, 0, 72, 13,202, 40, 0, 22,144, 44,173,198,112,235,234, 53,134,167, -130,130,224, 56,204,203,203, 99,152, 52,105, 18,217,238,179,253, 41,192,240,255,223, 23,134,148,182,106, 6,221,144, 16,134,153, -109,109, 96,115,225,225,116,251, 10, 98,132,240,240, 97,240, 14, 14,144, 27, 33,101,229, 55,146, 42,127,216,104, 19, 40,236, 65, - 61,102,208, 34, 62, 80, 99, 0,100, 86,102,102, 38,195,227,207,184, 27,118,160, 45,137,254,254,254,224, 48,218,182,109, 27,195, -199,143, 31,193,211, 0,224,209, 14,232,252,135,187,187, 59, 81, 11,241, 64,242,247,110, 94, 96,104, 40, 75, 98, 16, 86, 93,205, -112,126,117, 60,195,165,199,140, 12,143, 94, 2,171,134,255, 76, 12, 63,127,253, 6,150,183,194, 12,217,201, 89, 84,219, 1, 64, -234,162,196,209,202,159,118, 0, 32,128,104,122, 16, 16,172,149, 7,194,136, 94, 44,246, 4, 4,146, 71, 86,143, 11, 92,123,242, -136,225,244,155,103, 12, 87,239,223, 99,120,121,255, 1,195,167, 7, 79, 24, 62, 63,126,202,240,231,219,119,134,223,191,129,149, -254,223, 95, 12,223,128,149,255,207,255,127,193,139, 3,255,147,144,216,144, 87,251,131,214, 5,128,248,160, 94, 63,164,231,207, -196,208, 91,205, 66,149,112, 33,181,199, 0,170,224,145, 43,121, 24, 31, 93, 28,189, 97, 64,244,232,204,123,200,232, 11,104,216, - 31,134, 7, 26, 64,122,249,208,184,120,181, 19, 76,175,107,252,205, 80, 86, 80, 15,102,131, 70, 7, 72,237,249, 7,218, 29, 2, -143, 56, 9,158,216,203,208, 95, 13, 41,252,236,236,236,136, 26,250, 7, 1, 5, 25, 89, 6,208,122, 47,100,124,227, 6,100,225, - 31, 8,168,170,254,103, 0,213,105, 66, 66, 16,172,162,194,192,224,234, 78,124,165,142,220,227, 71,239,189,194,196,104,145, 55, -137, 1,160,202, 14, 91,133, 13, 31, 69,235,235, 35,122, 75, 35,104,186, 15,182,242, 31, 27, 0,201, 97,140, 2, 96, 1,135,174, - 61, 98, 72, 74,206,102, 56, 11,140,219,202,202, 74,156,141, 19,152,251,246,238,221,139,183,242,177,211,146, 99,152, 55,119, 42, -131, 49, 48, 66,219,219,219,241,186, 17,212,160,112,118,118, 38,171, 66, 4,165, 55,144, 59, 64, 97, 15,210, 15,107,124,194,122, -255,160,198, 0, 62, 0, 58,163, 96,203,150, 45, 12,215,174, 93, 3, 54, 58,111,131,135,251, 65, 98, 32, 0,154, 6, 8, 8, 8, - 32,169, 19,247,243,231, 79,134,179,107,163, 24,126,220,154,204,176,243,224, 93,134,251,207,153, 25, 62,125,101, 2,118,164, 24, - 24,158,126,229,100,200, 46,170, 38,201, 60, 80,227, 18,182,229, 20, 68,195, 26,155, 32, 26,132, 65,230,192,216,163, 96, 96, 1, - 64, 0, 49,225, 42, 24,208,135,250,208,135,154, 73, 5,176, 57, 68, 46, 46,212,213, 55,176,173, 99,248,230, 24,145, 1, 43, 27, - 51, 56, 97, 62,249,250,129,225,209,199,119, 12,175, 63,189,103,248,248,227, 7,195,251, 95,223, 25, 94,255,252,206,240,252,199, - 55,134,167, 63,190, 48,188,251,253,147,225,253,191,223, 12,191,176,204,127, 98,180,252, 77,177, 84,138, 72,235, 2, 82,194,121, -128, 77, 9, 54, 48, 38, 21,128,122,251,232, 9,157,220, 97,122,156, 67,255,100, 86,254,196, 46,242, 27, 8,112,116,207, 85, 56, - 91, 67,204, 29, 60,252,143,140,123, 87, 69, 49, 48, 50, 48, 18, 93, 32,249,219, 28,100,136, 47,130, 84,254,160,116,189,241,168, - 3, 88,142,216, 61,255, 48,160,166,161,142,214,176, 96, 96,152, 50,133,129,225,206, 29,200, 72, 64, 99,227,127,248,240, 59, 8, - 11, 2,123,167,196,142, 0,128,104, 16,134,173, 1,128,241,145,197, 6, 10,192,122,227,216,122,210,160,145, 1, 80,152, 18,234, -177, 35,247, 0,241, 53, 38,240,201, 33,131,195,236, 31, 24, 24,153,120, 24,230, 84,181, 50,240,108,217, 3, 46, 67,144,175, 26, - 78, 87,213, 97,200, 55,182, 2,150, 57, 92,224,134, 30,104,174,124,207,158, 61,224, 51, 27,176,129,185, 79,111, 49, 60,215,214, - 98,144,150,150, 6,175,155,192,215,160,192, 39, 71, 40, 45, 34,175,148, 7,245,246, 97, 21, 37, 50,141, 47,236,100,101,101, 25, - 30, 61,122, 4, 30,133, 80, 1,182, 50, 65, 7, 21,193, 26,145,160, 3,138, 72,237,141, 43,107, 24, 50,204,218, 37,192,112,105, - 91, 61,131,173,165, 38, 3, 55, 7, 19, 3, 55,215, 95, 6, 78,246,159, 12,158,254,164, 79,247,130,234, 15,228, 70, 13,181,167, - 0, 70,123,255,212, 3, 0, 1,196, 68,168,135,128,220, 16,248,191, 59,148,228, 97, 67,100, 0, 90,237,143, 92,233,195,104,244, - 57,110,124, 64,211,202,138,225, 15, 15, 23,195,123, 96, 15,255,218,215,247, 12, 87, 62,190,101,184,250,233, 13, 16,191, 3,242, -223, 49,220,249,246,158,225,237,207, 31, 12, 95,254,252, 97,120,246,237, 43,220, 78,124, 0,180,216,175,175,154, 25,140,255, 51, - 0, 49, 35, 19, 67, 90, 4, 35, 67,106, 4, 27, 67,114,184, 40,176,167, 39,206,240, 15, 60,185, 64,218,208, 21,242,214, 61,116, - 49, 98, 1,178, 94, 88, 37,143,171,178, 7, 45,166, 68, 86, 79, 12, 0,133, 61,168, 80,172, 56, 91, 1,111, 20,192, 70, 4, 6, - 10,148,132, 45,103, 56,254,174,149,225,216, 85,196,202,120, 80,239, 31, 52,252, 15, 3,173,217, 91, 24,102, 16,177, 8, 16, 84, -224,246, 3,181, 37, 20, 57, 51, 8,156,216,195,224,216,101,207,192,228,205, 0,222, 51, 77, 78, 26, 6, 29,246,131, 12,156,156, - 24, 24, 4, 4, 64,163, 58, 12, 12,158, 88,214,154,154,152,154, 18, 53, 2,128,171,231, 15, 19, 39,117, 4, 0,219,124, 61, 50, - 0,237, 2, 32, 21,128,122,248,224,173,122, 88, 42,108, 82, 15, 52, 66,110, 36,161,139,253, 35,162,209, 14,238,237,130,118, 55, -124,251,201,192, 42, 33,207,144,222,210,194,144,192, 45,192, 32,112,224, 56, 92, 62, 57, 38,129,161,161,103, 14,195,237,190,229, - 12,117,186, 78, 12, 97,130,138, 12,187, 55,109,194,217, 0, 15, 0,134,137,182,142, 14,124, 81, 35,114, 3, 12,185,177,134, 46, -134, 11,128,134,250, 65, 21, 58,108, 97, 31,108,190, 31,185,146, 7,245,246, 97,139,230, 64,141, 1, 66,189,127,144, 58, 86, 86, - 86,112, 47, 31, 52,244, 15,106,204,128, 78,253, 19, 21, 21, 5,166, 67, 1, 6, 14, 14, 14,146,227,129,157,157,157, 33, 56, 99, - 18,195,130,211, 38, 12, 15, 30,127, 98, 16,231,103,102,176, 84,103,100,208, 83,252,207,192,205,199, 55, 90, 75, 14, 99, 0, 16, - 64, 4,199,180, 97,133, 36, 74, 65, 66,198, 8, 0,108,239, 39,104,248, 15, 84,225, 8, 9,173, 70, 49,159,216,115, 0,190,232, -171, 48,124,187,117,139,225,219,159,159, 12,159,190,126, 99,184,251,251, 55, 3,235, 63,200,196,194,199,223, 63,192,153, 23,196, -222,246,242, 62,195,215, 63,191,137, 28,110,103,100, 40,106, 69,205,208,144,245, 0,255, 24,254, 50,252,100,184,126,231, 51,195, -188,149,164,237, 61, 71,174,232, 65,110, 64, 31, 5, 32,182,162, 6,187,191, 51, 12,111,152,195, 26, 4,164,204,255,131, 42,122, -228,134, 23,168,241, 0,194, 32, 0,138, 31,134, 1, 60,171, 71,213, 25, 24,214,171,254,195, 71, 1, 96,107, 1, 64,195,255,160, - 93, 0, 61,192,222,127,213, 84,111,162,253, 10,234,249, 35, 14, 41, 58, 0, 38, 65, 83, 1,255,255,175,134,166,235,255, 64,191, - 19,183, 61, 49, 36, 40,152, 97,247,206, 93, 96, 54,168,179,233,232,200,200, 0,203, 26,160,194,116,203, 22, 96,207,196, 7,194, - 55,183,180, 96,208,211, 38,124, 14, 0,122,101, 66,233,222,127,228,112, 1,165, 59,208, 60, 54,122,165, 10,218, 5, 64,234, 33, - 64,176,249,110,228,181, 0,176, 17, 1, 98,123,255,224,209, 53,164, 5,191,232,171,247,137, 93, 12, 12, 43,147,254,124,254,204, -192, 42, 34,196,192,204,197,195,160, 29, 28,194,208,228,230,202, 80, 5,219,182,103,104,196,240,247,251, 15, 6, 86, 97,113, 6, - 93, 11, 7, 6, 5, 25, 69,134, 73,215,143, 51,232, 0, 43,249,231,167,223, 96, 54,138,192,121, 20, 18,153, 89,160, 74, 26,186, -117,240, 15, 90,124,176,176, 48,131,197,145,183, 31,122, 99,233,141,130, 42,115,216, 16, 63,172, 39,140,109,136, 31,196, 39,166, -242,135,249, 25, 84,209,131,122,250,160,253,254,160, 83,255, 64,233,133,155,155,155,225,219,183,111, 36,167, 21,144,121,226,226, -226,224, 53, 5, 39,142,156, 98,152,176,122, 55, 3, 31, 35, 27,131,186,248, 79,134, 59,111,184, 25,108,212,127,163, 52, 22, 8, -205,223,131,228,145,203, 58, 98,118, 4,140,246,254, 7, 14, 0, 4, 16, 11,169,133, 10, 56,226, 72,220, 2,136, 94,185,195, 42, - 26,116,243,137,109, 4, 72,137,137, 51, 92,254,241,128,225, 35,211, 63,134, 23, 63,190,128, 38,197, 24,254,130, 18, 39, 80,238, -250,151, 15, 12, 79,191,125, 2, 39, 58, 80,239,159,184, 6,192,127,112,143,127,214, 10, 68,111, 4,180, 6, 64, 67,249, 15, 3, - 51,195, 87,138, 42,127,228,196, 78,238,144, 23,100, 11, 33,104, 40,238, 12, 74,165, 15,154, 18,128, 85,254, 38, 38, 38, 36,245, -254,209, 71, 93,208,249,224, 70, 0,145, 0,178,147,227, 61,131,171,235, 44, 68,163, 5,135,154,244,244, 61, 68,109,249,108, 3, -246,240,171,167,250, 50, 28, 95,245, 31,188,224, 15,118, 14,192,137,247, 45,224,161,255,214,236,205, 64, 85,207,136,114, 31,168, -242, 7, 21, 76,129,129,129, 12,179,103,127,130, 87,216,140, 72, 75,194, 97,167, 25,194,192,230,195,150, 56,205,203,206,203,101, -152, 58,105, 50,184,247,143,238, 85,208, 33, 64,117,117, 12, 12, 59,119, 91, 48, 56, 17,185,181, 21, 54,124, 11, 58, 12, 8, 52, -212,143,239, 96, 32,114, 26, 3,176,131,128,208,231,112,103,128,229,210,137,218, 18,136,156, 46, 64, 61,126, 88, 3, 0, 52, 34, - 64,106,239, 31,189,194, 32, 23,128,122,187, 47, 30, 62, 96, 80, 84, 86,101,248, 7,236, 16, 48,254,249,203,192,194,203,199,192, -107,100,194,192, 99,104, 10, 62,184,231,239,183,159, 12,255,129,226, 12,127,255, 49,148, 79,239, 97, 8,143, 10,199,217, 75,254, -179, 66,144, 40,123,177,169,243,223,140, 93, 45,168, 98, 7, 85,254,176, 50, 32, 43, 43, 11,171, 58, 98, 43,127, 16, 80, 87, 87, -103,152, 60,121, 50,195,235,215,175,193,107, 37, 64,139,132, 65,149, 63,200, 12,208, 72, 0,169, 97,111, 97,110,206,144,145,156, -193,112,255,201,125,134, 88, 32,125,114,247, 66,134,231,159,223, 49,152,216,187, 50,136,203,168, 97, 29, 53,192, 55,162,128, 92, - 87,224, 58,252,135,212,131,128, 70, 1,109, 0, 64, 0,177,144, 83,160,144,211,243, 71,175,108, 96,103, 2,144,211, 8,248,105, -111,204,160,198, 96,204,240,116,230, 2, 6, 6, 78, 14,134,247,255,255, 48,252,250,243, 7,216,251,255,199, 32,204,207,207,240, -228,235, 71,146, 78,176,195,182,189, 15,177, 6,128,180,222, 24,182, 33,126, 74,143,235,133,157, 35, 0,171,228, 97,211, 26,232, -149, 63, 41,118, 96, 11,127, 74, 1,250, 33, 79,168,113, 75,218,144,130,176,222, 83,240, 16,255,173, 61,124, 12,189,171, 35,129, - 13, 1, 6,112,197, 15,154, 30, 0,143, 16, 16, 89,249,195,210, 18,164,130,255, 4, 45,164, 24, 24,176,213, 59, 11,122,247,130, -105,110, 57, 80,161,133,251,114, 18, 80,175, 30,100,174,136, 24,104, 36, 96, 29, 74,129,250,249,179, 26,131,161,177, 14,176,224, -116,101, 96,249, 79, 92,229, 70,104, 4, 0,121,254,159,156, 93, 0,160, 66, 24,212, 8, 64, 94,209,142, 60, 18, 64, 10, 64, 94, - 11, 0,171, 8, 72,233,253, 83, 19, 56, 1, 91, 96,217,171,102, 49, 52,125,254,192, 96, 96,111,195,192, 36, 46, 8,113,211,239, -255,144,163,123, 25, 88, 25, 24,153, 89, 24, 24,217,152, 25,102,207,232, 99,224,115, 54, 1,159,218, 71,207,195,106, 96, 67,252, -160,133,127, 32, 26,116, 84, 47, 37, 0,116, 92, 49,104, 49, 35, 40, 29,128, 78,175, 4,197, 41,182,121,127, 80, 26, 2,165, 71, -108,113,142, 12, 64, 35, 8,139, 22, 44,100, 96, 99,102,103, 8,137, 12, 1,171,183,241, 74,193,108,244, 0,203, 87,152,121,212, - 88,197, 63, 10, 6, 7, 0, 8, 32, 22, 90, 91,128,173, 50,199, 87,249,144,210,192,112, 76, 79, 96,184,119,247, 30,195,185,237, - 59, 25,190,254,252, 5, 30,170, 83, 54, 51, 98,240,144,139, 36,169, 50,164,230,165, 60,176,202, 26,212, 16,128,141,116,128, 26, - 4,164, 52, 72,112,153, 11,219, 66, 8,170,240,145, 27, 23,164,186, 31,230, 62,106, 1,208,249,254,132,194, 17,212,243, 39, 7, -128,142,253,157,233,130,108, 46,121,199, 0, 67, 42,119, 70,134,248, 34,196,133, 38,176,114, 12, 36, 7,170,244,185,229, 66, 73, - 50,243,229,115, 55,134, 89,179,220,192,231, 3,240,243,125, 4,139,193,142,254, 37, 37, 99, 81,107,107, 31, 49,141, 0,106, 0, -228,181, 0,148,244,254,137,233, 81,226, 3,160,202, 92, 34, 47,143, 97, 2,232,242,158,230, 13,224,203,123, 4,160,151,247,124, -255,246,135, 33,191,164,146,129,153, 75,136, 97,219,194,153, 12, 23, 69, 24, 25,220, 40, 56,183,255,239,223, 63, 12,164,174, 1, - 66,110, 4, 16, 59,196, 79, 40,156,110,221,186, 5,166, 53, 52, 52, 24,222,190,125, 11, 94, 0, 8,170,156,133,133,133,225,141, - 80,208,174, 0, 54, 54,200,130,101,124, 13, 0,144, 57,160,195,130,254,253, 97,100,176,178,214, 7,111, 47, 4,233, 3,237, 36, -144,145,145,129,171, 1,173, 53, 0,141,154,128,204, 6,173, 23, 32,166,211, 7,107, 36,160,179,209, 71, 69, 73, 1,163,195,255, -212, 7, 0, 1,196, 50, 16,150, 82,181,194, 85, 86, 98, 80,202,201, 28, 84,129, 10,170,172, 65,152, 22,151,222, 32, 31, 40, 68, -169,251,168, 5,136,241,231, 64, 95, 0, 4,233,213,131,142,220,197, 38, 23, 74,145,217,160,163,126, 63,127,144, 37, 75, 47,104, - 8,151,152, 45,111,212,106, 4, 80, 3,128,122,252,164,204,213,227, 3,148,152, 3,170,156, 64, 43,252, 65, 83, 59,176,235,123, - 31, 33, 93,223,123,116,239,110,248,245,189,206, 22,206, 4,205,155,253,190,157, 33, 85,176, 18, 83,130,200,219, 4, 9, 53, 2, -168, 1, 76, 77, 77,225,123,253, 65,235, 58, 64,149, 53, 8,128,166, 3, 64, 0,116, 0, 16, 8,192,196, 65, 11, 6,241,133,159, -143,143, 15, 92, 45,200, 60,208, 33, 66, 32, 0,218,101, 0, 2,176, 93, 44, 48,113, 80, 3, 1,223, 8,192,232, 13,167, 67, 11, - 0, 4, 16, 35,176, 53, 53,122,120,243, 40, 24, 5,163, 96, 20,140,130, 17, 3, 54, 47,110, 26,157,199, 0, 2,128, 0, 98, 26, - 13,130, 81, 48, 10, 70,193, 40, 24, 5,163, 96,228, 1,128, 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, - 4,208,104, 3, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24,129, 0, 32,128, 88, 70,131, 96, 20,144, 3, 12,169,112, 13,231,249, -209,213,188,163, 96, 20,140,130, 81, 48, 96, 0, 32,128, 80, 26, 0,190,182, 50,100, 27,180,249, 48,230,190,233,193,110,158,145, -204, 77, 6, 14,198,235, 12, 44, 76,207, 24,152, 24,190,129,247,153,131,142, 2,254, 7, 61,243,159, 17,116,170, 32,227,127,248, - 49,192,204, 12,191, 24, 74, 91, 33,231,136, 99,219,138, 50,210,194, 79,134,130, 21,191, 79,176,108, 3, 26,105,225, 55,106,222, -168,121,163,230,225, 54,111, 20,208, 30, 0, 4,208,136, 30, 1,104,234, 88, 5, 62,239, 95, 83,249, 55,195,141,187,255,225,135, -255,244, 85, 51, 49, 20,181,162, 30,157,218, 91,195, 4,110, 16,160,159, 24,136, 19, 0,213,254,122,241,128,225,227,175,127,144, -227,137, 25,153, 24, 4,196,165, 72, 62,171, 27, 29,240,242,242, 50,124,254,252,153,225,199,155, 91, 12, 28, 34,106,163, 41,120, - 16,128,235, 55,207, 49,252,250,241,141, 65, 95,223,134, 34,115,240,237,141, 38,103,123, 21,181,205,131, 1,208, 53,180,176,173, -139,176, 43,113, 41, 1,232, 23,129, 81,107,139,225, 40, 24, 5,163, 0, 63, 0, 8, 32,172, 13,128,133,139,230, 18,109, 64,124, - 92, 50, 65, 53,212, 54,143,154, 96,246,138, 95,224,115,255,145,111,255, 3,221, 1,128, 82, 64, 1, 43,125, 70,240, 1, 34,255, - 25, 52,148, 33,247, 4,236,123, 72,192,224, 63,191, 24, 60, 46, 76, 99, 56,245,230, 47,195,211,239,255, 24, 94,253, 98,100,120, -200, 38,192,192,170,108,204,160,101,229,204,192,193,201, 73,178, 91,183, 28,184,193,176,105, 26, 48,202,126,130,246,237,254, 97, - 96, 96,191,198,112,236,216,119,134, 51, 87,121, 25, 56,248, 41,107, 12,252,120, 5,108, 80,136,141, 54, 40, 72, 1,151, 46,238, - 97, 80,144,249,201,160,171, 12,186,192,230, 47,195,199,215, 43, 24,158,190,100, 98,248,242, 83,146,193,196,216,150, 44, 51, 63, -190,158,195,192,204,140, 56,236,232,206,132, 10, 6,131,166, 95,100,187, 17,189,114, 94,187,118, 45, 67, 73, 73, 9, 69,254, 6, - 85,254,160,147, 0, 65,251,193, 65, 7, 2, 81,163,194,134, 95, 56,246,127,116, 87, 50,189, 1,177, 55,177,194, 58, 54,179,102, -207, 38,216,232, 68, 62, 43, 0,118,135, 0,242, 93, 2,176,120, 70,190, 25,113, 20,208, 31, 0, 4,208,160, 26, 1, 96, 98,160, -239,214,204,222,106,118,160,141, 63,161,149, 60, 3,184,114,135, 0,102, 6, 91,211,127, 12,135, 79,255,135,138,255,103, 40,106, - 69,213,235, 19,131,223,108,208, 68,130,162, 8, 15,195,231,111,175, 25,152,255,252,101, 96,252,243,159,225,239,231,239, 12, 47, - 78,108,102,216,121,241, 4,131,109,124, 33,131, 16,244,244, 46, 98,192,146,253,207, 24, 24, 21,252,128,172,109,160,227,189, 24, - 24, 88,185,128,150,176, 48, 88, 57,240, 48,232,106,189, 96,152,191,225, 33, 3, 7,151, 60,105,149,254,251, 91, 12, 38,234,159, - 25,172,204,129,141,145,159,160,195, 69,174, 49, 88, 77, 48,101, 16,121,115,150,193,199, 78, 99, 88, 38,248, 11,231,247, 48,176, -179,188, 99, 96, 97,250,197,240,227, 7,176,210,254,202,201, 96, 99, 71,218,149,167,215,110,156, 99,224,229,120,203,224,100,205, -206,160, 32,175,204,192,199,199,207,240,251,207, 31,134,215,175,223, 48,136, 63,122,204,112,251,238, 61,134, 99, 71,223, 49, 88, - 89,251,147,236, 62, 80,229,255,247, 78, 43, 85,253, 76,205, 99,159, 65,189,127, 16, 64,190, 11, 0, 36, 54, 80,199, 1,211, 11, -128,238, 64, 0, 53,158, 48,238, 83, 24,176,202,235, 63,116,202,146, 10, 38, 61, 90,199,192,120, 50, 5,185,142,135,158,146, 9, -189, 13, 9, 9,164,204,248,202, 96, 22, 62, 25,111, 67,110,251,246,237,112,190,135,135, 7,195,142, 29, 59,240,242, 73,234, 4, -161,173, 61, 26, 61, 21,144, 50, 0, 16, 64,120, 27, 0, 71,143,156,100,176,182, 49,167,155, 99,254,145,144,156,145,135, 55,201, - 29,206,252,199,200,196,112,251, 14,164,226, 7,225, 27,119,153,128,137,159,131,225, 47, 35, 59, 67,128,235,111,134, 64,183,239, - 72,163, 1,164,103,181, 7, 79,158, 49,108,121,193,192,240,228, 27,176,191, 14,212,206, 3,172,183, 89, 88,153, 25,216,190,188, -102, 56,176,114, 54, 67, 64, 70, 25,193,179,186, 65, 96,197,250,125, 12,140, 6,233,240,227, 61,193, 35, 0,160,219,221, 88,254, -130, 27, 3,188,130, 66, 12,193, 14,175, 24,214,238,252,201,192, 33, 72, 92, 47,254,199,215,135, 12,137,126, 31, 24,120,197, 37, -192, 23,165,128, 71, 20,126,255, 97,224, 20, 87,100,248, 40, 36,205,176,228,240, 1,134, 24, 91,169, 65,155,112, 65, 87,171, 26, - 26, 26, 18,173,254,202,181,115, 12,255,127, 62, 96,144,151,252,193,192,207,199, 14, 12, 54, 46,134,239,223,255, 48,188,125,247, -157,225,224,158, 9, 12, 28,124, 70, 12,230,102,118, 68,153,197,193,252,154, 65, 77,241, 63,131,182,182, 38,195,243, 23,239, 25, -206,158, 63,199,240,229,203, 87, 6,126,126, 94, 6, 37, 37,121, 6, 38,102, 86,134,191,127, 31, 49,156,191,112,132,193,208,192, -102, 88, 21, 24,160,222,127, 97, 97, 33,156, 15, 26, 9, 0, 53, 2,102,227,233, 21,146, 84, 25, 13,210, 17, 0,216, 73,150,160, - 75,153,176, 93,172, 68, 79,128,220,203,158, 57,115, 6, 3,165, 78, 97,146, 15,134,155,247,119,165, 0,210, 61, 25,255, 7, 85, -252,109,193,178,240,120,244,120, 96,202, 0, 64, 0, 17, 28, 1, 0, 53, 2, 64,128,210,134,192,145,188,219,120,229,109, 38,169, -146,157,216, 96,195, 74,164, 54, 4, 74, 91,190,131,105,208,144, 62,232,246,191, 89, 43, 64, 21,225, 55, 40,102, 96,176, 53,101, - 2, 54, 2, 24, 25,144,167, 4, 32, 35, 2,140, 4,167, 0,126, 51,177, 50,204,144, 10,102,120, 38, 0,212,203,196,204,192,203, -240,147, 65,237,222, 62,134, 71,239,190, 49,124, 0,242, 63, 62,187,207,240,248, 49,176, 66,146,199,127, 36,239,105, 96,239,237, -141,128, 41,131, 24, 43, 43, 3, 43, 27, 43, 67,192,172, 8,134,159, 43,130,224,242, 9,153,150, 12,225,190,162, 12,210, 18, 28, - 12,202, 34,239, 25,158, 18,113,119,209,143,183,183, 24,130, 29, 63,130, 27, 14, 12, 63,126, 66, 26, 19,160, 27,211,128, 13, 0, - 54,118, 54, 6, 38,160,151,127,169,218, 51,172,216, 56,147, 33,194,223,105, 80, 86,254,176,235, 85,137, 5, 63,191, 62,101, 80, -148,254,206, 32, 34,204,205, 32, 35, 45,193,192,197,205,197,240,240,225, 83, 96, 69,253,143, 65, 90,138,151,225,234,245,227, 12, - 23, 56,185, 25, 12,116,141,241,154,115,249,242, 17, 6, 61,181, 95, 12,114,114,138, 12,215,174, 63, 4,246,174,175, 51,188,126, -243, 25, 92, 8, 11, 10,114, 50,124,251,246, 5,216, 48,209,102,248,240,225, 35,195,211,179,231, 25, 46, 94,230,100,208, 39, 96, -230, 80, 1,176,222, 63,232, 54, 64, 24, 0,141, 4,128,248,164,142, 2,128,134,157,177, 93, 47, 11,226, 35, 15, 73, 83, 99,122, -161,185,185,153,193,215,215,151,226,227,120, 65,141, 0,144,251, 86,173, 90, 69, 84,195, 29,116,247, 2,182, 17,130, 11, 23, 46, -192, 47, 7,194,214,136, 5, 85,240,184, 42, 52,228,251, 28, 64,225,151,158,158, 65,209, 40, 4,186,121,204,225, 31, 24,254, 1, - 27, 1,131, 25, 32,135,205, 22, 42,236, 70, 26,201, 0, 32,128,136, 62, 7, 0,212, 16,128, 53, 6,200, 1,248, 42,120,114, 42, -127, 24, 56,120,240, 32,195,211,167, 79,193,152,146,171, 37, 81,215, 0, 64,192,225,211,255,224,173,224,190,106, 70,134,222, 26, - 70,112,229,255,159,129,149,112,192, 50,179, 48,168,154,187, 49,216, 59,122, 48,216,219,187, 50, 24,218,121, 49,240,248,229, 51, - 56, 8,255, 7, 55, 40, 88,128,229,222,149,203,132,195,243,206,221,251, 12,188,194, 50,192,202,159,133,129,141, 21,114,105, 12, -123,196, 58, 56,190,114,233, 30,232,160,110, 48, 54,144,251, 72,148, 95,149, 5,223, 51, 72,139,115, 48, 48,124,255,193,240,225, -213, 39,134, 5, 75, 47, 50,168,155, 78,101,152, 61,235, 36,195,239,175, 31,193, 13, 13,208, 25,226,111, 68, 76,193, 13,144,193, - 88,249,147, 2, 64,189,127, 14,150,231, 12,156,156,172, 12, 28,192, 6,142,162,162, 2,131,137,153, 25,248,156,115,208,221,238, -108,108,204, 12, 66,130, 28, 12, 79,129, 13, 50,130, 45,230,255, 79, 25,120,121,128, 21,253,247, 63, 12, 87,174,220,102,120,246, -226, 35,195,163, 39,159, 24,110,221,251,197,240,252,197,103,134,215,175, 63, 48,220,190,117,143, 65, 69, 89, 25,216,176,224, 99, -120,251,250,209,176,234,253,131,122,252,232, 0, 52, 34, 64,206,125, 6,176,155,229,144, 27, 1, 48, 62, 53,111,156, 3, 85,108, -160, 10, 23, 84,241, 82, 2, 64,183,240,129, 46,248,130,221,198, 73, 76,111, 23,148, 94,177, 85,254,176, 14, 11,186,155, 8,185, - 17,102, 39,232,114, 33,106,142,184,172, 42,228,198,175, 14, 18, 59, 68,153, 9, 26,214,247,244,244,132, 15,239,195,216, 48, 62, -140, 77,202,240, 63,174,158, 62,136, 63,218,251, 39, 31, 0, 4, 16,201,107, 0,168, 53, 34, 64, 77,112,251, 54,100,116, 1,212, - 8,144,150,150, 38, 99, 74,128, 17, 88,193,255,135,142, 2, 48,160,244,246, 33, 73, 31, 50, 23,118,243, 14, 76,254, 23,193, 53, - 0, 24, 54, 48, 50, 49,252,231, 19, 99, 80, 23,230, 96, 96,124,244, 3,124,201,240,247,239,159, 9,234,123,242,232, 17,131,164, - 54, 19, 3, 11,176, 65,193, 12, 30, 90,254,141, 34,255,248,238,103,112, 69, 14,114, 31,223,127,226, 22,139, 25, 72, 2, 27, 10, -223,153,192,254,186,123,235, 53, 67,215,188,135, 12,118,129, 9, 12,159,164, 52, 25,216,158,191, 96, 96,229, 23, 98,248,255,239, - 47, 3,175,168, 12,195,157, 11, 59, 25, 76,141,233,223,131,197, 54,196,143, 92,249,147, 82, 0,190,127,247,138, 65,132,151,145, -225, 15,176,183,255,235,247, 31, 96,143,253, 29,176,145,195,193,240,243,231,111,134,223,127,254, 50,252,249,243, 15, 40,247,159, -225,195,251, 55, 4,205, 98, 99,253,202,192,193, 41,195,240,246,237, 71,134, 79,159,191, 49,188,123,255,157,129, 79, 88,159,193, - 74, 79,143,225,212,209, 29, 12, 82,191,254, 48,124,252,244,145, 65, 93, 93,153,129, 29,216,104,251,250,249,221,176,233,253,131, - 42, 11,216,220, 63, 50, 0,141, 0,144,179, 22, 0,212,152, 64, 30, 77, 64,151, 35,118, 56, 25,114,213, 51,172, 71, 43,196,224, -236,140,122,241, 15,168, 92, 0,129, 77,155, 54, 49,188,121,243,134,172,139,169, 64,107, 0, 96,149, 63, 76, 63,104, 77, 0,161, -202, 21,125,164, 10, 84,249,195, 22,190,129, 58, 44, 32, 26,185, 65, 11, 98, 19,106,252,192,110, 22, 4,209,176,145, 4,124, 97, - 69,168, 60, 4,249, 41,196,114, 15, 3,232,210,233,240,254,175, 12, 76,225, 31,240,154,103, 22,142, 63,172,208,231,248, 9,173, - 9, 24, 5, 3, 7, 0, 2,176,119,109, 41, 13, 3, 81,244,244,129,175,146,212,143,128, 66, 45,248, 64,180,203,240,215,239,124, -184, 1, 93, 64, 86,232, 6,196, 5, 8,126, 73, 32,216,160, 54,157,214,201,180,214,185, 19,174,166, 33,216, 76,139, 10,226,192, - 37,144, 27,146,129, 73,114, 30, 51,201,253,209, 63, 1,150, 41,253, 85,212, 63,149,169, 44, 18, 1,122,161,216, 56, 1,151, 23, - 13, 3,158,180,200,143,192,157,166, 3, 56, 62, 23, 5,102, 36,129,212,191, 5,181,134, 51,142,225,142,251,216, 20, 49, 90,226, - 17, 39,209, 13,110, 99,173,186,223,106, 52,227,142,246,110,149,239,102,103,152,202, 68,131,127, 29,141,230,252,112, 29, 95, 95, -225,252,236,224,195, 1,184, 15,215, 43,117,205, 16,133,209,171, 33, 14, 15,119, 17,118, 58, 93,156,246,122, 38,183,221,156,152, -106,106, 25,225,168, 27, 2,242, 27,224, 95, 84, 71,188,143,109, 75, 27, 59,119,170,217,150, 24, 41, 8,145, 98, 48,144,136,162, - 39,132, 97, 31, 73, 34, 49, 28, 42, 29,169,206, 41,188, 60, 47,118, 80,164,156,152,197,131, 74,165,112,156, 53,116, 59, 46,182, - 90,153,122, 58, 60,218,199,158, 86,253,109,119, 67, 15,191, 62, 70, 19, 11, 41,197,159, 81,255, 65, 16,124, 9,230, 54, 46, 64, -190,164,112, 89,163, 28,129,238, 50,138,150,158,255,124, 48,160, 18, 17, 32, 16,183,117, 10, 73,249,211,220,127, 30,252,105,235, -251,254, 66,160,166,107,243,125,204,110, 0,219,238, 76, 98,243,121,234,127,245,178,205,179, 57, 21, 95, 70, 28,170, 56, 41,158, -231, 25,137, 83, 43,184, 2,203,158,239,187, 27,185, 1, 28,255,109,181,246, 46,128, 72, 30, 1, 24, 76, 61,127, 68, 1,255,151, -172, 59,213, 83,195,217, 25, 52,149,127,129,123,254, 48, 0,106, 8,128, 42,127, 16, 64,140, 8,192,166, 1,152, 25,122,171, 25, -129,189,119, 30,134, 67, 4,214, 0,252,251,243,155, 65,237,216, 76, 6,118,198,127, 12,175,127, 1, 43,238,191,127, 24, 30, 63, -127,202, 48,231, 41, 19, 3, 43,208,188,143,204,140, 12,230,134,132,183,138,201,200, 72, 51, 28, 90, 84,202,224, 85,177,158,129, -137,131, 3,188,226,124,145,118, 62,208, 73, 63,129,173, 39, 41,200,114,221,159, 63,192,203, 20, 78, 95,227,101, 96, 80, 33,236, -239,123, 47,216, 25,244, 69,126,128,179,188,187,169, 56,131,200,219,219, 12,103,127, 60, 99, 80, 22,122,203,112, 68,166,156,129, -149,249, 47,184,242,255,251,227, 51, 3, 3, 3,253, 23, 59,193,122,254,176,222, 13,242, 86, 33, 92,243,166,248,128,160,144, 40, -195,179,251, 87,128, 61,114,102,134, 95,191,255, 49,252,248,249,132,225,241,147,183,192,222,251, 39,134,119,239,190,129, 23, 2, -130,176,128,144, 2, 65,179, 94,190,249,207,240,226,229, 27, 6, 77, 77,101,134, 15,239,223, 51,176, 2, 27,101,159, 62, 63, 97, -248,250,225, 31,131,150,202, 87, 6,113, 81, 81,240, 21,181,236,236,156,224, 41, 1, 70,102,193, 97, 83, 88,224,234,173,131, 0, -108, 45, 0,177, 0, 54, 82,144,159,159,143, 49,170, 0,155,102, 32,119,103, 65, 88, 88, 24, 74, 15, 22, 84,233,195, 42,175,224, -224, 96,112, 67,133,216,131,103,176,245,252, 97, 0,125,164, 1, 99,164, 13,216, 72,133,141, 2,192, 70, 2, 64,110,128, 53, 94, - 97,242,160,116, 14,146,131,245,254, 65,226,143,241,184, 15,164, 62, 43, 43, 19,168,126, 38, 82, 67,226, 63,188, 10, 7,153, 3, -243, 63, 49,141, 9,144,121, 83, 29, 5, 25,194, 39, 64,214, 62,161, 79, 7,128,196, 97,230, 37, 57,178, 14,104, 26, 68,175,244, - 65,252,209, 41, 0,242, 1, 64, 0, 17,221, 0,160, 86,197, 15,234,241,195, 22, 4, 82,210,251, 71, 6,232,149, 63,104, 88, 9, -212,202, 39, 52,244,165,161, 2,153,227, 7,245,244,109, 77, 65,115,254,168,242,200,211, 1, 41,225, 60,160,190, 56,120,243, 13, -211,127,194, 3, 39,160, 33,244,141,151, 31, 49,188,253,253,159,225, 7,176,187,255, 21,216, 11,125,247,135, 9,168,255, 63,195, -155,239,255, 25,212, 61,124, 25,248,120,120, 9, 87,134, 70,134,224,187,205,159, 93,221,207,160, 96,228,193,192,198,198, 14,217, - 5, 0, 90,132,244,247, 23,188,217,190,233,208, 47,134,127, 42, 62, 68,133,215,233, 91,108, 12,250,202,159,193,122, 57,152, 24, - 25,172, 61,149, 24,172,127, 95, 4,242,217, 25, 86,190,100,101,248,245,235, 31,176,242,255,194,112, 98, 78, 41,131,157,185,254, -128, 36, 76, 80,193, 5, 43, 24, 97,139,197, 72,237,249,195, 0,104, 17,222,245, 43,103, 25,254, 63,253,196,240,237,251,111,134, -247,236, 63,128,177,240, 30,216,147,255, 3, 30, 17,120,245,230, 27,195,179,231, 95, 24,108, 29, 9,111,163,252,254, 75,132,225, -222,253,215, 12, 74,138,114, 12,138,138,160,169,128, 55, 12,130, 2,127, 25, 84, 85,249, 25,196, 68,149,192,231, 59,124,248,240, -133,225,236,185, 27, 12, 79,128,246, 73,200,104, 15,217,194, 1, 92,165, 48, 50,192, 87,153, 35, 87,170,248,246,237,227,108, 50, -162,237, 42, 3,141, 2,128, 26, 13,232, 13,128,190,190, 62,134, 93,187,118, 17, 52, 15,150, 46,210,211, 5,145,220,244, 31,163, - 98,134, 53, 0, 64, 61,118, 98,134,255, 81,167, 20,246, 98,173,252,137, 5,160,202, 25, 54,220, 15, 2, 89, 89, 89, 88,229, 97, - 21, 53,161, 10, 27,182, 3, 97,218,180,233,240,181, 18, 6, 6,250, 12,200,243,243,136, 30, 60, 3,193,252, 2, 51,143, 41,236, - 61,220,188, 80, 75,118,148, 80, 15,235,255, 10, 55,143, 24, 0, 42,127,145,119, 74,128,214, 0, 32,167, 19, 74,134,253,211,202, - 59, 80,203,232,206,138,209, 70, 0, 5, 0, 32,128, 8, 54, 0, 6, 99,143, 31, 6, 34, 34, 34, 40,210,207,136, 52,191, 15, 90, -237, 31,232,198,132, 40,112, 24, 65,103, 0,252, 7, 47,248,251,247,159,159, 65, 89,153, 15,216,201,126,205, 0,234,255,255, 99, -252, 79, 68,225,201,200,240,241, 31, 51,195, 27, 96,143,243,207,191,255, 12,159,128, 13,129,207, 64,246, 47,102, 22, 6, 37, 71, -103, 6,123, 59, 79,162,220,168,161,166,206,240,220,228, 25,195,153, 51, 75, 25,110,125,122,195,160, 98, 25, 4,233,229,255,250, - 5,118,251,133,123,159, 25,206,223,231,102,248,173, 26, 69,180,191,255,105,216, 51,108, 58,176,130,193,207,146, 13, 81,194,130, - 26, 53,255, 32,107, 8,126,127,255,204,240,236,210,126, 6, 37,105, 97,112, 3,100, 32, 0,168,224, 66, 94, 69, 13, 42, 64, 41, - 89,197, 45, 35,175,206,112,230,196, 78, 6, 49, 17, 46, 96, 15, 29,146,236,127,254,252, 11,236,189,255, 2,207,227,203, 42,106, - 51,216, 88,217, 19, 52,199,203, 43,152, 97,215,246,249, 12, 39, 78, 93,101,176,181,214,103,144,151,151,103,248,253,235, 7,131, -161,129, 30, 3, 55, 63, 63,195,195,123,143, 24,158, 62,251,192,112,244,248,117,134,247,159,249, 25, 2, 45,237,135,108,225,144, -153,145, 14,207, 41,153,160, 10, 12, 90,129,255, 67,171,244,153, 64,219, 70,254, 35,170, 12,144, 50,111, 44, 5,114, 6,200,140, -255,200,117, 21, 35,195,191,127,255, 80, 70, 1, 64,108, 80,229,225,225,225,142,212, 10, 1,154, 23, 93,139,181,242, 2, 1, 66, -149, 51, 72, 29,177,149, 63, 58, 0,233, 35,212,211, 39, 38, 29,195, 70,179,244,245,245,113,202,195,230,246,241, 1,228,198, 4, -168, 82,133,244,254, 25, 49, 26, 21,196, 2,116,243, 86, 21,242, 96, 52,185,144,197,118, 94,252, 77, 48,172,209,231,252, 71,215, - 0, 12, 94, 0, 16, 64,120, 27, 0, 86,214,102, 52,153,243,161, 86,207, 31, 57, 33,145, 3,174,223,253,207,160,169,140, 40,140, -138, 90, 81,247,208, 65,166, 2,128,189, 97,134,159, 12,215,239,124,102,152,183, 18,114, 66,155,141,233,111, 6, 1,117, 66, 13, - 0, 96,207, 31,104, 28,168,242, 7,101, 44, 54, 41, 85, 6, 41, 9,121, 6, 29, 83, 75, 6, 25, 41,210,206,204,118,116,112,100, -224,225,225, 97, 56,176,127, 7,195,198,125, 11, 25, 24,182, 90, 32, 90,192,151, 12, 24, 12,140, 76, 73,246,251, 11,249, 8,134, -249,187,151, 49, 24,202,126,101, 48, 80,224, 5,119,243, 62,124,249,205,240,249,245, 35,134, 59, 71,214, 49,252,184,177,147,193, -196,196, 24,220, 0, 25, 40, 0, 26,234,135,245,136, 72, 29,246,199, 72,115,208,202,253,214,141,107, 12,207,238, 61, 4, 87, 90, -127,255,254, 7,246,216,133, 24,212, 52,117, 24, 2, 3, 66,137, 54, 75, 76, 90, 15,216, 0,216, 1, 30, 65,208,213, 81, 98,144, -150, 18, 97,120,244,248, 37,195,251,203,119, 25,110,222,122,196,176,119,223, 37,134,135, 79,255, 51,164,164,230,146,229,214,251, - 91, 62, 83, 53, 28, 31, 60,120, 64,150,190,127, 43, 5,201, 86,231,187,137, 72,243,238,206, 71, 25, 5, 0, 79, 35,220, 91,128, -161, 22,155,121,248, 70, 5,208, 43, 57,138, 58, 10, 20,150,129,176, 5,123,184, 42,119, 66,242,216, 70, 21,144,245, 98, 51,143, -164,120,126,184,150, 97,205,132, 56,200,232,135, 37,230, 16, 63,178, 24,161, 6,192,232, 73,142, 67, 11, 0, 4, 16, 11, 45, 19, - 62, 45, 1, 37,103,153,195,192,236, 21,127,145, 42,122,204,115,254, 65,107, 0, 52,148,255, 48, 48, 51,124,133, 87,254, 32,112, -228,244, 47, 6, 31,130,245, 34, 35,195,231, 95,127, 24,128,136,225, 37,176, 99, 29, 22,153, 10,158,191, 39, 23,152,154,152,130, -241,233, 51,160,121, 10,196, 2, 4,114, 42,127, 24,248,173, 29,197, 48,235,220,105, 6,230, 99, 87, 25, 62,188,190,195,112,230, - 37, 63,195,205, 71,254, 12,202,178,226, 12, 14,142, 14, 96,251, 6, 26, 80, 90,241,163, 55, 2, 64,248,194,229,179, 12, 47, 95, -188,100,224,230,230, 38,170,215,143, 81,192,234, 25,131,241,210, 37, 51, 25,174,221, 60,201, 32, 41,206,195,192,193,193, 10, 94, - 76,248,244,249, 39, 6, 70, 22, 89, 96,229, 31, 71,150, 27,121,132,138,168, 26,126,176,189,251,131, 22,156, 43,102, 96, 80, 78, - 68,221, 94,120,150,252, 48,160, 70,153, 5,218, 73,128,104, 72, 80,167, 66, 35, 84, 41,147, 82,105, 83,122,158, 1,182, 48, 67, - 31,246, 31,172, 0, 52,228,143, 62, 13, 48, 10,200, 7, 0, 1,132,181, 1, 64,237,243,248,233,125,190, 63,169, 0,116, 2, 32, -228, 52,192,255,208,173,127, 16,128,216, 5,240,143, 33, 45,156,133, 97,214,202, 63,196, 7, 44, 27, 59,195, 15, 65, 25,134,175, -159,127, 48, 48,112,255, 7, 47, 12,163, 6, 0, 85,202,154, 89, 7, 24, 76,100, 62, 50, 8, 8,171, 48,232,186, 82,102, 30,164, - 1, 1,169,232, 65, 75, 18, 65, 13,140,193, 80,241,211, 18,128, 15,251,209,165,220,156,232,152,116,134, 35,199, 14, 50,188,126, -251,154,225,251,139,111,192, 70,128, 48,131,140,162, 30, 89,141, 10,106, 53,106,105,105, 30,106, 79,239, 31, 3, 3,181,142,238, - 6,246,248,225, 59, 2,238, 45, 28,240,244, 65,201,144,255, 80, 4,110, 62,225, 36,245,220,205, 8,200,211, 98, 13, 0,104,142, - 31,182, 0, 16,212, 8, 64,151, 27, 5,228, 1,128, 0, 98, 25, 13, 2, 80,187, 23, 22, 12,127, 48,206,253,135,140, 14, 48, 51, -168,170,128,110,241,251, 66, 82,171,218, 35,139, 54, 9,179,176,164,148,102, 97, 49,220, 43,127,106, 3,114, 43,251,161, 0,102, -189,239, 96, 72, 19,172,192,148, 88, 45, 68, 93,243, 64, 61,254,179, 69,163,137,105,128, 64, 72,246,148, 33,209,232, 68,110, 4, -140, 86,254,212, 1, 0, 1,196, 8, 12,192,209, 73,155, 81, 64, 50, 48,164,194, 30,220,243,163,153,119, 20,140,130, 81, 48, 0, - 96,243,226, 38,198,209, 80, 96, 96, 0, 8,160,209, 17,128, 81, 48, 90,121,143,130, 81, 48, 10, 70,193, 8, 4, 0, 1,196, 52, - 26, 4,163, 96, 20,140,130, 81, 48, 10, 70,193,200, 3, 0, 1, 52,218, 0, 24, 5,163, 96, 20,140,130, 81, 48, 10, 70, 32, 0, - 8,160,209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, 2, 1, 64, 0,161,172, 1,240,181,149, 33,219, 32,108,103,107, 83, -219, 60,123, 51,105,130,250,190,190,123, 1,103,115, 11, 73,192,217, 7, 79, 61,197, 80,251, 83, 84,156,160,121,187,251,115,224, -108,215, 66,196,106, 89,246,215, 47,201,114, 31, 46, 64,174,251,112, 1,108,238, 51, 49,148, 34,168,239,205,253,171,112,182,136, - 34,226, 24,219, 51,231,159,209, 60,252, 60,118,227,191,251,157, 95, 74,138, 33, 22,233,122,213, 41,226, 8,251,119,184,166,209, - 60,253,161,155,119,243,230, 77,140, 11,109, 64, 87,227,170,171,171, 15, 72,254, 24, 53,111,232,153,119,249,242,101, 56, 91, 87, - 87,151, 98,243,144, 47, 58, 66, 94,145, 63, 20,195,111, 20,208, 30, 0, 4, 16,193, 69,128,176,203, 48, 96,128,146,115,177,105, - 97, 30,168,194, 7, 85,244,176,138, 95, 66, 86, 1, 76,191, 32,226,110,119, 92, 21, 22,168,162,130, 85, 92, 83, 55,157, 2,211, -217,126,102,195, 50, 1,128, 42,124, 80, 69, 15,171,248,181, 77,172,193,244,213, 51, 71, 7, 60,252, 54,127,249,194,176,243,235, - 87, 6,119,110,110, 48,205,240,242, 37,195,169,242, 50,176,156, 89,103,215,128,134,219,129, 3, 7, 24, 86,172, 88,193,240, 3, -116, 19, 35, 18,224,224,224, 0, 31, 81,237,224,224, 48, 90,186,140, 2,172, 21, 62,168,162,135, 85,252,148,230, 55,216,157, 39, -176,138,159,146,252,134,126, 75, 34,181,182,244,225,106,148,140,130,129, 7, 0, 1, 68,176, 1, 0,170,172,121, 52, 67, 81,248, -148, 84,216,224,155,181,184, 69, 41, 54, 15, 86,225,115,242, 11,131,217,176,138, 31,223,136, 0, 49, 61, 85,179,232, 10, 48, 27, -150,145,112,169,195,183,255, 20,221, 78, 54, 54,200,153,251,160,195, 48, 64,103,159,131, 0,232, 6, 67,152,251,153,152, 89,137, -238, 69,131,128,164, 24,164,231,251,235,211, 7,134,159,127, 32,135, 19,125,249,243, 23,238,126,126, 49,194, 45,113, 88,133,207, - 47,165, 12,102,195, 10, 34,220, 35, 2,130,116, 11, 63, 16,200,121, 9, 25, 33,128, 85,254,176,138, 31,220,243,222,181, 27, 67, -157, 15,145,233,230, 35,247, 27,134,183, 60,175, 25, 62,188,189,195, 32, 38,160,201, 32,243, 70,133,228,180, 7,234,249,175, 92, -185, 18,163,242, 7, 1,144, 24, 39, 39, 39,131,164,164, 36,214,145,128, 81, 64,124, 71,129,146,114,134,152,203,192,232, 93,241, -195,242, 27,136,141, 43,191, 33, 70, 4, 4,137,170, 84, 65,249, 13,196,198,149,223, 96,234, 8,229, 55,144,186,233, 11,150,163, -138, 37, 68, 82, 28,134,232,141,138,193, 22, 47, 35, 29, 0, 4, 16, 11,161,200, 67,174,252, 65, 0,196, 39, 55, 18, 65,250,144, - 43,127,240, 8, 0,144, 79,170,121,160, 10, 22, 84,113,242,243, 65,110,211,131,209,216,212,129, 26, 6,132, 70, 3, 64,149, 18, - 40, 35,197,135, 7,129,249, 48, 26,155, 58, 80, 70, 35,165,117, 13,186,169, 80, 70, 70, 6, 76,255,250, 5,186,119,254, 43,184, -242,127,255,254, 61, 89, 17,198,195,194,204, 48,111,194,122, 6,118,126, 96,135, 24,232,173,211, 95,158, 50,188,126,113,135, 97, -113,127, 37, 73,189,126, 80, 65, 36, 35, 5,153, 34,129,209,184, 43,127, 6,170,133, 31, 49,135,171,130, 42,117, 80,197,223,156, -147, 13,230, 55, 35, 85,252, 75,110,221, 66,173,252, 73, 56,173,245,193,255,195,192, 18,243, 41, 67,132, 92, 12,195,207,127, 42, - 12,236,255,254, 51, 92,127,179,151,225,252,238,155, 12, 42,255,178,136, 14, 63,208,176,255,247,239,223, 25, 22, 44, 88,192,144, -144,144, 0, 23,135,241, 65,114,160,145, 0, 74,207,160, 31,201,149,255,170, 85,171,128,121,196, 21,216, 65, 8, 37, 89,255,121, -232, 52,209, 96,169,108, 64,149, 58, 40,191,221, 58,127, 12, 92,241,163,231,183,125, 91,215, 49,136,139,139,163, 76, 7, 16, 42, - 71,137,201,111,224,202, 23,249, 58, 71, 18, 42,127, 16, 0,137, 81,163, 17, 64, 13,176, 5,207,185, 35,163,135, 1,145, 15, 0, - 2,104,200, 45, 2, 68,175,252, 49,122,120,159, 62,131, 43,124,144, 26, 92,163, 2,248, 42, 47,116,176,112,229, 58,112,133, 15, - 82,131,171,149,141, 13,128,122,253,160, 74,159,143,143,143,225,222,189,123,224, 10, 31,212,251, 39,183,242, 7,245,250, 65,149, -127, 96,110, 11,131,103,148, 21,195,150, 43, 79, 25, 94,124,103,160,184,242, 71, 7, 79,158,189, 0, 15, 71,138, 10,242, 65,155, -136,204, 84, 9, 63,143,224,120, 72,191,134,133,149,164,202, 31, 4,106,167, 76, 5, 99, 88,229, 15, 26, 17, 40,117,131,246,249, - 69,217,136,171, 20,248,183, 49,184,133, 72, 49, 36,202,103, 49,176, 50,241, 48,112, 51,112, 49, 48, 49, 48, 51, 72,139, 91, 51, -216, 4, 59, 51,220,147,234, 39,202, 28,208,208, 63,216, 95, 11, 23,194, 43,125,108, 52,178, 90,114,192,225,195,135, 7,117, 62, - 76, 75, 75, 3, 95,155,187,116,233, 82,154, 85,254, 66, 66,123,200, 50, 3, 84, 97,129, 48,232, 52,206,243, 72,107, 70, 6,178, -242,111,173, 42, 4,143,118,206,153,220,131, 81,249,131,196,167, 76,153, 66, 84,126, 67,175,252,113,229, 55, 79,107,232, 29, 26, -188,220,100, 85,254, 40,141, 0,180, 94,252, 40, 24, 62, 0, 32,128, 88, 8,245,254,123,107,146, 25,210,162,220,225,226,179,150, -237,100, 40,110, 33,189,117,141,220,251,215,242,176, 96,104, 88, 3,185,222, 43,140, 71,140,228, 81, 0,108,149, 63,168,226,255, -254,241, 45,152,141,220, 64, 0,137, 19, 2,216, 50, 19, 40, 35,157, 90,218, 1, 31,102,131,169, 1,137, 19, 3,148,149,149, 25, -222,190,125, 11,198,160,198, 0, 19, 19, 19,184,103, 8,170,252, 65, 13, 3, 80, 67,128,148,139, 75,214,110, 88,207,176,237,220, -119,134, 9, 5,110,224,198, 0, 23,183, 16,195,227,175, 79,193,149, 63,168, 97, 0,154, 2, 96, 38,210, 60,108,149, 63,168,226, -255,248,236, 46,152,173, 33, 35,198,240,224,245, 7, 6,118, 46,118,134,159,223,127, 82, 28,126,149,179,183, 48, 44,105, 43, 98, -208, 81,210, 98,184,126,255, 58, 65,243, 96,149, 63,122,143, 31,188, 14, 0, 8,238,165, 55, 50, 4,110,157,203,160,109,166,196, -112,245,236,125,130,230, 93,100,219,194, 96,237, 32,206, 32,202,173,201,240,253,255,103, 6,230, 95, 95, 25,216,254,252,100,248, -200,244,151,225, 7,227,127,134,127,108, 60, 12,210,182, 38, 12,107, 42,219, 24, 66, 12,170,240,154, 5,155,247,103,103,103,135, - 87, 54,200, 67,157, 48, 62, 72, 13,104, 20,128,220,181, 0, 75,150, 44, 99,176,181,181, 29,180, 5, 7,168,130,166,101,207, 31, - 84,249, 87, 85, 85,145,221,251, 7, 1,216, 85,183, 3,221,131, 5,229, 55,208, 90, 39, 80, 69,127,246,236, 89, 6, 37, 96,165, -175,102,104, 5, 30, 17,128,173,135, 2,201, 83, 43,191,117, 37,248, 48, 76,222,113,130, 65, 66, 73,146,225,197,195,151, 3,234, -119,228,245, 9,200,249,131, 92, 48,218,219,167, 46, 0, 8, 32,130,107, 0, 96,149, 63,175, 86, 24,195,231,107,171,192,252,226, -150,185, 20, 89, 10,171,252,169, 1,144,135,247,177,141, 12,128, 26, 5,144,221, 0, 79,137, 50, 15,121,120, 31, 91, 75, 27,148, -201,192,171,217, 95,227,207, 88,127,254,252, 1, 95, 0, 4,170,248, 5, 5, 5, 25,190,125,251, 6, 30,254, 7,119, 90, 69, 69, -193, 13, 3, 82, 46,224,248,241, 30,232, 30, 78, 78,134,210,201,135, 25, 92,245, 25, 24, 30, 2,203,185,211, 80, 57,144,216,164, - 66, 71,134,191,255,254,146, 28,126,200,139,143,156,141, 53, 24, 88,120,153, 24,118, 30,184,198, 96,168, 33,203,192,199,195,206, -112,240,204, 29,240, 34,193, 7, 88,118, 1, 16, 10,191, 77,215,128,254,123,206,192,224,231,204,200, 48,123,203, 61, 6, 97, 65, - 69,134, 32,107, 70,162,194, 15, 86,249,195, 42,125, 16,248,223, 0,236,165, 75,127,100, 96, 76,173,103,248,223,216,204,192,192, -244,157,129,241, 84, 27,120, 55, 0,190,139,161,127,104, 60,100,144, 23,240, 98,248,244,247, 11,195,207,247,119, 24, 22, 63, 90, -198,112,196,239, 61,131, 86,138, 35,131, 91, 46, 15, 3,167,160, 58, 3, 7,139, 32, 3,139,223, 71,134,211,235,136,187, 12, 9, - 20,175,200,241,135,206,167, 4,128,122,255,160,198,225,145, 35, 71, 24,108,108,108,168, 98, 30, 8, 80,179, 65, 17, 16,240,139, -230,149,191,188,188, 60, 89, 21, 14,242,212, 11,108, 20,128,154,183, 74,146, 3,156,188,131,192, 35,129,160, 6, 0,168,210, 55, -134,178, 65,192,216,216,152,193,195,222, 4,158,223, 64,139, 4, 31, 16,185, 42, 30, 57,191, 61,223,208,193,192,171,205,193,192, -163, 90,192,176,170, 35,133, 65, 95, 71,130, 65,221,167, 5, 28, 38, 3,185,202,126,116,206,127,240, 2,128, 0, 98,193,215,251, -135, 85,252,216, 0, 41,107, 1,176,205,253,163, 3,208, 72, 0,232,238,119, 82,230, 77, 97,189,123, 92, 83, 2,196,244,254,209, - 91,209,184, 42,126, 82,122,255, 32,240,230,205, 27, 6, 49, 49, 49,120, 79,241,247,239,223,240,133,127,252,252,252, 12,172,172, -172, 12,143, 31, 63,102, 96, 37,210,188,249,123, 14, 50,164,248,216, 51,192,250,147,183,254, 64,134,255, 65,192, 65,141,129,129, -175,101, 63, 67, 97,137, 21, 73,254, 5,245,250, 65, 64, 78, 76,136,225,253,207,159, 12, 44,124,204, 12, 63, 94,127, 3,213,102, - 12,146,242, 50, 12,187,246,157, 38, 43,252,226,139, 91, 25,238, 31,221,203,192, 2, 52,254,131, 56, 3, 3, 23,208, 60, 11, 5, - 69, 6, 39,123,226,182, 53,162,247,252,151,132,167, 48,172,253,121,147,129, 65,229, 7, 3,195, 73, 22,208, 66, 8, 6, 6, 95, - 99, 6, 25,223,120,226, 70, 99,164,133, 24,126,253,122,199,192,250,231, 55,184,242, 63,158,192,207, 96, 23,232,207,160, 33,166, -201,112,101,215, 1, 6,195,208,175, 12,172,191,190, 50,252,209,248, 7,108,151, 16,183,104, 20, 86,217,195,214, 0,160,243, 41, - 1,160,222,255,204,153,211,129,249, 33,139,226, 6, 0,168,242, 95,186,116, 57,220,125,228, 54, 2, 64, 67,254,160,202, 25, 84, -241, 71, 71, 71,131,241, 96,171,252,177, 13,247, 15,150, 81, 0, 16,240, 8,142, 97, 80, 82, 82,130,143, 4,192,122,254,226,146, -146, 20,229,183, 52, 95, 59,134, 19,207, 94, 49,240,234,243, 50, 60,221,121,151,129,129,131,157, 33, 56, 55,142, 65, 72,198,103, - 64,253,139,107,234,128,146,184, 24,189, 12,136,186, 0, 32,128,136, 94, 3, 0, 27, 9, 0, 77, 1, 80, 11, 52,132,248, 49,112, -242,242, 66,134,194,129, 24,212,139, 34, 5,128,122,247,248,214, 3, 32,122,255,196, 1, 80,239, 30,223,252, 26,188,247, 79, 4, -248,244,233, 19,195,231,207,159, 25,126, 2, 43, 86,208,220,255,235,215,175,225,195,255,160,209,128, 47, 95,190,144, 52, 5,176, -126,114, 13,195,129, 43,192, 70,205, 3, 96, 99,226, 59, 3,195,164,114, 71,248,240,255, 57, 96,185,119,225,249, 81, 6,102, 18, -195, 31, 52,228, 47,196,207,205, 32, 44,196,205,160,174,166,201,112,239,254,107,134, 91, 79,223, 50,200, 9,243, 51,252,124,249, -138,225,207,239, 63, 40,103, 1, 16, 19,126, 86, 14,254, 12, 54,142,145, 12,235, 55,175, 98,216,127,104, 21,195,178,190, 98,134, -224,226, 54,134, 75,191,129, 13,150,183,175,136, 10, 63,228,185,254, 68, 43,115,134,104, 45,121,134, 85,235,247, 49, 92,186,244, -128,161,239,242, 89,134, 21,174,113, 12, 12,115,143, 49, 60,125,250, 26,229, 44, 0,156, 67,176, 63,216, 25,254,254,122, 3,108, - 4,124, 4,243,197,165,101, 25, 52, 52, 53, 25, 62,113, 66,214, 98,124,255,247,141,129,233,231, 87, 6,206,175,204, 12, 47,159, -227,111, 0,192,226, 12, 52,196,143,188, 11, 0,157, 79,105,239, 31,214,168,160,100, 45, 0, 72, 47,168, 49, 49, 99,198, 52,112, -131, 2,212, 16, 32,215, 60, 90, 12,249, 83,179,242, 71,239,253,195,214, 40, 32,143, 2, 12, 52,128, 77,177,161, 3,228,252,134, -124, 22, 0, 49,249,205,214, 84,157,193,197, 90,141,161,181,169,135,161,119,194, 54,134,186, 37,251, 24, 50,156, 76, 24, 94,108, -220,198,240,241,253, 39,130,149, 45, 72, 62, 51, 33, 18,167,124, 38, 5,139, 0,233,209,232,218, 66,133, 75,201, 70, 50, 0, 8, - 32, 38,124,189,127,228,202, 31,180, 22, 0, 50,255, 63, 23, 99, 20,128,220,222,255,253,163,144, 85,230, 76,192, 74,145, 5,216, - 35, 14, 23,144,100, 40, 42, 34,238, 90, 80, 88,239, 30,223, 98, 64,178,122,175,120, 22,215,144, 2, 64,195,254,160, 74, 31, 52, - 2, 0,106, 8,128,134,253, 97,139, 2, 65, 21,197,135, 15, 31, 72,106, 0,164,181,174, 0, 87,250,252, 10, 12,224,134, 64, 94, -231,126,112,229, 31,148,223,206,240,228,223, 11,134,165,125,101, 12,204, 76,196,155, 7,235,253, 27, 27,171, 49,136, 42, 41, 48, -136,137,138, 48,176, 1,245,255, 97,252,207,240,250,235,119,134,247,159,127,144, 21,126,189, 29, 27, 24, 2, 52, 21,129,254, 20, -102,224, 18,149, 98,248,253,238, 61,195,249, 45,203, 25, 62,188,123, 68, 86, 2,157,215,145,195,192, 80,232,194,192,242,231, 23, -131,194, 87, 6,134, 87,204,159, 24, 38, 61, 7,246,148,216,248,136, 54,227,199,221, 79, 12,111,152,190, 51, 60, 98,251,198, 96, -162,226,200,160, 21,199,195,112, 79,240, 0, 48, 78,206, 51,200, 90,220, 99,248,200, 4,108,168,253,255,206,240,109,201, 63, 6, - 14, 30, 94,162,122,254,180, 2,160, 10, 59, 58, 26, 82, 32,199,196, 68,129,249,228, 2, 80,133, 15, 50, 3, 6, 64,230,130,196, -200,235,205, 9,226, 28,246, 39,119, 65, 32, 53, 43,127,244, 10, 30,185,193, 2,106, 20, 12,244, 8, 0, 40,191, 29, 63,126, 28, - 62,231, 15, 26,246, 7, 1, 16,127,229,166,109,100,231,183,141,235, 27, 24,220,203,115, 25,188,188,156, 25, 68,216,153, 25, 62, - 3,243,239,206, 91,143, 25,142, 95,121, 74,180, 89,184, 26, 1, 48,177,193,180, 8, 16,212,227,135,225,209, 70, 0,229, 0, 32, -128,136,234,114,131, 42,127, 16,160,116,238, 31,163, 96, 6,246,240,126, 1, 43, 67, 38, 96, 69,198,204,202,194,192,202,198, 14, - 94, 56, 69, 74,239, 31, 91,197, 15, 90, 23, 64,110,239, 31, 91, 70, 3,205,179,145,210,251, 7, 1,208,112,191,132,132, 4,120, - 4,224,229,203,151, 12,207,158, 61, 3, 55, 10, 64, 21, 63,172, 87, 66, 74, 3, 0, 52,220, 95,211,178, 31, 60, 2,208, 93,108, -203, 80,159,111, 5,110, 20, 44,237, 5, 86,252, 44,108, 12, 44, 64,179, 88, 72, 48, 15,212, 27,145, 20, 17, 96, 96, 5, 66,160, - 75, 24,158,223,191,202,240,240,213, 71, 6, 41,126, 94,134,239,223,126, 48,156,187,251,148,228,222,127,112, 82, 17, 3,171, 16, -168, 65,199,192,176, 96,219,125,134,181,211, 74, 25,220,147, 11, 24,174, 92,191,200,144,237, 44, 79, 82,248,129,122,255,189,126, - 97, 12, 12, 31,128,233,129,145, 21,152, 8,123, 24, 66, 78, 31,102,232, 48, 11, 96, 56,118,226, 50, 3, 99,127, 25, 81,189,127, - 16,184,248, 66,132,129,241,251, 71,134, 47, 12, 95, 25,190, 1,211,151,114, 48, 31,131, 76, 16, 43,195, 71,119, 30,134,159, 50, -106, 12,127,254,126, 99,248,253,230, 41,195,209,201, 31, 25, 84, 84,148, 7, 44, 51,130,230,252, 65,105, 2, 54, 76, 15,163,201, -233,181,131,244,128, 26, 43,200, 67,254, 48, 54,200, 30, 82, 1,104, 79, 62,174,161,127,114, 70, 7,168, 89,249,163,247,254, 33, - 21,107, 40,198, 22,194,129, 28, 5, 0, 45,248, 67,158,243,207, 74, 10, 3, 15,255,131, 0, 72,124,251,177,115, 36,247,254,195, - 93,204, 25,248,255, 9, 50, 48, 1,243,240,218,254, 92,134,105, 91, 46, 48,132,153,106, 51,220,191,243,136, 33,164,109, 49, 73, -141, 30, 88, 35, 0, 25, 35,235, 31,232, 70, 0,122,165, 15, 19, 27, 5,148, 1,128, 0, 98, 34,212,251, 7, 1,208, 58, 0, 66, -107, 1, 72,233,253,131,230,251,195,249, 36,192, 67,254,172,236,192,202,139, 21,130,217, 56, 57, 24, 66,133,101, 24,218,218,218, - 72,238,253,163, 87,252,164, 84,254,216,122,255,232, 21, 63, 41,149, 23,164, 80,124, 15, 30,230, 7,205,245,195,122,255,160,169, - 0, 24, 77,106, 3, 0, 52,220,127,238,233, 65, 6, 30, 9,200,162, 63, 94, 96,163, 9,212, 40,224, 99,103, 5,246,174,159,128, -123,255, 44, 68, 78,161,192,122,255,178, 66,188, 12,215,238,221,103,248,243,235, 23, 3, 59,176, 17,241,229,203, 15,134,139,247, -159,129, 43,126, 82, 42,127, 88,248,249,231, 52, 51, 44,157, 52,145,225,219, 63,160,217,202, 50, 12, 87,174,158, 96, 40,242,213, - 39, 43,252, 64,160, 72,217,132, 97,243,237,125,192,200,253,195,192,192, 33,194,176,251,212, 53, 6,198,246, 92,112,197, 79,108, -229, 15, 2,250,191,124, 24,142,238, 62,197,192,240,235, 51,195, 23,198,207, 12,239,153,190, 48,124,100,249,205,240,251,239, 39, - 6,246, 31,223, 24, 56,158,221,103, 88, 81,117,155, 65,193, 64,141,168, 5,128, 32, 0, 58,236, 7, 6, 64,141, 86,228,134, 43, -178, 28, 41, 21,246,226,197, 75,193,195,245,200, 32, 54, 54, 26, 60, 10, 64, 74, 35, 0, 54,239,143,220,251, 71, 30, 5, 0,217, - 67,201,212, 2,172,199, 15,170,196, 65, 0, 52, 50, 64,202,162, 64,106, 87,254,160,138,157,208,200, 12,168,113, 48, 80,231, 50, -128,242, 27,242,106,255,154,218, 66,112,126, 3,237,253,135, 53, 2,144, 79, 71, 37, 54,191,165, 56,232, 49, 20,244, 76,100,248, -252,242, 21,131, 40,159, 24,195,213,107,143, 24, 18,250,150,193,183, 65,146,211,136, 66,198, 48,177,193,210, 8, 24, 5,212, 7, - 0, 1,196, 66,140, 34,208,234,127, 88, 67,128, 26, 96,213,151, 87,144,194, 72, 68, 22,226, 8, 96,239,159,133,141,141,225, 59, -176,194, 20, 4,102, 10, 46,102, 46,162,123,255,232,219,255, 88,255,255,102, 96,248,243, 13,209, 19,103,225, 34,169,247,143,190, -253, 15,108,199, 43,196, 10, 90, 98, 78,217, 67,110, 4,128, 0,104, 36, 0, 4,222,189,123, 7,158, 2,128, 13,255,147,210, 0, -128, 53, 2, 24, 24,218, 25, 50, 67,237, 25, 24, 38, 29,102,152, 86,237,205, 16, 82, 60,145, 97, 89, 71, 54,184,247,207,198, 78, -220,232, 9,172,247,127,237,209, 43, 6, 21, 89, 17,134,189,123, 78, 64,252, 38, 5,233,253,254,254,137, 24,142,100, 37,194, 76, - 88,239,191, 37,201,153, 33,175,126, 1,131,172, 18, 35, 69,225, 7,235,253,187,173,159,199,176, 11, 88, 97, 49,202, 88,128,197, - 65,231, 3,128, 0,232,136, 96, 24,240,229,225, 33,202,207,122, 63,203, 24, 46,110,223,194,240, 67,253, 24,131,130,170, 14,195, - 39, 96, 29,125,159,225, 33,195,231, 7,175, 25, 94,183,253,101,248,242, 94,134,161, 48,174,152,232,184,152, 62,125, 58,184,162, - 7,109,237, 68,174, 88, 64, 98, 32, 57, 82, 43,127, 80,133, 13,154,167, 71, 7,160, 69,128,160,202, 13, 36, 15, 74, 47,132, 22, - 5,130, 22, 14,130,212,131, 42,127,108, 11,254, 96, 98, 32,243, 64, 24,189,193, 65, 92,186,134,244,248, 95, 66, 79, 97, 36,117, - 65, 32,104, 52,129, 90,149, 63,172,114, 39,182,130,162,244,132, 65,114, 0, 40,191,181, 54,212, 48,172,219,188,157,193,221,198, - 8, 37,191,129, 48,104, 71, 0,104,129,224,163,183,223, 24,228,132,137, 43,175, 64,189,255,130, 89,155, 25,170,146,221, 24,164, - 36, 28,224,141, 11,152, 31,145,195,154, 82,128,188,149,111,160, 22, 84,194,134,249, 71,123,253,212, 5, 0, 1, 68, 84, 3,128, - 26, 21, 63, 7, 15, 55,184,151, 15, 2, 73,178,234, 12,172, 28,236, 12, 60,130,144,227, 46,191,127,254,204,240,251, 23,164, 7, - 1, 26, 5,224, 4,246,206,136, 1,176, 45,128,160,222,254,191,191,191, 33,149, 63, 20,252,102,100, 37,120,196, 46, 58,128,109, -169, 1,245, 86,145, 43, 45,114, 42,127,228, 70, 0,242,193, 63,160, 70, 0,201, 17,128,214, 8, 88,140,116,102,205,236, 54,164, - 19,236,126,127, 97, 80, 36,210, 28, 80,239,255,212,155, 15, 12, 23,110, 67,134,250,145, 43,125, 82, 42,127, 24, 0,245,254,215, - 26,113, 51,228, 4,106, 80, 37,252, 64,189,255,226, 77,171, 24, 24, 91,235, 25,182,139,155, 51, 76,248,114, 5, 69,222,144,133, -149, 65,134,131,157,164,176, 3,141, 4,108,223,244,131,225,201,251,187, 12,175,223, 62,103,120,121,139,135,129,249, 47, 31,131, -181,158, 45,131, 99,156,227,128,100, 64,228, 10, 27, 23,128, 85,218,160,158, 59, 8, 99,107, 40, 32, 42, 67,194, 21, 58,200, 60, - 74,182, 4, 82, 99, 11, 32,104, 77, 1, 53, 42,127,244, 94,234, 96, 5,160,252,102,105,105,137, 53,191,129, 42,127, 16, 32,166, -242,135, 1, 80,239,223,117,207, 73,134,232,250, 69, 12,118,118,118,224,209, 4,108, 13, 45,106, 1, 88, 35,128,212,179, 95,112, -137, 83, 35,206, 70,231,254, 41, 7, 0, 1,132, 82,255,192, 14,171, 32, 21,128,244,125,199, 33, 14, 55,239,235,107,132,165, 44, - 44,224,161,113,208, 2, 57, 16, 6,245,154, 96,244,205,255,223, 25,188,188,188, 24, 46, 60, 96, 32, 56, 10, 0,170,248,153, 65, -189,125, 32,102, 70,171,248, 73, 61,226, 16, 54,212, 15,170,184,208, 43, 47, 82, 43,126,126, 81, 41,134, 95,191,126, 82, 45,146, -162,155, 23, 51,220,190,113,149,170, 17,127,234,214, 99,120, 65,132, 94,249,147, 82,241,195, 64, 28,176,242,167, 86,248,129, 0, -104,142, 31, 86,241, 35, 87,254,228, 84,252,200,192, 83, 49,132, 1,222, 74, 34, 99, 97, 59,168,183, 9, 59,237, 15,212,211, 71, - 62,249, 15,196,134,245,254, 65,108, 98,134,156,137,237,129, 83, 90,105, 83, 19, 80, 99, 11, 32,189,123,225, 3, 13,240,229, 55, - 82, 42,126, 24,112,173,153, 77,151,138,159,146,134, 22, 45, 26,102,216, 42,253,209, 81, 1,242, 1, 64, 0,177,160, 39, 28,114, - 19, 15,182,131, 38, 40, 49,239,194, 3,236, 7, 87,192,230,246, 97, 21, 63, 3,133, 21, 63,108,110,154, 90, 21, 23, 8,252,249, -251,143,228,209, 7,124,224,213,187,143,100,187, 5, 29,192,230,246,169, 85,241, 83, 59,252, 96,115,251,160, 97,126,106, 86,252, -163, 96, 20, 12, 4,128, 45,236, 3, 13,239, 83,163,226,135, 85,170,200,195,252, 35,161, 81, 5,170,228, 71, 43,127,234, 3,128, - 0, 98, 4, 6,224,255,209, 96, 24, 5,163, 96, 20,140,130, 81, 48, 82,192,230,197, 77,140,163,161,192,192, 0, 16, 64, 76,163, - 65, 48, 10, 70,193, 40, 24, 5,163, 96, 20,140, 60, 0, 16, 64,163, 13,128, 81, 48, 10, 70,193, 40, 24, 5,163, 96, 4, 2,128, - 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24, -129, 0, 32,128, 80,118, 1,248,218,146,191,210, 28,219, 46,128, 81,243, 6,151,121, 63, 94, 60, 38,219, 60, 14, 9, 89,186,249, -151,249,255,127, 6,150,127, 12, 12, 63,153,241,175,211, 97,253,203,192,240, 7,216,132,253,207, 56, 26,191,163,230,141,154, 55, -220,204, 27, 5,180, 7, 0, 1, 52,236, 70, 0, 40, 61,174, 18,116,103, 55,104,139, 13, 12,131,248,163,128,126,128,253,239,127, -134,191,140,140, 40,149,255,163, 71,143,192, 23,169,156, 59,119, 14,204,134,129,223,204,144,202,159, 92, 64,235,139,125, 70,193, - 40, 32, 5,220,188,121,147, 34,189,160,235,212,169,233, 22,106,154, 55, 10, 6, 39, 0, 8, 32,150,225,228, 25, 74, 43,107,144, -254,142,142, 14,134,176,176, 48, 12, 51, 65,247,120,147,107, 38, 8,131, 14, 68, 2, 29,140, 4, 50,135, 20,179, 64,231,174,147, - 2, 64,110,199,183, 31,120,247,238,249, 36,155,247,254, 61, 55,221,226, 16,185,226,127,245,234, 21,248, 50, 37,208, 17,184,160, -179,246, 65,183, 40,130, 26, 0,167, 79,159,102,208,215,215,103, 80, 81, 81,161,200, 46, 82,143, 98,134, 52, 48, 51, 73,214,131, -239,228, 62,234,155,151, 78, 64,239, 76, 12, 53,196, 30,216, 2, 74,199,109, 34,193, 12,255,183,222,101, 96, 57,128,121,123,220, -223,174, 83, 12,255,183,221,101,136, 20, 93, 7,108,201,105,144,228, 39,119,119,200,117,227, 59,119, 82,231,186,113,216, 85,192, -160, 19, 7,169,189, 63, 30, 84, 57,246,247,247,147,116,183, 64,106,106, 26, 3,168,189,137, 43,201,149,148, 20,147,108, 38,114, - 58,158, 48, 97, 2,131,189,189, 61,184,210, 94,182,108, 25,248, 58,114, 82,220,134, 81, 49,176, 48, 51, 68, 88,177, 49,164,103, -164, 51,116,237,232,102, 40,113, 45,129,203,205,158, 61,107,180,230, 28, 38, 0, 32,128,240, 54, 0,112,157,155, 61, 16,231,105, -211,163, 1,128, 92,249,131,252, 7, 59,108, 3,100, 46, 57, 13, 0, 88,131, 2, 86,209,192, 78, 69, 44, 47, 47, 39,205,188,213, - 66, 36,216, 74, 56, 94,190,250,102, 17,111, 28,137,247,218,224,170,128, 72, 61, 21,236,227,199,143, 12, 98, 98, 98,240,158, 58, -232,148, 72, 80,131, 0,116,143, 2, 63, 63, 63,195,169, 83,167,192,114,164, 54, 2, 64,113, 10,139, 7, 80,188, 4, 7, 7,131, -227,154,148,198,192,166, 77, 27,224,108, 63,191, 0,130,124, 66,224,251,177, 28, 68,112, 91, 77, 65,225,163,139,129,216,132,192, -142, 29, 59, 48,196, 14, 29, 58, 4,191,100, 11, 57, 46,150, 44, 89, 66,116, 90,238,236,236,100,104,117, 48, 0,215, 98,160,198, - 44,122, 25,240,127,249, 93,220, 53, 28, 9,241, 51,152, 15,180,129, 85,254,160, 48,132,220,209,176, 20,124,187,162, 87, 84, 53, - 65,189,199, 78, 97, 23, 95,191, 26, 82,249,131, 46, 9,155, 53,107, 22,216, 76, 62, 57,123,188, 21, 62,242,232,213,141, 27, 55, -192, 98,145,145,144, 70, 89, 84, 84, 20,201, 13,137,158,221, 61,112,246,139,157,207,193,230, 45,203, 7, 29, 84,196,200, 80,238, - 81, 6, 76, 84, 16,185,229, 11,151, 49,100,216, 15,158,145,129,209, 59, 2, 40, 3, 0, 1,196,132,175, 32, 7, 21,148,160, 4, -137,173, 0, 37,103,168,157,218,195,233,232,230,193,122,217,228, 2,144, 95,145, 79, 47, 4,209,228,246,252, 97, 13, 10, 70,104, - 97, 9, 42, 48, 96,110, 35, 39, 28, 24,195,222,195, 49, 49,226,132, 0,207,150,233,112, 76,140, 56, 41,149, 63,168,112,130, 21, - 80,228, 12,179,131,238, 78, 0, 85,242,160,219, 34,147,146,146,192, 71,207,178,177,177,129, 27, 1,160,145, 0, 80,152,130,110, - 85, 4, 93,163, 10,106, 40, 16, 3,174, 93,187, 6,118,223,154, 53,107,224,113, 2,114,219,218,181,107,193,189, 38,144,252, 96, - 4,216, 26, 4, 3,209,176, 6, 85,254,160, 52, 28, 37,182,158, 33, 82,100, 45,214,184,175, 54,191,192,192,178, 63,130,100,243, - 65,225, 95, 90, 90,202,160,168,168, 72, 21,247,130,204, 3,245,252,133,133,247,210,172,231,143, 92,249, 83, 2,144, 43,255,226, -226, 98,162,204, 68,207, 83,160,222, 63,232, 88, 96, 16, 0, 53, 2, 64, 35, 1,164,148,207,216,204, 11,183,132,244, 13,151,229, -115,130, 71, 2,202,220, 75, 7, 93,222, 24,189, 11,128,114, 0, 16,128,189, 51,182, 97, 16, 6,162,104,148, 38, 67,165,241, 16, - 20,102,137,244, 94,194, 18,236,144, 1,216,195,115,120, 4,215,201,187,232,196, 9,129,136,129, 34,138,184,142,194,150, 37,227, -255,238, 14,228,127, 93,110,161,141, 94,213, 90, 9,219,234,169, 22,180, 42, 34, 71,139,210, 52, 25,216, 3,236, 37,136,239, 13, -155, 80, 80,253,111,241, 91,248,245,176,240,159, 19,152, 26, 65, 42,165, 8,252,189,247, 2,248,156,179,120, 71,224, 33,161, 62, - 18,234,196,199,231,128,111, 4,174,235, 58, 1,127,211, 52, 34,224,236, 5, 64,227,153,232,251,254, 84,131, 21,248, 19, 64,122, -122,197, 55,123,107,187, 90, 91, 42,120,198,176, 47,156,141,163,254,205, 8, 33,200,124,115,215,230,110,129,127,140, 81,222, 33, - 18, 12, 64,173,150,202,181,238,143, 22,254, 58, 39,239,123, 74,169,218,166,153,117, 49,158,179,162, 65, 18,224,156,147,117, 14, -195,176, 94, 92,152,174, 13,213,255,187,232,191, 60, 31,227, 53,197,116, 2,218,251,237,211, 9, 56,225,255, 87,241, 18, 64, 44, -248, 50, 36, 40,243,131, 26, 0,160, 76, 4, 99,131,128,177,177, 49, 73,153,156,214,149, 63, 45, 27, 0,212, 6,160, 6, 5, 53, -195, 98, 48, 1,106, 20,220,119,238,220, 1, 23,134,160, 30, 62,136, 13, 50, 19, 84,200,253,250,245, 11, 92, 80,129, 26, 0, 32, -250,239,223,191,224,134,194,250,245,235, 9,166,197,189,123, 33, 61, 65, 80,101,143,174, 22,198,135, 85, 20,196,164,107,244, 97, -125, 66,124, 98,122,249, 48,128,107, 58,128,152,161,127,116, 0, 26,246,135,245, 12,201, 5,160, 57,127,208,176, 63, 75, 58,182, - 57,255,147, 12,255,183,221, 99,184, 71,234,148, 22, 90,111, 29,214, 8,131, 85, 70,160,248, 34,119, 26, 0,102,158,170,170, 42, - 70,229, 70, 46,200,204,132,172,211,128, 53,130, 64,124, 80, 69, 13, 50,155,220,202,223,222, 26,114,125, 25,168,231, 95, 82, 82, - 2,238,117,195,204,244,245, 75,101,248, 75,164, 57,200,189,127,100, 0,155, 14,216,182,109, 27,131,134, 6,104, 61, 6, 55,209, -230,133, 91, 98,222, 99, 2,153, 14, 96, 96, 88,190,236, 60,195, 77,137,155, 68,155, 71,203,202, 63,173,188,131, 97, 86,103,197, -104, 45, 78, 1, 0, 8, 32,188,107, 0, 64, 11,208, 96,189,126, 88,229,143,109,238,143,148,202, 26, 95, 79,144,152,121, 98, 66, -230,161,203, 15,212, 85,161,160,112, 67,190, 67, 27,221,189,212,154,235,252,191, 74,144,170,238,254,226, 67,218,162, 52,100,191, - 97, 43,108,145,197, 96,106,241,197, 9,232,186,100, 94, 94, 94, 48,125,236,216, 49,112, 67, 0, 84,249,131,122,251,160,194, 18, - 54,255,249,251,247,111,240, 2, 65, 98, 26, 29,176, 17, 23, 92,225, 13, 18, 7, 77, 13,128,212, 17, 19, 39,180, 90, 3, 0,170, -228,209, 43,122, 24,159,156,134, 0,168, 98,160,180, 17, 0, 90,240, 7,234, 18,194,242, 61,242,122,152,255, 43,238,131,229,200, - 93, 35,131,222, 8, 3, 1,208, 40, 0, 40,157, 80,107, 29, 0,104, 20, 0,182,246,129, 92, 51, 65,105, 12,121, 78,221,198,198, - 6, 92, 89, 83,210,243, 7,153,249,231,207, 31, 12, 51, 15, 30,253,203,208,211, 73,220, 28, 59,172,247, 15,171,236,113, 1,208, - 20,131,119,116, 13, 65,243, 80,231,254,177,140, 20,144,104, 30,173, 43,255, 81, 64, 57, 0, 8, 32, 22, 98, 50, 39,172,247, 63, - 24,123,254,200, 0, 84, 72, 13,150,109,123,232,195,252,232,171,175,137,173,108, 8, 14,223, 33,205,253, 83,163, 49,128, 60,247, - 79,108, 99, 96,211,166, 77, 88,197, 23, 47, 94,204, 16, 27, 27,139,214, 59,246, 3,135, 3,174, 69, 59,160,202, 30, 84,249,131, - 86,252,131,214, 1,128,174,137, 6, 21,148,160, 2, 19,212,235, 7,201,131, 42,127, 16,155,148, 17, 7, 66, 83, 86,160, 94,227, - 96,152,154, 33,180, 32,144, 84, 0,107, 4,144, 93, 64, 28,136,196, 25,118,160,181, 0,148,172,187, 65,239,253, 35, 55, 26,201, -105, 32,163,247,254,241, 53, 76,137, 5,160, 21,245, 48,179, 65,141, 0,106,204,251,195, 58, 83,160,209,172,194,194, 66,240,208, - 63,194, 76,226,211, 52,104, 90, 11,219, 21,209, 43, 86,172, 96, 56,120,240, 32, 56,127,192, 26,219,196,236,179,159, 48,113, 2, - 67,132, 5,102,239, 63,122,210, 55,134, 21,199,126,131,205, 51,140, 50, 4, 47, 2, 28,221,183, 63, 60, 0, 64, 0, 17, 60, 7, - 0,148, 17, 97, 9, 22,121, 61, 0, 49, 0,212, 43, 0,205, 13, 82, 11, 16, 50, 15, 36, 79,110, 33,142,188,247, 31, 25,195,118, - 5, 80, 58,143, 72,234,118,190,161, 6, 64, 21, 59, 8, 35, 3, 88,229,143, 44,135,171,177, 0, 3,160,222, 63,168,114, 7, 45, - 4,124,243,230, 13,152, 6, 13,245,131,240,151, 47, 95,192,219,155, 64,235, 2, 64, 35, 2,160, 17, 0,144, 90,130,141, 36, 96, - 5, 0,234,225,147,210, 96, 27,202, 0, 84,225, 35, 99,100, 0, 10, 83,100, 64,204,156, 51,174,107,189,145,215,182, 80,163,247, -143, 60, 10, 0,138, 47,106,174, 5, 0,153, 71,106, 30, 6, 85,246,160,138, 20,182,232, 15,212, 8,128,133, 39, 57,219,245, 64, -160,186,220, 30,108,230,191,149, 2, 96, 51, 65,189,105,152,153,135,142,253, 67,234,103, 19,238,253,131, 27, 97, 72,189,255,229, -203,151,130,167, 39, 64,230, 23, 20, 20,144,228, 70,112,239, 31, 8,151, 34,245,254,163, 38,126, 99, 96,142,248,200,176,252,216, - 47,176,121,157, 59,186, 6, 52, 93,143,246,254,169, 15, 0, 2, 8,239, 8, 0,104, 85, 60,242,188, 63,242,122, 0, 98, 43, 52, - 88,165, 13,235,185, 83, 58, 36,143,205, 60,216,200, 0, 72,142, 90, 67,254,200,219, 0, 7, 27,128,245,250,169, 53,252, 15,235, -245,147, 58,252,143, 92,249, 35,179,145, 43,121,124,114,216,128,176,176, 48,195,219,183,111,193, 61,253,215,175, 95,131, 71, 0, - 64, 61, 37,216, 8,192,215,175, 95,193,141, 1, 80,229, 15,106, 8, 16,211,251,132,245,238,241,109,107,133,169, 35,206,191,180, - 91, 3, 64,142, 60, 58,128, 13,121, 99,173,128,170,171, 25, 90, 91, 91, 25, 68, 68, 68, 6, 52, 13,227,234,253, 35, 3, 82,214, - 2,224,234,253, 83,210,243, 7,237, 62,137,137,137, 1,167, 61, 80,152, 86, 85, 85,129, 71, 84, 64,226,228,128,154, 10,123,134, - 3, 7, 14, 48, 48,174, 17, 6,243,119,213,240, 50,184,181,124, 6,155,217,218, 9,233,177, 19, 59, 90, 1,219,247, 15,233,241, - 47, 3, 86,250,135, 25,254, 51,254,103, 40, 44, 40,100, 80, 87, 87, 39,217,109, 32,243, 34,172, 88, 81,123,252, 12, 16,243,196, -221, 36,168,178,150, 98,180,242, 31,124, 0, 32,128, 88,136,233,249,131, 42,127,244,245, 0,164, 12,209,161, 87,218,212, 26, 9, -128,153, 71,139, 97,127,152,127,169, 86,105, 51, 14,207,235,167, 97, 83, 27,176,138, 24,148, 62,208, 71, 2,240,201,161, 3, 25, - 25, 25,240,226, 63, 80,101, 15,234,237,131,134,251, 97,243,254,160,105, 1,216, 22, 67,216,194, 64, 98,230,158, 65,233, 20,100, - 55,108, 20, 0, 57,221,130,226, 24,155, 56, 62, 64,239, 53, 0,232,211, 2,132,226, 3, 31, 0,111,215, 3, 54, 2,194,195,195, - 25, 86,174, 92, 73, 86,156,163,231, 55, 24, 31,180, 96, 48,217, 97, 57, 67,228, 30,252, 7, 1,129, 14,253,185,127,255, 62,214, -243, 10, 96, 0, 36, 15, 2,196, 28, 12, 4, 58,244, 39, 52,212,153,193,213,245, 30,206,245, 8,111,223, 58, 3,201,247, 64,255, - 19, 46,183, 64, 97, 4, 11, 71,216, 40,196,174, 93,187, 32,149, 35,153,149, 63, 19, 19, 35,164,193, 14,171,252, 47,253, 97,152, -191,255, 23,152, 13,170,252, 73, 45, 35, 96,121, 2,212,227, 7,209,133, 69,192,138, 95, 77,157, 44,183,149,150,149, 64,205, 99, - 0,247,248, 97,230, 73,184, 73, 66,102, 36, 6, 81,209,133,107,209, 31,168,129, 48,122, 22, 0,233, 0, 32,128,112, 54, 0,144, -183,251,161, 15,245,129,228, 72,157,195,166,229,116, 0,165,251,255, 71, 1,229, 0,121, 8, 29,185, 18,130,157, 39,129, 46,135, -111, 14, 17,212,179, 1,173, 94, 6,205,253,131, 14,254,129,173, 1, 0, 1,208,168, 0, 72, 12,196,135,157,172, 72, 12,200,207, -207, 7,207,153,194, 26, 2,232,115,254, 32,249,129,110,164,129, 42,122, 82, 43,124,124,149, 23,174, 6, 2,168,183, 76, 78,229, -143,171,114, 69, 44, 10, 36,173, 33,142,239,168,217, 7, 15, 30,192, 27,104,196,150, 51,200, 83,149,152,254,118, 33, 57,252, 64, - 35, 81,160,138, 31,125, 62,157, 84, 0, 50,243,223, 74, 65,112,165, 15, 2, 11,128, 21,255,138, 99,191,192,102, 30, 62, 78,254, - 52, 7,104,234, 0, 52, 52, 79, 78,143, 31, 25,192,242,214,202,227,191,193,230, 73,184, 75, 34,181, 52, 70,203,182,225, 12, 0, - 2,136, 5, 95, 65, 1, 59, 24, 7,189, 55, 69,202, 20, 0,182,130,130,154,141, 0, 90,153,141,124, 28, 48, 57, 0, 84, 57,225, -155, 87, 38,181,193,130,107,184,159,220,105, 0, 92,195,253,228, 76, 3, 32, 47,112, 68, 47, 36,241,201,225,235,221,120,123,123, -131,231, 96, 65, 7, 0,129,134,251, 65,141, 0,208, 46, 0, 1, 1, 1,240,186, 0, 82,119,163,104,105,105,129,237,223,189,123, - 55,124,197, 63,236, 92,128,193,124,242, 28,181,193,190,125,251,192, 97,187,101,203, 22,170, 84,254,200,149, 28,104, 59, 32, 49, -163,113,160, 67,127,208, 59, 23,232,160,172,172,140,232, 53, 0,160, 67,127, 8,153, 7,234,249,147, 90,105,147, 50,178, 66, 12, -112,111,249,140,194,167,164,242,159, 54,109, 26,213,210, 68, 79,119, 47,164,183, 63,136, 1,174,222,253,232, 73,128,148, 1,128, - 0, 34,184, 13,144, 20,241,129, 4,131,109,255, 63,174,133, 83,228, 53, 68,168, 87, 65,129,205,227,164,158, 63, 97,211, 36,176, - 6, 13,182,105, 19,116, 57, 98,195, 5, 52,220,122,247,238, 93,134,253,251,247,131, 23,253,129,166, 5, 12, 12, 12,192,126, 32, - 55,190, 93, 93, 93,193, 24,214,243, 33,167,215, 79,235, 53, 0,132,248,196, 84, 94,216, 86,135,147,122,200, 12, 8,128,207,247, - 95, 14, 58,223, 31,179, 1,144,242,201,144, 33,217,113, 5, 3, 75,122, 4,252, 32, 32,152, 26,124, 35, 60,196,196,191,179,179, - 51, 73,121,141, 26,106,144,195, 15,148, 46, 2, 3, 3,225,119, 20, 80, 10,152,194,223,131,205,244,243, 79,131, 55,114, 97,219, -253,208,143,246,165, 55, 48,142, 49, 26,173, 9, 71, 40, 0, 8,160, 97,113, 25, 16, 53, 90,231,131,181, 23, 72,109,119, 81,251, - 98, 31, 90,135,155,178,178, 50, 24, 99, 3,160, 53, 0,160,115, 2, 64,152,126,105,109,250, 32, 55, 15,119, 94, 0, 45,104, 35, - 21,128, 46,247, 1,157,239, 15,155,246, 67, 6,160,202, 31, 52, 71, 76,202, 84,204, 72, 40, 75,176,155, 73,218,100, 58, 61,183, -217, 13,166,179,253, 71, 1,125, 1, 64, 0, 49,250,196,212,142,222,137, 58, 10, 70,193, 40, 24, 5,163, 96,196,128,205,139,155, - 70, 87, 55, 0, 1, 64, 0, 49,141, 6,193, 40, 24, 5,163, 96, 20,140,130, 81, 48,242, 0, 64, 0,141, 54, 0, 70,193, 40, 24, - 5,163, 96, 20,140,130, 17, 8, 0, 2,136,101, 52, 8, 70,193, 40, 24, 5,163,128, 62,128, 17, 23,231, 63, 10, 53, 10, 70, 1, - 93, 0, 64, 0,141, 54, 0, 70,193, 40, 24, 5,163,128, 94,149, 63, 35, 3,248,200, 93,220,235, 1,255,195,208, 40, 24, 5, 52, - 7, 0, 1,132,210, 0,240,181,149, 33,219, 32,108,171, 86, 71,205, 27, 53,111,212, 60,250,153, 23,231,167,139,194, 7, 93,171, - 12,219,230,136,188,213, 12,118,154, 34,242,214,179, 69,155, 46, 99,152,247,225,193,126, 6, 14, 14, 14,184,126,216, 53,205,232, -230,193, 46,102, 2,157,211, 0, 2,160,211, 27,121,101,237, 70,227,151, 36,243, 24, 25,152, 89,216, 25,254,255, 3,157,119,241, -135, 97,203,145, 39, 12,232, 59, 3, 9,153, 7,138,131,151, 47, 95, 50, 72, 72, 72, 80,197,125,212, 54,143,212,240, 27, 5,180, - 7, 0, 1, 52,226, 71, 0,170,171, 79,161,240, 91, 91,205, 6,151,121,167,170, 33,230,152,181,162,176, 41, 5,132, 78,140, 35, - 36, 79,169,249,163, 0, 19, 48,253,250,202,192,242,246, 62,131,234,143, 75, 12,210,127, 30, 51,220,250,175,200,240,132, 87,139, -225, 27,159, 60, 3, 27, 55, 47, 65,253,160, 27,229, 64,215,202,194, 42,126, 88,133, 13, 98,163, 87,216,160,202, 26,134, 31, 62, -124,136,213,188,115,231,206,129,143, 1,231,228,228, 4,223,199, 0, 50, 11,217, 76, 88,165, 15, 50, 15,134, 65,135, 54,129, 78, -226,115,144,181, 27,182,241, 4,242, 55,232,148,192,227,199,143,131, 15,166,194,118,230, 2, 73, 35, 3,140, 76, 12,236, 28, 66, - 12, 2,130,234, 12, 95,191, 60,101,248,242,249, 49,116,148,128,248,209, 0, 80, 60,128, 14,184,186,117,235, 22,152, 15,138,179, -226,226, 98,178,221, 4, 51,239,222,221, 59,224,248,102, 99,103,103, 40, 40, 40, 28,208,243, 10, 70, 1,245, 1, 64, 0, 13,217, - 6, 0,161,219,221, 64,128,152,203, 93, 96, 21, 52,122,197, 77, 46,160,182,121,163, 0,179, 97,129, 12,134, 69, 35, 3, 88,168, -126,126,120,157,225,227,161, 85, 12,223,190,253,100, 80, 48,103, 98,224,148, 97,100, 80,125,116,137,193,148,225, 34,195,251,159, - 60, 12, 23,184,226, 24,222, 48, 74,227, 53,230,218,181,107,224,194, 26, 84, 33,129, 42,108, 24,134, 53, 8, 96,189,126,208,169, -138,160,202, 26,212, 83, 7, 85,254,160,211, 1,153,133, 77, 48,204, 3, 93,186,116,254,252,121, 6, 11, 11, 11,240,137,140,172, -172,172, 40,102,130, 42, 9,144, 89, 32, 12, 50, 11,116, 88, 19, 72, 61,232,214,198,225, 6, 64, 23, 1,161,151, 45,159, 63,127, - 6, 31, 76, 69, 13,243, 22, 47, 59, 11,172,180,197,128,241,199, 6,105, 0, 48, 50, 64, 70, 0, 64, 3, 56, 68,212,185,207,158, - 61, 3,135,123, 84, 84, 20,248, 76, 6,216, 49,198, 66, 66, 66, 12, 38, 38, 38,120,245, 38,184, 99, 30,186,116,249,198, 13,134, - 3,188, 92, 12, 69,253, 77, 12,134, 70, 58, 12,207,159,188, 98,216,181,237, 0,131,130,142, 33,195,167, 79, 31, 71, 11,162, 97, - 2, 0, 2,136, 5, 95, 33, 11, 43, 92, 9,241, 7,162,242,207,202,202,194,171, 6,116, 92,236,242,229,203,137,106, 4,192, 42, -107, 74,123,235,180, 48, 15,185,231, 79,141,222, 63,114, 5,138, 94,153, 18, 74, 7,244,174,232, 97,199, 8, 35, 31, 39, 12, 2, -239,222, 65, 14, 31, 18, 18,218, 51, 44, 50,225,175,199,215, 24,216,143, 45,102,248,249,237, 31, 67,144, 10, 51,131,186,232, 31, -134,127, 66,255, 25, 88,133,152, 25, 62,191,101, 99,224,252,252,157, 65,243,226, 20,134,179,106, 25, 12,223,184,228,241,244, 36, - 25, 25,174, 95,191, 14,174,172,157,156,156,224,149, 54, 8,131, 42,108, 80,229, 15,170,168, 65, 21, 54,168,167,254,248,241, 99, -240, 41,139,160,198, 0,182,163,148, 64,122, 64,234, 47, 94,188, 8,110, 84,128,122,149,160,219, 25, 97,230,193, 26, 0, 32,179, - 64,149,207,229,203,151,193, 23, 54,145,114, 48, 19,232,204,127,144, 59, 64,149, 41,200,189,226,226,226,224, 27,253, 96, 83, 15, -164, 2,106,155, 7,242, 99, 77, 77, 13,202, 13,139,160,202, 27,212,216, 18, 19, 19, 3,223, 94, 73, 78,229, 63, 47, 41,137,193, -203,208, 16,204,151,200,205,101,224,228, 18,103,248,242,233, 17,195,167,143,119,129,241,244, 23,114,121,208, 63, 6,162,123,220, -160,138, 30,116,195,227,162, 69,139, 24,226,227,227,193,183,110,130,196, 64,247, 5,128, 14,204, 98, 96,144,195,171,255,109,123, - 17, 10,159,231,215,111, 6,169, 63, 63, 24, 10, 74,235, 25,250,123, 26, 25,186,123,166, 49, 72, 51,253,101,152,214,211,199,224, - 20, 17, 69,208, 60, 90, 1,216,209,191,200, 96,244, 24, 96,242, 1, 64, 0,225, 29, 1, 64, 63,255,155, 16,159,158, 96,176, 94, -213, 75, 43,128,220, 8,160, 4, 32, 55,226,230, 7, 46,194,169, 46,113,125,220,128,246,174, 97,118,163,211,132, 26, 45, 67, 13, -252,248,240,134, 65,237,254, 86,134, 87,204,127, 25, 84,248, 25, 24,228,229,254, 51, 48,235,177, 49,176, 0,243, 21,219,207, 31, - 12, 63,143, 62,102,248,249,145,133,129,249, 31, 43,195,143, 61,139, 25,152,188,242, 25,254,177, 96,159, 14,128, 13,207,131,110, - 83, 20, 20, 20,100,112,116,116, 4, 87,124,160,138, 16,212,107,135,245,250, 65,149, 52,168,199, 8,186,228, 6,164, 7,132,241, -153, 7,210,119,245,234, 85,240,244, 2, 31, 31, 31,216, 76,144, 56,168,242, 7, 85, 46,160, 91, 27, 79,159, 62, 13,110, 8,128, -236,129,173, 5, 32, 4, 46, 93,186,196,112,236,216, 49,240,205,127, 32, 51, 64,238, 4,205, 55,131,122,172, 86, 86, 86, 12,220, -220,164,157, 90, 73, 77,243, 64,126, 0,249,237,221,187,119, 24,114,176,171,129, 65,157, 11, 82, 27, 22, 76,192, 30, 62, 58,120, - 49,121, 50,131, 68,128, 12, 67,119,247, 68, 96,252,124,133,134, 61, 35,195, 63, 80,229,255, 31, 50, 4, 64,168, 25, 0,154,254, - 57,121,242, 36, 67, 69, 69, 5, 56,110,130,130,130, 24,100,101,101,193, 13, 60,208,197, 90,230,238, 36,156,246, 7,108, 72, 46, -185,243,156, 97,237,237,167, 12,155, 54, 46, 4,154,199,200, 80,148, 27,203,160, 47, 33,194, 48,171,160,158, 97, 54,169,230,209, -176,242,135,137,143, 54, 2,200, 3, 0, 1, 68,246, 20,192, 64,223,156,166,167,167, 71, 80, 13,108, 62,108,168,246,254,113,141, - 2, 12,102,128,109,132,129,156,134, 4,190, 53, 4,195,165,231, 15, 30,205,184,122,142,225,217,211, 79, 12, 82, 2, 44, 12,172, -255,126, 51,176,136,252, 99, 96,177,244, 96,224,144,168,101,248,247,231, 17, 3,195,149,120,134,255,119, 63, 49,188,253,198,198, - 32,199,252,141,225,226,165, 99, 12,252, 70,238, 56, 43,108, 80, 5, 12,234,161,223,190,125, 27,220, 35, 4,157,169, 15,170,248, - 96, 21, 51,104,152, 30,116,149, 50,168,103, 8,170, 40, 96, 13, 3,108, 0, 38, 15,170, 72, 65,106, 64,249,201,193,193, 1,220, -179, 4,217, 1,106, 76,124,252,248,145,225,204,153, 51, 96, 54, 72, 12, 54, 37, 64, 76, 79, 29,116, 49,211,139, 23, 47,192, 71, - 61,131, 42,234,175, 95,191, 50,220,184,113, 3, 60, 37, 1,114,179,145,145, 17,209, 21, 44,216,188, 61,123, 25, 94,126,252,197, -192,167, 98,193, 32, 33, 42,203,240,251,235, 71,134, 55,183,207,128,197, 73, 49, 15, 20, 78,160, 6, 4,200,191, 32,115, 65,101, - 13,168,194,135,141, 2,192,134,239, 73,169,252, 65, 21, 63, 39,167, 8,176,167, 47,193,176,116,197, 37,134,232, 8, 61,240, 40, - 0, 8, 36,205,155, 7,166, 97,149, 63, 88, 61, 35, 8, 51, 50,252,101, 36,188, 8, 0, 84,193,131, 48,232,154,103, 94, 94, 72, -227, 16,116,145, 27,168,225,243,230, 13,176,129,169,166, 70, 82,154,156,120,254, 54,195,196,115,183, 24, 54,206,239, 98, 96, 97, -254,206,192, 8,140,251,174, 9,243, 24,252,188,156, 25,158, 49,177, 80,124,251, 32, 37,149, 63,122, 69,143,171, 81, 48, 10,136, - 3, 0, 1,196, 66,110, 5, 63,220, 22,131, 12,149,134,192,144,168,212,222,185, 80, 92, 89,227,170,252,145, 71, 2,134,195,252, - 63,223,143,183, 12,219, 30,253, 96,144,126,207,204, 96,200,199,200, 32,250,154,129, 65,133,133, 31, 88,248, 11, 51,252,255,241, -146,225,235, 75, 70,134,171,143,254, 49,188,248,250,131,129, 5,212, 83,255, 7,108,212, 18,209, 0, 0, 13,213,131, 46, 82,146, -150,150, 6, 95,126, 4,170,204, 65, 21, 27,104,110, 24,212, 91, 4,169, 1, 85,236,176,251, 20,254,225, 48, 15,102, 38, 72, 45, - 40,207,131, 70,253, 84, 84, 84, 24,248,249,249,193,195,254,160, 57,127, 80,227, 0,100, 31,104, 4, 0,132,137,233, 28,128, 70, - 12,158, 60,121,194,160,175,175, 15,110, 84,200,200,200,128, 27, 0,162,162,162,224,209, 61,208, 2, 59, 82,134,238, 65,230,189, -124,247,145, 65, 72,205,130, 65,201, 54,156, 65, 64, 70,141,225,231,215, 15, 12,143, 78,110,101,184,189,119, 33, 73,230,193,214, - 62,128, 70, 73, 64, 83, 8,160, 10, 20, 52,186, 0,171,248,145, 27, 2,200, 83, 3,184, 0, 51, 11, 7,120,129,159,128,144, 58, - 48, 60, 89,193, 21,253,220,249,251, 25,146, 18, 29,225,230,165,166,166,130,253, 14, 51, 15, 18,134,208, 50, 22,207, 58, 0, 80, - 92,110,222,188, 25, 60, 37, 42, 41, 9,185,209,111,239,222,189,224,134, 11,104,202, 6,132, 65,183, 63, 30,187,246,157,168,112, - 92,118,243, 49, 67,239,233, 27, 12,115, 58,202, 25,100,212,229, 25,190,126,121,207,176,113,251,105,134, 75,151,111, 50, 8,252, -255,199,192,246,226, 37,131,119, 78, 52,195,209,171,223, 25, 70,193,208, 7, 0, 1,196,130,171,144, 69,190,214,147, 16,127, 40, - 3,106, 86,208,180, 48, 15,220,152, 24,196,189,127, 98,134,228,201, 89,184, 55, 82,118, 17,188,126,243,152,225,216,243,239, 12, -222, 92, 92, 12,135, 31,255, 99,144, 50, 98,103, 80,252,121,150,225,253,181, 44,134,245, 93,151, 24,254, 61,248,200,240,229,215, -127,134,167,159,255, 50,112,178, 48, 49,252,249,248,130,129, 31, 79,163, 29,185, 17, 0,170,236, 64,139,252, 64,189,106,109,109, -109,240,186,152, 19, 39, 78,192,231,242, 9,205,215,131,204,131,141, 2,192,204, 3, 53, 2, 64,115,236,186,186,186,224,138, 26, -212,168, 0,137,131,228, 97,187, 4,112, 77, 41, 32,131, 71,143, 30,129,237, 7,237, 50, 0, 85,254, 32,189,160,233, 5,115,115, -115,176, 27, 65,242,160,198, 4,177, 0,164,254, 31, 19, 27,131,180,129, 11,184,242,103, 98,102,101,224,228, 19,101,144, 51,247, -102,120,120, 98, 19,209,230,129,252,247,225,195, 7,134,167, 79,159, 50,200,201,201, 49, 88, 91, 91,131,221, 6, 27,246, 7,205, -175,195, 0,168, 17, 68, 12,224,224, 16,102, 16, 22,213,103,248,245,243, 35,195,155,183,231,129,238,120, 15,108, 4, 64, 22, 74, -194,204,123,249,226, 5,138,121,160,250,159, 80, 59,234,249,243,231,224, 43,179, 65,183,102,130,226, 3, 4, 64, 11,255, 64,163, - 1,149,149,149,224,198, 11, 2, 16,222,102,119,235,211, 55,134,242,131, 23, 24, 58, 74,210, 25,108,125, 92,128,149,255, 27,134, - 85,235, 14, 50,204,156,187,150, 97,123, 81, 2,131,210,171, 39, 12,157,159, 94, 0, 27,245,194, 68,153, 71, 77,128,109,136,127, -244, 42, 96,202, 1, 64, 0,225, 28, 1, 64,159,219, 39,196, 31,142,128, 86, 91,240, 72, 5, 45,166, 45, 3, 62,229, 66,108, 79, - 29, 91,131,128,118, 55,172, 13,125,112,241,221,119,134,143,191,254, 49, 92,124,253,135,225,217,135, 63, 12,226, 39, 88, 24,244, - 86,221, 97,120,248,224, 42,195,205,147,191, 24,254,176, 48, 51, 0,165, 25,126, 0, 27, 1,239,129, 61, 48, 81,193,255,120, 43, -108,228,237,127,176, 21,251,160,189,220,242,242,242,224, 94, 33,108, 59, 31,136,134,169, 39, 53,109, 33,159, 33, 0,163, 7,107, -250, 36, 21,128, 26, 52,160,145, 8, 16, 80, 84, 84,196,104, 32,129,166, 59, 64, 0, 52, 12, 14,186, 2,185,179,179, 19, 76,227, - 3,160,109,126, 32,240,253,219, 75,240, 10,255,191,127,127, 96,152,183, 9,136, 65,107, 55, 64,163, 43, 96,243,254, 51, 48,224, - 27,100, 5, 53,230, 38, 79,158, 12,238,221,131,214,102,128,192,209,163, 71, 25, 54,108,216,192,144,157,157,141, 86,249, 19, 6, -207,191,253,100,136,221,118,130,161, 32,204,155, 33, 36, 54,152,225,219,143, 79, 12,235, 55, 29, 96,152, 48,109, 25,195, 34, 55, - 83,112,229, 63, 88, 0,242,176,255,104,229, 79, 25, 0, 8, 32,186,108, 3, 28,236,187, 10, 6, 59, 24,106,133, 43,165,115,244, -176,244,128, 47, 93, 12,151, 17,130,239,127,249, 24,126, 51,190, 96, 56,243,230, 39, 3, 11, 48,154,247,222,251,193, 32,177, 26, - 88, 9, 73,138, 49,220, 97,251,194,192, 2, 44,232,127, 50, 48, 49,112, 49,131,107, 91, 6,118, 97, 9,130, 21, 51,108,127, 63, -104,104, 30, 52, 31, 15, 90,169,206,195,195, 3,110, 4, 92,185,114, 5, 46,142,237, 64, 32,116,243, 96,251,251, 65,234, 65,235, - 7, 64, 98,160,197,101,160, 30, 50,104,200, 25,180, 56, 16,212,179, 6, 77, 37,192,236, 37,102,122, 16,212,187, 6, 77, 1,128, -206, 12, 0,205, 91,195,166, 0, 64, 11,217, 64, 83, 11, 32,121,208, 40, 5,177, 0,164,254,229,197,171, 12, 79,207,239, 97, 96, -231, 21, 70,153, 2,248,245,245, 61,209,230, 33,187, 29, 52, 21, 0,242, 15,108, 68, 3, 54, 10, 0, 3,160, 70, 0,104, 13, 4, - 33,240,231,207,119,134, 63,192, 30, 63, 39,183, 4, 3, 7,167, 16,176,103,253, 28,100, 19,134,121,179,103,207,134,155,247, 15, - 28, 47,168,230,128,166,111,182,110,221, 10,142, 7,208,168, 78,120,120, 56,120,139, 38,108, 52, 0, 52, 21, 80, 90, 90, 10,110, -184, 16, 3, 64,230,129, 70, 11,118,108, 92,207,176,111,255, 65,134,166,148, 48,134,128,132,112,134,111,191,190, 48,220,191,255, - 24,152,191, 86, 49,108,240,181, 98, 48, 18, 19, 28,180,249,103,116, 1, 32,101, 0, 32,128,232,122, 14,192, 96,221, 85, 0,154, -175,199, 54,116, 79,238, 22, 60, 92,230,157,170,134,152,101,214,218,138,149,143,111, 36, 2,155,221,228,154, 71,143, 17, 1, 74, - 43,104, 66, 91,253,134, 75, 99, 81, 69, 85,133,225,213,195,187, 12, 79,190,254, 99,248, 4, 44,241,175,191,255,197,176,244,206, -127,134,239,247,159, 49,188,251,242,135, 65,158, 19, 52, 22,252,151,225, 57,176, 50,224, 2,230, 86,103,101, 21,156,107,194, 96, -149, 63,108,117, 62,168,162, 0, 85,210, 58, 58, 58,208,176, 20, 98, 48, 51, 51, 3,111,163, 5,201,195, 42,109, 92, 21, 54,172, - 66, 7, 45,240, 3,169, 5, 53, 68, 65, 11,246, 64, 67,228,160,202, 26,100,143,130,130, 2,120,154, 1, 36, 15,106, 8,192,244, - 16, 2,166,166,166,224, 97,121, 80, 3, 2, 52, 21,128,188, 8, 16,212,235,182,180,180,132, 47,104, 35, 6,128,205,123,252,132, -225,197,189, 11, 12,191,127,126, 99,224, 17,147, 99,248,253,245, 19,120, 17, 32, 59,211, 63,162,205, 3,141,140,128,122,207,160, -233, 8,208,246, 71,208,116, 9,104, 49, 37,104,154, 3,121,106, 3,212,115, 7, 97,208,212, 10, 33, 0, 26,250,255,248,225, 14, -131,144,136, 46,131,128,144, 6, 80,132, 9, 40,246, 30,220, 48,128,129,103, 39,167, 2, 49, 3,131,171, 6, 52,236,255, 67,215, -254,255,103,128,207,255,131, 42,127,144,123, 64,101, 36, 40,204, 96,149, 63,108, 52, 32, 38, 38,134,232,202, 31, 4,182,109,219, - 10,244, 39, 47,131,157,189, 57,195,187,143,239, 24, 2,179,146, 24,190,126,255,200,240,250,229, 59,134,140,220,102,134, 78, 19, -149, 65, 89,249,195, 42,124,216, 72,192,104, 35,128,124, 0, 16, 64,131,230, 32,160,193,220,203,165,214, 28, 60,168, 98, 6, 85, -210,176,138,154,210,202,154, 28,243,144,135,232, 65, 91,253, 72, 25,185, 25, 40,128,236, 14,244,243, 1,134, 58,144, 86,211, 98, -208,189,122,150, 65,254,253, 71,134, 55,127,129,141,128, 31,127, 24,216, 65,189,191,159,127, 24,228,120, 88, 24,222, 3, 43,217, -167, 95, 33,171,234,189, 85,197, 25,184, 21,180, 24,112, 29,179, 3,235,245,195,182,250,129,230,133, 65,139,236, 64, 21, 4,108, - 23, 0,168, 18, 4, 85, 28,235,215,175,135,159, 9, 0, 18,103,196, 97, 30,236,144, 31, 80,254, 4, 45,134, 3, 53, 42, 94,191, -126, 13,223, 61, 0,178, 7, 36,254,234,213, 43,184,121,184,118, 21, 32, 3, 80,195, 1,180, 56, 17,182,109, 15, 84,217, 34,111, -219, 3,185,155,148, 85,246, 96,243, 92,156, 33,230,221, 61,201,240,236,252,110,132,121,214, 78, 36,153, 7,170,252, 65, 59, 6, - 64, 67,234, 32,243, 64, 11, 41, 65,230,131,118, 18,128,122,236,147, 38, 77, 2,143,166,128,220,217,215,215, 7,158,131,199, 7, -254,253,251,205,240,241,253, 29,112, 69,206, 47,164,198, 32, 33,101, 9, 12,199, 55, 12, 95, 62, 61,100,232,238,153,196,208,216, - 80,197, 32, 37,195,192,176, 60,159,139,129, 49,236, 61,131, 99, 28, 72, 15,100, 4, 0,121, 3, 32,104, 87, 2,104, 87, 7,104, -200, 31,100, 63,104,132, 2,212,120,155, 50,101, 10,120, 52, 0,214,208, 35, 22,220,188,121,139, 33, 36,216,159, 33, 34,194,143, - 65, 71, 87,157,225,237,231,143, 12, 95, 62,190, 97, 72,203,107,102,104, 14,116,102,112,254,247,109, 80,231, 29, 80,165, 63,186, - 11,128, 50, 0, 16, 64,116,107, 0, 80,115, 87, 1,104,255, 45,181, 78, 2, 36, 4,168,189, 5, 15, 86,105, 83,171,167, 78,170, -121,196,246,208, 7,186,130, 69,238,249, 35,187, 3,253, 92,128,161, 14,164, 20,149, 25,126,152,217, 50,252, 57,181,141,225,193, - 71, 6, 6, 30, 70, 86, 6,121, 30, 38,134,167,127, 25, 25,152,217, 89, 24, 14,189, 2, 86,178,192, 14,181, 40, 59, 51,131,178, -137, 29,195, 23, 65, 5, 60, 21, 13,164,183, 14,234, 65,131,122,130,160, 74, 12,180,157, 13, 84, 73,195, 26, 0,160,158, 58,104, - 36, 0, 84,137,128,134,140, 65,234, 65, 21, 54,182,130, 0, 36, 14, 59, 69, 80, 83, 83, 19,204,135,153, 7,203,207,176,145, 4, -144, 60,104,207, 60,104,248,158,216,188, 12,218, 94, 7,170,108,169,117,112, 15,181,204, 3,249, 89, 74, 74,138,193,221,221, 29, -220, 56, 1,141, 74,128, 70, 43, 64,141, 39,208,209,191,160,134,203,156, 57,115, 8,158,176,135, 12,254,252,249,198,240,225,253, - 77, 96,216,189, 99, 16, 16, 84, 99,224,225,149,101,224,229,147, 99,248,250,249, 41, 67, 71,231, 92,134,200, 8, 23,112, 3, 0, - 17,151,208,169, 25,164, 93,128, 94, 94, 94,224, 33,123,208,212, 9, 40,172,253,252,252, 24, 22, 46, 92, 8, 30,213,209,208,208, - 32, 57,188,188,189,189,128, 13,193,205, 12,159, 62,188,101,120,242,236, 57, 67,126,118, 28, 67,105, 69, 27, 67,160,147, 21,131, -205,207, 79, 12, 12,172,131,231,160,216,209, 5,127,180, 1, 0, 1, 68,151, 24,166,197,174, 2,106, 84,238, 48,240,230,205, 92, - 96, 37,191, 17,165,210,199,214, 16, 32,197,188, 83,213, 27,177,246,202,145,123,235, 32, 54, 49,149,246,155,185,111, 24, 78,109, -172,166,154,121,131, 29,140,180,181, 32, 10, 86,142, 12,151,128, 61,254,215,251,246, 50,176,254,249,206,112,233,243,127,134, 61, -159,255, 48,176, 1, 43, 89, 97, 96, 37,224, 40, 41,192, 96,239,230,204, 32,100,236, 64,160,167, 9, 25, 1, 0,245, 86, 65,149, - 2,168,183, 14,170,224, 65, 21, 33,172,194,134,245,210, 65, 91,206, 64, 43,220,119,238,220,137,115,200, 30, 36, 14,106, 56,128, -122,207, 32,253,160, 30, 39,108,116, 1,214,104,135,157, 46, 8, 82, 11, 26,113, 0,173,224,135,156, 60, 71,124,207, 29,132,169, - 22,150, 84, 50, 15,212, 8, 0, 85,246, 32, 63,129, 70, 0, 64,163, 40,160,145, 15, 16, 0,173,127,240,244,244, 4,247,254, 73, - 1,127,255,254, 4,159,245,255,235,215, 71, 6,206, 79, 15, 24,248, 4,148, 25,184,120,164,192,120,215,222,151, 12,140,206,226, - 72, 29, 34, 40,141,164, 31,116,152, 17, 40, 46, 65,149, 63,168, 49, 0, 90,219, 17, 23, 23,199,112,224,192, 1,178,252,104,105, -105, 5, 94, 23,193,119,237, 44, 67,118,118, 50,131,140,154, 42, 67, 87, 65, 50,195,130,105, 11, 25,166, 48,255, 24,244,249,102, -180,247, 79, 57, 0, 8, 32,186, 53,241, 6,243,174, 2,124, 21, 14, 57,189,127, 92,230, 97,155,179, 39,166,210,166,182,121,196, - 84,178,148, 86,194,163, 11, 58, 73,171,108, 12,156,221, 25,132,165,100, 24, 94, 95,191,194,192,252,240, 30,131,202,239,231, 12, -188,194,226, 12, 86,186, 26, 12,218,198, 58, 12,223, 37, 8, 31,190, 2,170,140, 65, 61,127, 80,239, 30, 54, 31, 15, 26, 13, 0, -177, 97, 71,247, 34, 79, 19,128, 22,243,129, 26, 1,184, 42, 16,208,124, 51,232,172,123, 80, 35, 0, 84,169,195,244, 33,175,140, - 71,190, 8, 8,100,135,161,161, 33,120, 97,223,176, 41, 32,129,126, 7, 29,249, 11,194,160, 69,127,160,240, 3, 53,132, 64, 97, - 10, 10,231,234,106, 82,203, 7, 96,131,233,215,103, 32,254, 2,108,160,189, 6, 86,192,130, 12,172,108,188,192,176, 99, 97, 88, -178,116, 43, 67, 76,180, 55,162,113,133, 69, 55,108,212,161,183,183, 23,220,192, 3, 1,208, 20, 12, 41,199, 47, 35, 3, 35, 35, - 99, 6,102, 83, 83,134,164, 6,152,121,255,129,230,169, 51,168, 5, 4,128,253, 62, 88, 0,108,184,127,244, 40, 96,234, 2,128, - 0, 98, 25, 13, 2,252,128,154,219,254,208, 43,102, 74,123,235,212, 54,111, 20, 12, 44,144,213,212, 6, 99, 16, 64,190, 75,143, -216, 35, 87, 66, 67, 67,193, 71, 0,195, 86,248,195, 86,176, 35,111,245,131, 45,250,131,221, 8, 8, 90,212, 7,146, 59,114,229, - 43,134,121, 19, 38, 76, 96, 88,189,122, 53, 92, 45,248,206, 0, 2,215, 1,131,122,168,164, 12,141, 15,197,198, 26,104, 71, 5, - 8, 83,214,208,133, 53, 4, 62,131, 43,127,208,194, 64, 96,236,192,205, 35, 52,137, 2,187,233, 15,121,151, 2,185,224,239,223, -127, 12,133,133,133, 84, 51,143,214,141,128,209,202,159,122, 0, 32,128, 24,129, 1, 56,122,191,227, 40, 24, 5,163, 96, 20,208, -171,208,133, 19, 24,109, 2,134,209,194,152, 62, 96,243,226, 38,198,209, 80, 96, 96, 0, 8,160,209, 17,128, 81, 48, 10, 70,193, - 40,160, 35,248, 79, 76, 23,127, 20,140, 2, 58, 0,128, 0, 98, 26, 13,130, 81, 48, 10, 70,193, 40, 24, 5,163, 96,228, 1,128, - 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, 48, 10, 70,193, 40, 24, -129, 0, 32,128, 80,214, 0,248,218,202,144,109,208,230,195,152,151, 69,140,154, 55,106,222,168,121,163,230,141,154, 55,106, 30, - 57,230,141, 2,218, 3,128, 0,194, 88, 4,136,239,122, 87,114,182,188, 12,101,243,200, 49,115,176,251,119,168, 2, 98,142, 37, - 38,246,150, 48,122,221, 88, 56,216,194,111,244,108,134, 81, 48, 10, 70, 1, 50, 0, 8, 32,172,187, 0,254,175,194,188, 0, 2, -116, 70, 53,185, 0,215,109,110,131,197, 60,108,254,165,196,207,131,221,191, 48,240,238,245, 29,134,215,175,159, 51,188,124,243, -133,225,227,199,223, 12,252,252,172, 12,226, 34, 60, 12,162,162,146, 12, 66,162, 42, 36,155,119,238,248, 52,134,123,119,111, 49, -220,125,240,131,225,241,243,255, 12,178,146,140, 12,202, 10, 28, 12, 74,202,106, 12, 70,150, 89, 52, 79,204,200,149, 62,168, 49, -224,107, 59,147,168,134, 4, 72,108, 48, 84,144,160,211, 48, 65,215,203, 34, 3,208,213,176,131,233,234,109,106,134,211, 80,240, -239, 40, 24, 5,195, 25, 0, 4,208,232, 54, 64, 44,149, 61,232,204,148,127, 43, 5,135,173, 95,127,255,250,202,240,248,209,101, -134, 95,191,126, 51,168, 40, 10, 48, 56,216,200, 49, 8,240,179, 51,188,255,240,131,225,233,243, 47, 12,183,239, 61,103,248,240, -241, 13,131,172,156, 46, 3, 43, 27, 55, 65,243,222,191,185,197,112,236,224,108, 6,102,134, 79, 12,225,222, 12, 12,214,198, 12, - 12,202,242, 12, 12,119, 30,252,103, 56,114,230, 59,195,182,253, 23, 25,182,174, 45,101,176,178, 79,101, 16, 20, 81,163, 90, 35, -136,216,198, 0,161, 81, 4,216,229, 66, 3,217, 8,192,213,160,131, 85,144,131,161,247,142,124, 77, 51,165,238, 25, 10,254, 29, - 5,131, 15,140, 30, 4, 68, 93, 0, 16, 64,163, 13, 0,164, 81, 0, 88, 35, 96, 56, 87,254, 32,240, 4, 88,249,139,139,112, 48, -152, 26, 42,130, 27, 59,160, 83,221, 64,151,143,240,241,176, 51,112, 43,179, 49, 40,200,242, 51, 92,187,249, 6,172, 78, 81,197, -130,160,121,160,202,223,214,248, 19, 67, 65, 34, 3, 3,232,160, 56,144,153,191,255, 48, 48,112,115, 49, 48,104,170, 48, 48, 88, - 24, 0, 51,238,254, 79, 96,117,222,193,221, 20, 85, 24,180, 58,162, 24,214, 8, 24,232,202, 31,221,125,212,168,116,169,105, 6, - 53, 70, 2,168,233, 95,108,102, 17, 43, 54, 10,134,110,197,143, 44, 62,218, 8, 32, 31, 0, 4,208,232, 46, 0,244,145,128, 97, -238, 63,208,176, 63,232, 60,119, 51, 35, 73,212,132,192,196,200,192,198,198,204,192,201,193,194,192,202,202,196,160,172, 40, 8, - 30, 33, 0,169,199, 7, 64,195,254,160,158,127, 97, 18, 3,195,143,159, 12, 12,247, 31, 51, 48,188,255,200,192,240,225, 19, 3, -195,178, 77, 12, 12,185, 13, 12, 12, 85, 61, 12, 12, 86, 70, 64, 59,254,127, 2,171, 31, 5, 8,128,126, 41, 22,190, 6, 11,169, - 23,102,161,143,106, 32,143,116, 80,218,112, 66,159, 66,161,196,191,187,119,239,102,216,179,103, 15,217,254, 37, 20,110,163, 21, -255,240, 1,160,202, 30, 25,227,107, 28,140, 2,194, 0, 32,128,134,228, 8, 0, 45,123,106,255,105,232, 62,106, 13, 49, 35,247, -146, 72,233,229,130,192,235, 55,207, 25,212,149,133,224,149, 62, 54,192,193,206,194,240,225,227, 79, 6, 53,160,186, 91,247,158, -227, 93, 15, 0,154,243, 15,135,220, 95,194,176,227, 16, 3,195,212,197, 12, 12,110,182, 12, 12, 94, 14, 12, 12, 55,128,109,135, -243, 87,255, 3, 27, 21,140, 12,134,218, 12, 12,238,246, 12, 12,235,118,222, 98, 48,178,164, 94,207,157,156,176,163,213,154, 10, -114, 0, 49, 67,222,176,138, 27,164,150,212,112,192, 53,221, 65,238,232, 9,122,248,145,218, 99, 71,247, 47,168,242, 71,190,218, -219,197,197,133,100,255, 98,243, 15,177, 98,163, 96,232, 84,252,163,128,250, 0, 32,128,176, 54, 0,112, 45,126, 35,167,194, 33, - 84, 33,146,106, 30,189, 91,241,228,172, 24,199,183,168,144, 28,243,176,233, 33,119,225,226,203,215, 95, 24, 28,173,229,192,215, -141, 30, 62,254,152,225,219,247,223, 96,113, 35,125, 9, 6, 81, 97, 78,134,199, 79, 63, 51,220,185,255,158,129,133,133,137, 65, - 85, 73,144,225,232,201,175, 12,234,154,184,205, 3, 45,248, 3,205,249,255, 4, 26,179,253, 32, 3,195,254,227,255, 25,164,196, - 25, 25,148,228, 24, 24,156,109, 24, 24, 52,148, 25, 25, 88,152, 33, 87,139,131,166, 2,186,103,254, 32,202,175,200, 21, 21, 49, -108, 98, 10, 8,244, 30, 48,250,240,240,112,234, 33,226,171,144,177, 85,228,228, 52, 40,168, 49, 45,128, 92,249,131, 46, 30, 2, - 53, 0, 40,109, 24,142,246,254, 71,193, 40, 32, 14, 0, 4, 16, 73,187, 0,200,221, 29,128,171,199, 69, 78, 79, 12, 95,163,129, -220, 6, 10, 62,127,227,154,163, 36, 4,112, 45, 42, 36,199, 60,124,122, 96,246,128,250,242,255, 86, 17, 94,187, 0, 89,237,207, - 14,102, 63,126,246,137,225,251,247, 63, 96,182, 10,176,178, 7, 53, 0, 46, 94,125,197,112,243,246, 59, 6, 14, 14,102, 6,101, - 69, 1,134,247, 31,241,223,237, 14, 90,237, 15, 90,240, 7,178,223,195,142,129,193, 64,139,145,129,157,141,129,225,207, 31,200, - 72,128, 0, 47, 3,195,189, 71,192,222, 63, 80, 78, 94, 6,162,126, 32, 1,114,165, 63, 28,231,133,145,253,132,173,130,198,213, -216,162,100, 68,128,146, 48, 4,221, 96, 8,170,248, 65, 32, 36, 36,132,162,145, 20,208, 14, 2,114,229, 71,193,208, 2,196,110, -249, 29, 5,248, 1, 64, 0, 13,201, 41, 0,124, 21, 34, 57, 21, 44, 37, 91, 28,241,154, 75,227,221, 4, 32,119,147,106, 7,104, -171, 31,104,181,191,136, 16, 23, 67,168,159, 6,195,159,191,255, 24,216,217,153, 25,152,153,152,192, 87,186,250,184, 41, 51,120, -187, 42,131,205,125,251,254, 59, 88, 61, 62, 0,218,234,119,247,225,127, 96, 79,159,129,193,201, 18, 50,133, 2, 26,250,215,211, - 96, 96, 16,228, 99, 96,240,116, 0, 93, 49,202, 0, 30, 5,184,117, 31,162,158,216,184, 37,133, 77,233, 65, 34,131, 97, 27, 32, - 54, 55,144,234, 46,228, 6, 14,122,111, 29, 31,159, 92,119, 82, 50,154,128,172, 15,148,246, 92, 93, 93,201, 50, 11,125, 43,225, -104, 35, 96,180,242, 31, 5,196, 1,128, 0, 26,221, 5, 64,226, 8, 5, 41, 0, 52,204,206, 20,254,158,102,141, 0,216,206, 5, - 38, 32, 38,166,247, 15, 2,160,125,254,160, 97,126, 80, 3,160,111,250,105, 6, 59, 43, 89, 6, 35, 61,113, 6, 70, 86, 70,248, -142, 0,232,213,241, 96,117, 32,245,248, 0,104,159,255,209,179,223,193, 13, 0, 17, 99, 6,134,138, 76, 6,134,252, 4, 96, 67, -131, 23, 50,236,223, 56,137,129,161, 33, 31,162,246,232, 89,136,122, 74,122,182,212, 92, 67, 49, 24,206, 2, 0, 85, 72,160,138, - 9,230, 38,208,194, 55,216, 62,120,216, 34, 56,152, 28, 41,149, 23,190,138,153,218, 59, 10, 72, 49, 11,155,127, 97,195,254,228, -248, 23,185,242, 39,166, 33, 48,218, 8, 24,173,252, 71, 1, 2, 0, 4,208,104, 3,128,198,128,214, 91, 10,225,141, 0, 34, 27, - 26,160, 67,126,238,220,127,198,160,175, 45,198, 80,145,111,193,176, 96,249,101,240,202,127, 3, 29, 49,112,229, 15,119,247,191, -255,224,181, 0,226, 98, 82,120,205, 3, 29,242,179,117,223, 69,134,132, 96,160, 91,128,229,183, 69, 16, 80, 76,150,129, 97,233, - 70, 36, 69,192, 6,192,223,191, 12, 64,117, 16,245, 3,217,195,198,213,232, 27,168,109,128,232,135,222, 96,107, 0,224, 82, 75, -206,168, 2, 37,126,164,198,156, 63,181,253, 11,107, 80, 16,106, 48, 16,163,102, 20,140, 86,254, 35, 13, 0, 4,208,232, 54,192, - 33, 12,192, 83, 0, 36, 78, 3,128, 86,244,179,179,179, 49,156, 60,251, 12, 92,201,123,186, 40, 49, 92,186,250,138,161,181,239, - 56, 67, 75,239, 49,120,229, 15,146, 7,169, 35,116, 34, 32,232,132,191,191, 12,124, 12,253,243, 32,149,252,140, 22, 6,134, 69, -235, 24, 24, 28, 45, 24, 24, 12,181, 24, 24, 14, 44,135,136,131,229,129,234,200, 61, 17, 16, 84,209, 80,210, 59, 71,238,245, 15, -166, 93, 0,232,149, 30,108, 62, 28,157,141, 77, 45,177, 97,134,222,107,167,100,206, 31, 31,127,160,252, 75,108,165, 62, 90,249, -143, 86,254,163, 0, 21, 0, 4,208,104, 3,128,134, 61,243,255,171, 4,233, 98, 7,169,163, 12,160, 19,254, 94,191,251,201,176, -118,203, 77,134,103, 47,190, 48,120,187, 41, 51, 84, 22, 90, 48,100, 36, 26, 48,156,191,252, 18, 44, 14,146, 7,169, 35, 6,128, - 78,248, 59,124,150,143, 33, 52,155,129,225,236, 21, 6,134,217,237, 12, 12, 85, 64,118,122, 20, 3,195,220, 85, 12, 96,113,144, - 60, 72, 29, 37, 21, 56,185,149, 52,161,233,131,129,220, 5, 64,236,252, 53,169,106,177, 85,212,212,240, 31,165,102,209,202,191, -132, 42,247,209,202,127,120,128,209,202,159,186, 0, 32,128, 72,218, 6, 72,238, 98, 57, 82,183, 1,146,107, 30,185,102, 82,219, -125,248,194,137, 90,238,163,100,225, 34,232,120, 95, 37, 21, 11,240, 33, 63,247, 30, 60,103, 56,126,230, 9,202, 93, 0,160, 97, -127, 82,238, 2, 0, 29,239, 11, 58,225, 15,116,200,207,202,173,183, 24,218,166, 14,204, 93, 0,164,244, 94, 7, 67,229, 79,200, -222,193,186, 51,129, 18,119, 13, 69,255,142,130,193, 57, 18, 48,218, 48,160, 28, 0, 4, 16, 11,173, 51, 33, 61,205,163,116, 95, -243, 80,243, 47,165, 0, 84,201,131,176, 58,149,204, 3, 85,242,228, 28,242, 51, 90,233, 12,238, 74,123, 20,140,130, 81, 48, 60, - 1, 64, 0, 49, 2, 91, 78,255, 71,131, 97, 20,140,130, 81, 48, 10, 70,193, 72, 1,155, 23, 55, 49,142,134, 2, 3, 3, 64, 0, -141,174, 1, 24, 5,163, 96, 20,140,130, 81, 48, 10, 70, 32, 0, 8,160,209, 6,192, 40, 24, 5,163, 96, 20,140,130, 81, 48, 2, - 1, 64, 0,141, 54, 0, 70,193, 40, 24, 5,163, 96, 20,140,130, 17, 8, 0, 2,104,180, 1, 48, 10, 70,193, 40, 24, 5,163, 96, - 20,140, 64, 0, 16, 64, 40,187, 0,124,109,101,200, 54, 8,219, 89,236,163,230,209,198, 60, 98, 46, 96, 25, 72,243, 64, 7,184, -128, 48,232, 96, 23,106,152,119,255,254,125,134,187,119,239,130,205,155, 53,107, 22, 88, 12,116,118,252,104,122, 25, 53,111,212, -188,225,107,222, 40,160, 61, 0, 8, 32,130, 71, 1,147,115, 91, 29, 61,205,163, 39, 72, 11,253,200,192,192,198,198, 48,107, 41, - 39, 81,234, 65,149, 32, 49,135,153, 16,235, 95,100,243,208,175,182,165,212,188, 43,125,124, 12, 58, 69,159, 40, 50, 15, 2,254, - 51,232,125,159,194,240,255,215, 95, 48, 15, 84, 97,167,165,165, 81, 16,234,255, 25, 76,153, 87, 48,252,254,253,137,129,147,147, -147, 97,213,170, 85, 12, 9, 9, 9, 12,127,255,254,101,248,245,235, 23,195, 63,208, 77, 67,116, 4,228,156,227,128, 47,252, 6, -187,121, 67, 5,128,142,177,102, 98, 98, 2, 99,216,145,214,160,244,193,204,204, 12, 78, 35,232, 13,198, 81, 48, 10, 70, 1, 3, - 3, 64, 0,177, 16, 42,236,240,101, 28,228,179,227,137, 45, 56,169,101, 30,169, 61, 88,106,130,221,187,119, 51, 48,112,104, 18, - 85,185,130, 78, 32,195,117,166, 57, 41,133, 53,204, 60, 88,197,191,103,207, 30, 12,255,146, 99,222,255, 11,181, 12,140, 6,205, - 12,139, 14, 66,174,253, 5,241,225,241, 97,208, 76, 82,184,240, 94, 43, 2, 95,128,180,252, 40,196, 44, 79, 67, 86, 6,109,233, -171,240, 94, 59,169, 13, 1, 57,161,147, 12,247, 47,191,100, 56,242, 92,158,225, 43, 15, 55,131,135,195, 7, 6,105, 81, 70,134, -131, 7,118, 51,124,250,252,131,193,203,203,139,225,231,207,159,116, 47,220, 7,178,193, 75,140,121,164,132, 7,185,121,142, 82, - 0, 74,127, 93, 93, 93, 12,165,165,165, 12,202,202,202, 20,153, 5,170,228, 89, 88, 88,192, 24,196, 6, 53, 2, 64,105, 27,100, - 54,168,161,248,231,207, 31, 48, 6,177, 7, 2,108,221,186,149,232,176, 7,165,105, 82,192,182,109,219, 40,210, 63, 10, 70, 54, - 0, 8, 32, 22, 74, 42,127, 99, 99, 99,134,179,103,207,146, 84, 96,225, 43,112,136, 49, 15,155,249,160, 74, 22, 54,228, 76,205, - 27,221,210,124,129, 21, 23,167, 26,195,172, 85, 14,144,222,236,106,126, 72,229, 79, 66,101,141,235, 60,115,152,187,137, 25, 33, - 64, 54, 15, 4, 64,119,168,131,110, 80,131,221,162, 70,174,121,176,202, 30, 70,119, 54, 50,160, 84,254,101,254, 28, 12, 93, 27, -127, 16, 21, 86,252, 55,139, 25,180,229,152, 25,190,254,248,207, 80,228,195,193,112,226,246, 31,134,239, 63,255, 51,124,255,205, -192,224, 8,108, 4, 92,121,244,151,164,209,128,199,151,250, 25,206,190,230,102,224,227,102,100, 16, 23, 19,103, 16,147, 86, 97, -120,248,228, 39,131,186,218, 31, 6,118,230, 87, 12,155,183,188, 97, 88,190,124, 57, 67, 80, 80,208,104, 46, 30,130, 0,148,254, -124,125,125,193,141, 0,108,249,213,200,200,136,161,177,177, 17,172, 6,111, 1, 6,172,244,217,216,216,224,248,241,227,199, 12, -170,170,170,224,134, 0, 47, 47, 47,195,157, 59,119, 24,120,120,120, 24, 78,159, 62,205,112,252,248,113,134,236,236,108,194,249, - 30,154, 70,145,203, 63,228,114, 11, 38, 14, 18,131, 53,110,241,129, 77,155, 54,225, 52, 3, 89, 28, 36, 70,106, 5,190,113,227, - 70,138,244, 15, 85, 0, 59, 17,112,244, 4, 64,202, 0, 64, 0,177, 80, 82,249, 19, 11, 72,189,214,147,212,202,191,163,163,131, -161,162,162, 2, 69,156,220, 70, 64,154, 49, 48, 67, 11, 3, 43,253, 93, 14, 40, 61,126,208, 93,229, 32, 0,163,113,205, 89,161, - 87,214,248,220, 77,236,237,110,176,176, 65,110, 76,161, 95,156, 66,142,121,248,122,248,160,202,159, 24, 0, 74, 39, 34,183,139, - 25, 84,165,152, 25, 56,217, 24, 25, 20, 68,153, 24, 94,127,250,207,240,231, 47, 51,195,155,207,255, 25, 62,126,251,207,112,247, -229, 63,240,133, 69, 34,255, 46,161,220,254,134,179,247,250,122, 13,131,138,156, 18,195,235,215, 47, 25, 20,100, 68, 25,116,181, -149, 24, 88,120, 4, 25,148,100, 62, 48,124,255,251,145,225,249,243,191, 12, 79,223,255, 96,224,252,121,143,225,238, 93,125,178, -110,201,163, 38,192,213, 43,167,244,202, 93, 74,205,195,213,216, 30,232,225,112, 80, 26, 0,185, 77, 75, 75,139, 97,243,230,205, - 24,105, 2, 84,182, 16, 83,249,131, 0, 43, 43, 43, 3, 7, 7, 7,195,155, 55,111, 24,212,212,212, 24, 12, 13, 13,193,141,130, - 73,147, 38,129,123,252,186,186,186, 12,235,214,173, 3, 55, 0, 46, 93,186, 4,110, 24, 16, 26, 9,240,247,247,135,135, 31,161, -114,144,152, 10, 23, 84, 73,195,194, 29, 95, 7, 8, 36,255,242,229, 75,146, 27, 0,148,232, 31,138,149,254, 40,160, 30, 0, 8, - 32, 22, 92,133, 15,161,158,250, 96, 1,160,194, 3, 84,249,147,123, 81, 10, 46, 0,233,233,167,129,233,213,179,204, 24, 24,216, -190, 19, 53,247,143,173,178,198,214, 32, 34,181,210, 66, 46,252, 65,195,255,232,189,127, 82,205, 91,154,199, 3, 42, 50,176,202, - 69, 79,250, 74,180, 57,160, 66,135, 3, 88,241, 51, 51, 49, 48,112,177, 51, 48,124, 0, 86,248,191,254,254,103,224,230, 96, 4, -247,254,191,255,250,207, 32, 45,200,196, 0,154,170,191, 5,172,184, 65,110,199, 55, 10,240,249,197, 73, 6,126, 86,110, 96,193, -254,159, 33, 53,212,140,225,239,159,255, 12, 47,222,255, 98,120,116,255, 35, 3, 19,195, 99, 6, 1,129,159, 12,175, 94, 62, 96, - 96, 99,254,200,112,237,193, 7,134,167, 63,246, 80,184,198,128, 58, 0,189,114,166,228,242, 34,112,184,162, 93, 36, 5,186,251, -129, 28,243,222,189,115, 65,225, 11, 9,237, 33, 88,177,209,163,247,239,227,227, 3, 79,179, 87,175, 94,133,179, 97, 61,127,144, - 60, 49,128,157,157,157,225,235,215,175, 12,154,154,154, 12,142,142,142, 12,197,197,197, 12,201,201,201, 96,185,223,191,127, 51, - 44, 88,176, 0, 60,170,120,238,220, 57,134,149, 43, 87, 50,124,255,254,157,224,186, 17,111,111,111,170,250,119,238,220,185, 68, - 55,216, 72,237,193, 35,155, 77,142,254, 81, 48,178, 1, 64, 0,177,144,218, 99,167,118, 69, 75, 41, 64,239, 9,147,220,227,159, - 5, 44, 84, 37, 25, 24,102,249, 66, 10,240, 89,103,211, 80,134,249, 33, 61,254,143, 24, 35, 1,196, 86, 6,232,189, 27,114, 42, -107, 82,123,142, 32,154,240,208, 24,225, 10, 0, 54,252,143,203, 60, 80, 37,242,250, 64, 17,131,132, 28, 51,195,151,239,255,193, -243,255,160,118,227, 55, 96,165,255,253, 23,176, 0,254, 3,177,227,207,191,255, 12,255,160, 21,206,229,139,103,161,211, 34,108, - 88,237,252,240,242, 42, 3,155,168, 32,131,168,128, 0,195,135,247,223, 25, 62,124,124,207,112,226,234, 75, 96,143,255, 63, 3, - 23,215, 55, 6,101,249, 47, 12,223,191,188, 97,208, 83,253,205,160,165,240,147, 97,214,242,179,224, 97, 94, 6, 6,142,209,220, - 60, 4, 0,172,247, 15,194,160,222, 63,168,162,223,178,101, 11,131,182,182, 54,120,106,139,148,202, 31,214, 0,120,253,250, 53, - 48,109,112, 49,216,217,217, 49,244,244,244,128, 71, 5, 64,105,118,225,194,133,224,202,255,196,137, 19, 12,123,247,238,101,184, -124,249, 50,131,136,136, 8,120, 61, 0,193,114, 1,216,168, 36, 52, 5, 48,123,246,108,162,220, 72,203, 41, 0,144,217, 35,101, - 10, 0,185, 12, 26, 29, 13,160, 14, 0, 8, 32,150,161,236,120,228,187,206,241,245,198,136,237,241,175,174,184,207,192,192,204, -198,144,230,166,192,192, 32,160,192, 48,107, 21, 68,142,216,185,127, 90, 85,232,176, 94, 63, 8, 32,247,252,209, 1,108,109, 0, - 53,111, 55, 92,154,199,141,115, 68,128,247, 90, 49,195,253,159,192, 30,250, 7,208, 16, 63, 19, 3,247, 15,200, 16,231,159,191, -255, 25,126, 0,123,255, 63,128,141,128,159,191, 33,248, 7,184, 65,128,212, 3,196,210,160,224,185, 90,196,240,244,153, 28,131, -130, 28, 15, 3, 19, 7, 51,195, 91, 96,111,109,239,233, 39, 12,183, 30, 63,101,120,251,238, 11,131,137,222, 95,134,159,223,254, - 0,205,250,203,240,253,199, 63,134,135,143,129,141,141,239, 12, 12,221,221,221,163,115,129, 67, 4,192,122,255,160,225,127, 80, - 67, 24,212, 32, 0, 53, 0, 96,163, 0,164, 84,254, 32, 0,170,236, 13, 12, 12,192,211, 0,160, 10, 63, 41, 41,137,161,189,189, - 29, 92, 25,158, 60,121,146,225,224,193,131,224,161,255,143, 31, 63,130,215, 6,124,250,244, 9,188, 72,144, 16, 8, 8, 8,192, - 57, 74, 2, 27, 65, 33,118,164, 96,116, 10, 96, 20, 12, 86, 0, 16, 64, 67,174, 1,128, 62,127,142,222, 8, 64,239,125, 19,154, -143, 39,212, 40,128,141, 2, 64,166, 1, 64, 91, 0, 7,166,145, 3,170,216, 97,141, 0,124,163, 33,132, 70, 68,240, 85,232,216, - 0, 62,181,113, 83,190, 50, 72, 9, 49, 49, 68,217,176,129, 43,121, 62, 46, 70, 6,102, 70, 72,161, 9,154, 6, 0,137,125, 5, - 54, 16, 64, 11, 3, 65,163, 2,127,255, 65, 70, 8,240,153,103,160,126,143, 65, 85,229, 29,195,142,131,175, 24,222,125,252,193, - 96,161,247,137,193,140,255, 11, 3, 43,219, 79,134,111,192, 74,255,201,115,144,121,140, 12,127,255, 50, 50,136, 8, 1, 13, 99, -252, 55,154,139,135, 32,128,229, 95,244,209, 48, 80, 99, 0,189,226,197,183, 22, 0, 84,153,151,149,149,129,231,253, 23, 45, 90, -196, 48,127,254,124,134,196,196, 68,240,186, 32, 80,101,251,224,193, 3,240,176, 63,168,204, 0,245,252, 51, 50, 50,136,218,249, - 64,205,158,244,232, 20,192, 40, 24,172, 0, 32,128,134,228, 8, 0,250, 60, 50,174, 10,158, 80,133,137, 14, 64,195,255,136,138, -255, 54,195,234, 73,247,161,187, 0, 80, 27, 5,196, 76, 3, 80,123, 20, 0,125,222, 31,221,111, 32, 62,104, 4, 0,118,248, 14, -174, 69,138,164, 84,254,176, 93, 0,184,204, 3, 85,232,223,126,130, 42,250,255, 12, 31,190,130,122,253,255, 25, 88,161, 41,234, -207, 95, 72,175, 31, 84,241,191,253,252, 31,188, 48,240,252,131, 63,224,105, 2,144, 59,191, 99,177, 15,100,222,227,231,191, 24, -238,220,121,207,112,236,220,123,160, 90, 70,134, 27,119,254, 49, 68,250,253, 97, 96, 1,106,124,241,138,129, 97,215, 97, 6,134, -207,223,254,131,215, 20, 56, 89, 48, 50,112,178, 3, 11,107,111,127,134,191, 3,156, 38, 41,153,239,199, 90, 25,132,189,167,138, - 57,160, 57,255,193, 4,176,229, 85,144, 24,104,238, 31, 52, 79, 15,154, 22, 64, 7,132, 22, 3,246,246,246, 50, 8, 8, 8,192, -123,193,243,230,205, 3,143, 4,128, 26, 3,176,198, 4, 72,205,135, 15, 31,192, 35, 0,223,190,125, 35,202,173,169,169,169,240, -138, 21,185, 7, 15,162,137, 29,254, 7,129,209, 41,128, 81, 48, 88, 1, 64, 0, 13,201, 6, 0,104, 94,143,208,106,114,144, 60, -209, 91, 10,217,185, 25, 86, 43, 28, 2,214, 90, 64,245,138,220, 12,105,173,138, 12,179, 14,128,134, 34,103, 33, 53, 8, 92,201, -158, 6, 64,223, 10,136,107,107, 32,174,194, 18, 54, 2,128,173, 33, 0,235,249,195,196,240,141, 0, 32,155, 71,173,194,252,246, -237,219, 12,143,142, 78, 2, 22, 62,255, 24, 24,129,229, 42, 27, 11,244, 16,150, 63,192, 30,255,127, 72,101, 13, 26, 9, 0, 53, - 8, 64,216, 47, 32, 4,236, 86,108, 13, 10,152,121, 15,142, 78,100,208, 86,248,199,112,232,252, 95, 6,208,104,237,139,215,192, -138,158,131,129, 97, 39,176,242,255,246, 13, 88, 0, 3, 43,127, 35, 45, 86,134, 71,207,254, 49,216, 59,121, 51,184,187,187, 51, -108, 59,246,124, 64, 43, 53,106, 54, 0,168,101, 30,161, 33,231,193, 2, 96,171,254, 65,195,255,176, 52, 10, 27,189, 3,245,238, -241, 1,208,130,190,243,231,207, 51,216,218,218,162,136,131, 26, 1,176, 74, 22,180, 24, 16,180,242, 31,148,182, 68, 69, 69,137, - 62, 60, 10, 52, 13, 64,141,158,250,232, 20,192, 40, 24,172, 0, 32,128, 40,106, 0,128, 42, 88,122,159, 34, 6,235,229,130, 10, - 7,216,156, 55,182,158, 63,172, 34, 4,169, 33, 7, 32,239, 2,128, 1, 82,123,254,184, 26, 41, 48, 49,216,116, 6, 41, 35, 31, -200, 13, 1, 16,192,118, 22, 0,181, 0,168,247, 79,200, 60, 21, 21, 21,134,121, 51,126, 51, 56,235,176, 50,128,138,213,223,127, -254, 49,112,176, 50,130,123,250,159,127, 0, 43,255, 63,144,161,255,179,119,255,130, 23, 3, 18, 58,244, 5,100,222,162,217,127, - 24,236, 13,152, 25,162,124, 32,139, 11, 63,126, 6,154,245,149,145, 65, 69,254, 63,195,159, 63,140, 12,140, 12, 28, 12,111, 63, -252, 99,120,250,226, 23,131,127,168, 22,120,107,215, 96,236,217, 82,210,216,162,150,121,131,253, 4, 60, 80,229,223,208,208,128, -209,203, 7,157, 15, 0, 18, 35,148, 94, 64,167,253,169,171,171, 51,252,248,241, 3,156, 14, 64,139, 1, 65, 96,237,218,181, 12, -193,193,193,224,225,127,144, 28,232,192, 40,208,121, 0,160,134, 0,177, 97, 66,173,221, 0,163, 83, 0,163, 96,176, 2,128, 0, - 34,187, 1, 64,139,202,159, 24, 51, 65, 21, 30,172,114,135,205,121, 35,111, 75, 68,239,245,227, 91, 52, 7, 7,204,192, 86, 57, - 27,176,171,201, 9,172, 72,120,128, 65,242,243, 51,195,234,118, 86, 32,255, 20, 67, 90,136, 34,144, 22, 98,152,181,152,244, 94, - 63,190, 17, 10, 82,207, 2, 64,175,252,209,215, 4,144,106, 30,177,149, 63, 33,243, 64,133, 78,123,239, 12,134,194,220, 12,240, -112, 60,168,115,165, 35,199, 12,158,235, 7,149,179,176,138,255,239,127,102,240,161, 61,196,152,215,220, 53,131,161,184, 32, 3, -220,112, 0,143, 36,252, 5,138, 3,229,188, 28, 25,128,141, 1, 70,134, 11, 87,129,133,250,111, 38, 6, 63,191,160, 1, 63, 3, - 96, 20,144, 15,112, 29,246, 3,222,117,226,227, 67,212,130, 64, 80, 3, 0, 84,201,131,242,155,190,190, 62,120,158, 31,180, 48, - 16,212, 51, 6, 53,216, 65,149, 63,104,200, 31,212,251, 23, 20, 20, 36,106, 27, 32, 50, 64,158,106, 36,117,232, 31, 6, 70,167, - 0, 70,193, 96, 5, 0, 1, 68, 86, 3, 96, 32,122,254,232,189, 35,228,158, 16,174,161,126,106,186,145,148,185,127,106, 87,254, -200,141, 29,100, 62, 50, 77,170,121,132,214, 2,144,106, 94,255,228, 25, 96,127,129,202,162, 35, 55,254,192,183, 4, 66, 10, 38, -208, 72, 76, 16,113,141, 49, 40,232,232,158,204,144,151,151, 3, 55, 7, 68, 31, 58,205,192,240,245,219, 63,112, 35,195,207,207, -155,193,205,205,109, 52, 7, 15, 97,128,173,242, 7, 45,210,131, 85,252,160,245, 0,160,202, 13, 95, 67, 0,212, 0, 0, 45, 4, -148,146,146, 98,248,252,249, 51,195,153, 51,103,192,135, 1,129, 26, 2,160,149,255, 23, 47, 94,100, 80, 84, 84,100, 16, 22, 22, - 6, 87,254, 32,113, 82, 70, 69, 96,135, 2, 81, 50, 42, 48, 58, 5, 48, 10, 6, 43, 0, 8, 32,172, 13, 0, 66,123,253, 73,173, - 88,137, 61, 59,128, 20,115, 97,199,236, 98, 51,155,148,202,107, 86,218, 76,200, 48,255, 45, 6, 8, 70, 1, 31,161,248, 62, 85, -253, 75,106,229,138,126,222, 63,242, 92, 62, 57,141, 28,116,243, 64, 59, 3, 96,141, 2, 74, 26, 77,232,113, 2, 91,240, 7,242, - 43,169, 61,117, 80, 47,110,242,228,169, 12, 87,174, 92, 97,152, 62,125, 58, 88,236,243, 23, 72, 1, 12, 26, 22, 6, 13,251, 14, -212,252, 54,181, 23,252, 81,125, 1,225, 16,152,247, 7, 1,244,202, 31,148,118, 64,149, 24,104, 39, 0, 46, 53,216, 26, 0, 32, - 61,160, 94, 61,136, 45, 39, 39, 7, 94,236, 87, 91, 91, 11,110, 0, 72, 75, 75, 51,124,249,242, 5, 44, 7, 91, 11, 64, 10,160, -198, 52,192,139, 23, 47,104, 22,134,180, 52,123, 20, 12,127, 0, 16, 64, 44,180,236, 53,211,194, 60,100, 0,170, 84,168, 97, 62, - 53, 87,245,211, 99,100,132,218, 21, 6, 41, 59, 3,136,137, 19,100, 64, 74,175, 31, 35,113,178,176,128,135,117,145, 1,168, 55, - 8, 59, 72,102,160, 70,159, 70,146,121,180, 0,200, 55,247, 33,223,222, 7, 58,205, 15,180,120, 15, 84,153, 19,123,131, 31,172, - 71, 15, 82, 15,170,224, 97,151, 1,129, 0, 72,108, 48, 92, 6, 52, 10, 70,193, 96, 5, 0, 1,196,232, 19, 83, 59,122, 79,230, - 40, 24, 5,163, 96, 20,140,130, 17, 3, 54, 47,110, 98, 28, 13, 5, 6, 6,128, 0, 98, 26, 13,130, 81, 48, 10, 70,193, 40, 24, - 5,163, 96,228, 1,128, 0, 26,109, 0,140,130, 81, 48, 10, 70,193, 40, 24, 5, 35, 16, 0, 4,208,104, 3, 96, 20,140,130, 81, - 48, 10, 70,193, 40, 24,129, 0, 32,128, 70, 27, 0,163, 96, 20,140,130, 81, 48, 10, 70,193, 8, 4, 0, 1,132,178, 11,192,215, - 86, 6,206,198,118,141, 45,190,107,110,177, 29,237,138,108, 30,169, 96, 56,154,135,190,109, 17, 57, 60, 71,195,111, 52, 62, 70, -178,121,132,182,180, 14,180,121,163,241,139,223, 60, 74,204,194,229,190, 81, 64,123, 0, 16, 64, 52,191, 11,128,252,227,105,217, -112,154,135, 12,176,221, 6,136, 77,205, 64, 0, 88, 5, 3,242, 63, 98,111, 60,100,211,197, 96,217,171,125,235,214, 45,240, 69, - 41, 48, 80, 84, 84, 4,222, 99, 63, 28, 1,182,248,184,126,253, 58,152, 6,109, 65, 27, 72, 0, 74,179,254, 1,233, 12, 27, 55, -204,196,154,102,183,109, 63, 7,150, 35,148,150, 65,230,128,206, 78,208,211,213, 97,248, 7, 76,106, 48, 54, 8, 92,186,140, 41, - 14, 98,147,154, 63, 96,249,139, 90,249, 10,118,162, 37,182,123, 46,200, 13, 75, 98, 26, 1,163, 96,224,192,205,155, 55,135,109, - 57, 51,148, 0, 64, 0,209,229, 50, 32,114,142,107,189,250, 20,119,139, 16, 91, 37,138,126,202, 22,177, 21, 45, 57,123,234,137, - 41, 84, 96,230,194, 42, 27, 92,123,154, 97,234,240,221,103,143,238, 70,105, 69, 89, 48,253,242,199, 15,134, 63,223,127, 66, 4, - 63,124, 2, 83,184,238, 71,192, 5,144, 43,127, 16,232,235,235, 35,169,208, 4,185,141, 9, 24,196,160,138, 4, 70,131, 0, 62, -246,244, 25,244, 47,148,209,227, 3, 86,241,147, 27, 31,212,172, 88, 96,149,191,151,167, 17,136, 7,174,232, 41,177, 3, 86,225, -131,128,142,142, 14,138, 56, 44,158,144,197, 7,186, 81,134,124,170, 37, 57,135, 70, 97,139, 63, 88,121, 64, 73, 56,226,210, 75, -174,153,212, 48,143,218,141,175,129,104, 40,129, 42,255,254,254,126,134, 25, 51,102,140,214,192, 3, 12, 0, 2,136,110,183, 1, - 82,171,117,143,209, 24,160,134, 25, 36, 28, 13, 74, 76,207, 29, 54,234, 1,186,147, 28, 4, 96, 52, 54,117, 36,223,216, 38,192, -199,112,233,222, 10, 6, 78, 6, 25,134,191, 12, 71, 25, 94,205, 57,199,112,241,238, 91,134,160,142,249, 3,150,136,176,245, 44, - 65, 0, 91, 79,244, 31,145, 65,141,124, 6, 59, 62, 48,107,214, 44,162,227, 35, 33, 33, 1,204,135,209, 88, 11, 87,216,185,195, -120,204,114,118,222, 14,164, 61,169, 90,104,130, 42,127,136,159,103, 1, 27, 0,152,242,176,145, 1, 98, 64, 77, 77, 61,195,211, -231,111, 24,190,127,251,192, 96, 98, 98,194,112,233,210, 21,134, 69, 11,231, 98, 21, 95,176, 96,238,128, 22, 64,232,167,102,130, -248,148, 84,216,200,249,153,210, 70, 0, 46, 61,228,186,143, 26,230,193, 46, 67, 35,198, 79,164,148,185,248,204,163,102,217, 13, -171,252, 65,135, 52,129,242,238,210,165, 75, 25,162,163,163,137,214,191,101, 73, 51, 10, 31, 95, 67,125, 20, 16, 6, 0, 1,196, -132,222, 26,135, 97,114,248,196,180,242,137,109, 44, 16,170,132, 97,149, 38, 35,142,138,153,212,211,226, 64,137,145, 16, 14, 11, - 11, 35, 42, 35,129, 50, 41,174, 74,191,162,162, 2,236, 46, 80,133, 68, 74,195, 3,220,235, 7, 86,254,235, 50,130, 25,132, 25, -173, 25,158,207,153,204,192,243,246,195,128, 87,254,216,122,156,160, 74, 30,132,209,123,156,255,104,112,228, 20,161, 17, 28, 88, -124,224,170,244, 23, 44, 88, 0, 30,254,247,180, 54,132, 8,240,114, 15, 72, 24,130,134,248, 65,105, 12, 68, 83, 10, 30, 63,121, -206,240,240,193, 93,134,235, 55,174, 51,244,245,245, 50,104,104,168,128,195, 30,155,248, 64, 3, 80,165, 3,171,120,144,217,148, - 86,254,232,141,123,114, 70,250,112,233, 33,247, 36, 78,106,152, 7,170,136, 97, 55,156,130,244,129,202, 74,108,229, 37,242,141, -168,196, 52, 42,112,185, 3,102, 14, 53, 78, 31, 69,174,252,139,139,139,193,149,255,145, 35, 71,200,174,252,113,137,141, 2,226, - 1, 64, 0,161,140, 0, 32, 15,189, 97,187,208, 6,159, 60,190, 33,123, 88, 3, 1,215, 37, 56,232,102,129, 18, 28,174,150, 29, -182, 2, 2, 93,108,160,231,253, 86,173, 90,133,181,226,135,245,118,144, 71, 7, 64,226,196,128, 39,247, 30, 49,124, 93, 95,199, -192,147, 52, 17,220, 24, 16, 23,230,100,184,183,254, 30,164,242, 7, 54, 12,192, 83, 0,172,164, 95,139, 11,202,136,200,211, 0, - 32, 62,169, 0, 84,185,200, 1,235,205, 41, 49, 12, 12, 41, 11, 24, 24, 68,185, 24, 24,174,127,192, 46,126,245, 61,105,102,227, -106,196,145,210,120,106,106,106,194, 90,241,195,226,163, 43,193,135, 97,242,142, 19, 12, 18, 74,146, 12, 47, 30,190, 36,216,251, - 7, 1, 98, 70, 1, 72,233,121, 66,122,248,233, 88,123,250,176, 70, 1,177,102,113,114,178, 2, 43, 10,103,134,255, 12,172, 12, - 11, 23,204,135, 95,150,133, 75,156, 90, 21,215, 64,229, 59,244, 97,127,244, 52, 66,202, 72, 0, 76, 13,242, 58, 2, 66,234,136, - 73, 3,212, 50, 15,214, 8,128,132, 55, 40, 51,189, 7,234, 17, 36,187,242, 71, 54, 15, 86,209, 35, 95,161, 14, 51,135,210,184, - 5, 85,254,160,233, 69,216,241,207,182,182,182, 12,135, 15, 31, 38,107, 45, 84, 90, 57,164,236,156,213, 89,193, 48, 10, 40, 3, - 0, 1, 68,151, 41, 0, 80, 34,130,205,189, 98,107, 88, 32,139, 17, 26, 77,192, 87,248,144, 91, 32, 17,211,179, 39, 23, 32, 39, -112,228,138, 31, 6, 96, 67,158,132, 86,193,126,103,120,196,240, 37,208,156,225, 63,111, 9, 48,199,214, 50,124, 97, 88,206,192, - 48, 7, 82, 49,252, 95, 93,194,192, 26, 55,153,225,207,159,127, 36,187, 79, 77, 77,141,226,204,253,106, 30, 3, 67,227, 12, 6, - 6, 89, 25, 6,134,151, 91,216, 24, 22,206,253,197,144,176, 2,183, 56, 41,128,218,247,217, 35, 47,246,123,190,161,131,129, 87, -155,131,129, 71,181,128, 97, 85, 71, 10,131,190,142, 4,131,186, 79, 11, 81,241, 65, 76,250, 36,118,170, 0,150,118,145, 43,127, -144, 24,108,225, 31,169, 32, 43, 43, 19,235,148, 12, 46,113,122, 3,216, 98, 76, 66, 21, 39, 49,151,102, 97,235,249, 99,155, 86, - 35,182, 17,128, 60, 26, 65,204,156, 61, 49,113,139,108,222,255, 85,130,152,101, 68,216,123,162,205, 35,102,212,148,156, 74, 27, -189, 81, 1, 2, 66, 66,123,168, 82,249,103,102,102, 66, 58, 10,192,158,127, 73, 73, 9,195,132, 9, 19,224,149, 63,236,162, 47, - 98,123,255,176,202, 31,198, 6, 53, 2, 64,114,163, 83, 1,228, 1,128, 0,162,219, 26, 0, 80, 70,134,205, 95, 33,207, 39, 33, -183, 86, 73,157,103,194,181, 24, 16, 95,207, 17, 87, 3,133, 22, 0,214,187,199, 86,241,147,210,251, 7,129, 29,149, 13, 12,190, -237,125, 12,127, 92,172, 25, 64,145,198,115,252, 14,195,238,187,111,193,114,127, 92,114, 25,126, 95, 22, 97, 96, 20,205,162,202, -144, 36,169, 25,254,109,192,114,134,220,196,199, 12,183, 50,202, 24,190,238,253,197, 32, 33,130, 95,156, 26, 35, 0,228, 52, 14, - 64,189,126,112,193,225,107,199,112,226,217, 43, 6, 94,125, 94,134,167, 59,239, 50, 48,112,176, 51, 4,231,198, 49, 8,201,248, - 12, 88, 70,196,181,234,159,212, 56, 1,169, 59,122,244, 40,124,161, 37, 49,108, 82,221, 70,201, 66, 52, 82,122,167,160, 70, 2, -190, 69,173,184,210, 47, 49, 11,127,135, 67,133,129,222,243,135, 84,222,160,242,140,122,163, 49,212,232,249,131,242, 41,232, 50, - 38, 24,176,177,177, 1, 55, 0,136,173,252, 71, 1,237, 0, 64, 0,177, 16,147,161,136,145, 39, 38, 67,193, 90,243,176, 69, 37, -176,181, 1,176,209, 1,144, 60,177, 35, 0,180, 42,120,169, 9, 96, 91,206,112,173, 7, 32,101,193, 83,208,140,181, 12,255,253, - 20, 25, 94, 90, 26, 49, 8, 51, 88, 51,112, 6, 3,123,252,207, 95,131,135,255, 89,222, 46,103,216, 50,225, 44, 3, 3, 51, 51, -201,126,167,198,220,222,197,162, 72, 6, 19, 3, 96,252,230, 94, 97,208,230, 73,100,184, 41, 31,202,192, 48,165, 12,167,248, 64, -141, 0,128,194,219,214, 84,157,193,197, 90,141,193, 87,183,140,161,119,194,116,134,107,103,159, 50,100, 56,153, 48,188,216,184, -141,225,227,251, 79, 84, 73, 15,216,166, 10, 8,229, 15,124,189,125, 82,119,101,208,122, 27, 32, 37,225, 66, 10, 31,214, 56, 39, - 52, 37,136,172,143, 80,122,161, 86,154, 31,104, 0, 42, 63,113,173,149, 66, 30,194,167, 4, 80,195, 28,216, 52, 19,232,102,207, -194,194, 66,134, 51,103,206,144, 52,239, 63, 10,104, 11, 0, 2,136, 5, 87, 65, 67,141,131,128,208, 19, 18,250, 40, 0,172,178, - 7,137, 35,239,205, 6,169,249, 78,102,239,144,212, 57, 37, 90,109, 3,132,245,238,241, 45, 6, 36, 5,220,237, 78, 99, 96, 5, - 86,250,223,159,221, 98, 96, 57, 62,153,225,247,218, 92, 6, 70,175, 30,134, 77, 89, 33, 12, 15, 55,221,103,240,237, 90, 4,202, -101, 3,146,136,202,128, 61,142,157, 93,235, 25,180, 31,186, 51, 48,188,249,202, 80,234, 90,134, 87,156, 26, 35, 0,228,246,254, - 55,174,111, 96, 96,150,214, 98,224, 97, 80, 99,120,116,112, 22,195,103,198,255, 12,167,110, 61,102,112,185,242,148,200,120,127, - 4,231,135,133,205, 68,169,236, 65, 96,239, 94, 79,172,234,240,229, 15, 66, 67,253,164,174, 98, 31,172,219, 0, 65,126, 64, 30, - 1, 64,246, 19,186, 31, 97,249, 18, 54, 2,128, 45,252, 40, 89,141, 63, 92, 14,158,129,245,250, 65,163, 1,232, 35, 2,228,142, - 42,128,226,135, 26,149, 63,104,145,223,161, 67,135,192,211, 30,160,105, 14,208, 2, 64, 80,190, 5,173, 1, 24,221, 2, 56, 56, - 0, 64, 0,209,253, 28, 0, 80,102, 6, 37, 48, 88, 65,128,171,113, 64, 40,131, 18,179, 24,144, 22,189, 76, 98, 27, 24,176,222, - 63,182,138, 31,214,208, 33,197,189,160,213,254,191, 47, 55, 50,188,100, 56,202, 32, 1,172,248, 25, 62,126, 98,184, 59,171,132, - 65, 57,179,159,225,197,252, 18, 6, 6, 86, 96, 84, 50, 13,204,201,206,143,190, 50, 48,104,138, 5, 18, 45, 62, 16, 35, 0,160, - 48, 15,119, 49,103,224,255, 39,200,240,141,129,149, 97,109,127, 46,195,180, 45, 23, 24, 74, 61,108, 24, 18,250,150, 49,132,180, - 45, 30,144, 69,108,176,138, 14,113, 14, 0,101,141, 83, 16, 24,204,219, 0, 65,121, 27,148,215,209,183,255, 97, 3,196,172, 1, - 32, 38,143, 82,123, 29,201, 96, 30, 21,160,134,126,114,167,100,145,193,178,101, 75, 25, 14, 28, 56,192,192,184, 70, 24,204,223, - 85,195,203,224,214,242,153,193,206,206,142,164,109,127,163,128,182, 0, 32,128, 6,228, 32, 32, 88, 69,143, 46, 71, 78,102,199, - 86, 72,146, 83,144, 19,179,159,156,208,246, 68,124,189,127,114, 43,126, 24, 0,173,246, 95, 7,164, 61,218,189,193,139,254, 24, -195,122,193,141, 2, 70, 33, 65,134, 59, 79, 62, 65,122,255,204,204, 3,146,136,112,237,247,167,228, 28, 0, 98, 26, 92,196, 22, -236,176,222,127,138,131, 30, 67, 65,207, 68,134,202,170,114, 6, 81, 62, 49,134,171,215, 30, 49, 36, 92, 91, 54, 40, 78,139, 67, -175,252, 97,233,132,156, 83,237, 64,219,253, 30, 63,126,196,240,246,221, 43, 96, 15,236, 32, 67, 78, 78, 54,124, 27, 32,186, 56, -185, 61,104, 74,203, 3, 98, 23,207,145, 95,155, 65,119,226,236, 9, 35,185, 60,161,229, 46, 0, 80, 79,152, 18,243,112,245,216, -141,141,141, 7, 77,165, 2, 95,236, 8,171,252, 47,253, 97,152,191,255, 23,152, 61, 90,249, 15, 46, 0, 16, 64, 40, 13, 0,244, -249,119,210,248,108, 36, 55, 8,208, 19, 58,108, 20,128,146, 94,226, 96, 56, 98, 23,185,247,143,190,253, 15, 20,102,200, 13, 9, - 82, 90,217,176, 70, 64, 96,251, 60,134,255,107, 25, 24, 68, 18,102, 50, 28, 40, 8, 97,176,233, 92,202,192,192,202,202,192,205, -193, 54, 32,254, 69, 30, 78,198,198,166,100,200,153, 26,189, 55, 88,239,191, 96,214,102,134,170,100, 55, 6, 41, 9, 7,120, 67, - 20,189, 97, 71,106,175, 7, 82,104,123,130,167, 1, 16,195,255,228, 87,166,232,231, 0, 32, 31, 15, 76, 44,160,246, 54, 64,122, -140,128, 32,179, 7,178, 65, 70,235, 93, 0,148,154,135,171,199, 78,201,233,137,212,142,207,127, 43, 5,193,149, 62,184,241, 13, -172,248, 87, 28,251, 5,206,199,163,199, 50, 15, 62, 0, 16, 64,116, 57, 7, 0, 91, 3, 0, 87, 69, 63, 16, 9,153, 86,219, 0, - 97,141, 17, 80,194, 71, 63, 48,137,220, 35, 79,193,251,254,145, 14,254,177,175, 66,204,165,125, 29,192, 2,147, 86, 97, 71, 45, - 0,234,253,187,238, 57,201, 16, 93,191, 8, 62, 23,141,158,238, 6, 67, 33,138, 62, 18, 64,206,193, 64,180,216, 6, 72,104, 58, -130,220,116,128,188,246, 7,198, 31, 44, 96, 48,158, 4, 56, 84,128,123,203,103,170,250, 17,180, 8, 20,180,221, 15,180,237, 15, -253, 28,128,209, 45,128,228, 3,128, 0,162,203, 20, 0,174,194, 3,223,118, 32, 82, 34,149,210,202,130, 22,219, 0, 97, 43,252, -209, 79,234, 34,167,162,129,141, 28,208, 43, 94, 6,195, 37, 42,212,182,223,181,102, 54,213,226, 3,215, 40, 0,185,110, 38, 84, -201,131, 70, 1,144,213, 97,155, 46, 64,118, 11,181,183, 1,210, 18, 32,175,253, 1,209,228,198, 5, 70, 25,128, 52,244, 79,110, -249, 48, 24,239, 2, 24, 10,121,143, 41,252, 61, 56,204,253,252,211,176,166,113,124,233,151, 24, 48,122, 0, 16,245, 0, 64, 0, -177, 12,214,196, 68,236, 42, 93, 74, 19, 43,181, 51, 30,204, 60,106, 86, 52,180,234,157, 14,238,158, 7,104,232,159,113, 80,198, - 7,181,195,146,210, 2,113, 40,143,244,128, 0,108, 97, 48,185,139,206,104,229,182,161, 50, 2, 48,248, 26, 15,212,201,187,184, - 70, 1,200,237, 40,142, 2, 76, 0, 16, 64,140,192, 0,252, 63, 26, 12,163, 96, 20,140,130, 81, 48, 10, 70, 10,216,188,184,137, -113, 52, 20, 24, 24, 0, 2,136,105, 52, 8, 70,193, 40, 24, 5,163, 96, 20,140,130,145, 7, 0, 2,104,180, 1, 48, 10, 70,193, - 40, 24, 5,163, 96, 20,140, 64, 0, 16, 96, 0, 40,145,145,213,136,201, 82,122, 0, 0, 0, 0, 73, 69, 78, 68,174, 66, 96,130, +137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, + 68, 82, 0, 0, 2, 0, 0, 0, 1, 0, 8, 2, 0, 0, 0, 74,242, 89, 48, 0, 0, 0, 9,112, 72, 89,115, 0, 0, 11, 19, 0, + 0, 11, 19, 1, 0,154,156, 24, 0, 0, 0, 4,103, 65, 77, 65, 0, 0,174,211,164,123,114, 68, 0, 0, 0, 32, 99, 72, 82, 77, + 0, 0,110, 39, 0, 0,115,175, 0, 0,246,112, 0, 0,129,232, 0, 0,107,215, 0, 0,226,170, 0, 0, 48,131, 0, 0, 21, 42, +251,118,133,113, 0, 0,160,228, 73, 68, 65, 84,120,218, 98,252,255,255, 63,195, 40, 24, 5,163, 96, 20,140,130,145, 7, 0, 2, +136,105, 52, 8, 70,193, 40, 24, 5,163, 96,100, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, + 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, + 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, + 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26, +173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, + 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 98,244,137,169, 29, 13,133, 81, 48, + 10, 70,193, 40, 32, 9,108, 94,220, 52, 12,124, 1, 16, 64,163, 61,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, + 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70, +193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, + 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, + 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, + 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 88,112, 73,108, 89,210, 12,103,147, +119, 96, 28,196, 4, 82,245, 82, 98, 47,178, 94,178,157, 77,146,203,209,108, 36,195, 94,242,252,139,213, 94,178, 77, 24,168, 56, + 26, 77, 87,163,233,106,240,164,171,145, 9, 0, 2,136,137,152,116,128, 43, 89,224,210, 11, 65,100,100, 15, 10,237, 37, 50, 53, +147,151, 7,104, 1, 48,253, 75, 31,219,169, 24,206,244,212, 59,154,174, 70,211, 21,213,245,142,112, 0, 16, 64, 44,120,228, 32, + 21, 41,157, 67, 19,185,246,134, 36, 92,226, 91, 76,104,122,233,150, 75, 41,108,113,192,181, 19,111, 59,166,141,196,235,133,171, + 76, 43,239, 0,146,179, 58, 43, 32,130,196,135, 51, 68, 35,169,122,225, 0,217,222,209,116, 53,154,174,134,116,186, 26,234, 0, + 32,128,152, 8, 38,122, 82,171, 1,160,122, 8, 34, 35,189, 14,108,223, 13, 45, 21,210,199, 58,100, 47,147, 29, 2,100,140,138, +192,189, 73,137,127, 73,210,139, 22,188, 16,198,104,186, 26, 77, 87, 3,155,174, 70, 56, 0, 8, 32,150,225,225, 13,180, 52, 74, + 70,194,165, 36,151, 14,236,248, 35,121, 99,226,163, 96, 52, 93,141,166,171, 81, 0, 16, 64,131,116, 21, 16,124,212,146,140,185, +160,129, 77,184,100, 15, 82,211,173,205, 2, 9, 25,120, 79, 25,194, 24, 33,249,124, 52, 93,141,166,171, 81,128, 12, 0, 2,136, +101,112,230, 82,202, 91, 61, 36, 13, 32, 82,216, 73, 71, 27,108, 37,195,106, 50,220, 76,121, 51,141,140,209, 82,160, 69, 64, 27, +135,232, 48,235,104,186, 26, 77, 87,163, 0, 13, 0, 4, 16,211, 48,203,165,200,195,157, 68,182,125, 40,201,165,104,163,171,100, +143, 80,195,205,161,231,216, 37,208,203,100,248,154, 66,255,142,166, 43,250,164, 43, 72,228,194,163,120, 52, 93,141, 2,172, 0, + 32,128, 88,134, 83, 46, 69,107, 80, 80,216,108, 33,163,221, 52, 32,193, 69, 94,227, 14,121,210, 12,232,119,146, 60, 59,228,242, +231,104,186, 26, 77, 87,163, 0, 43, 0, 8, 32,166,225,145, 75,233, 57,214, 57, 24,236, 29, 5,163,233,106, 20,140, 2,202, 1, + 64, 0, 49,225,170,135,225,233,143,206,115, 95, 84,177,136,164,204,131, 60, 8,131,220,245, 38,175,188,160,131, 22,170, 0,180, +201, 58,242, 10, 38,146,210,198,192, 78, 18,142,180,116, 53, 80,227,233, 35, 45, 93, 13,117, 0, 16, 64, 44,131,173,108,194,180, +148,152,184,132,244,205,169,181,101,159, 66, 55, 19,159,112,225,147,123,100,184,153,236,138, 25,110, 47,114, 22, 37,251,152, 1, + 74,202,136,209,116, 69,211,116, 69, 94,252,142,166,171, 17, 5, 0, 2,136,113,180,170, 28, 5,163, 96, 20,140, 2, 82,193,230, +197, 77,195,192, 23, 0, 1, 52,122, 26,232, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64,163, 21,192, 40, 24, 5,163, 96, 20,140, + 80, 0, 16, 64,163, 21,192, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64,163, 21,192, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64, +163, 21,192, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64,163, 21,192, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64,163, 21,192, 40, + 24, 5,163, 96, 20,140, 80, 0, 16, 64,163, 21,192, 40, 24, 5,163, 96, 20,140, 80, 0, 16, 64,136,157,192,190,182, 50,196,107, +219,124,248, 9, 50, 23, 77,239,253,171,199, 25,152,126, 72,202, 72,127,254,254,245,253,219,175,106,154, 54,196,235, 61,114,238, + 46,195, 63,246,151, 79,159,114,115,114, 11, 10,113,155,155, 40, 18,175,151, 18, 55, 63,125,182,154,141,227, 15, 59, 7, 11, 51, + 11,243, 95, 6, 70, 62,182, 64,226,245, 10, 8, 25, 11, 10, 10,114,114,114, 50, 48, 50, 94,187,188, 9,191,189,156,210, 55,136, +119,243,247,167, 26,200, 92, 41,174,151,196,235,125,246, 77, 28, 69,239, 79, 18,236,125,198,142, 98,175,244,175,155,196,235,125, +202,166, 62, 24,244,106, 99, 11,231,206,206,213,229,229,161,152,226, 87, 81,195,153, 83,230, 23, 9,113,244,132, 13, 37,109, 72, +147, 16, 71,155,159,162,196,209,143,159,220,196,235,229, 96,255,138, 98,148,223, 20,226,245,250,110,202, 65,230, 22,191,152, 65, +188,222, 94,137, 12, 26,229, 65,186,233, 29, 5,112, 0, 16, 64,248,142,130, 72, 61, 80,196,232, 24, 63,235,191, 62, 49, 6,221, +187,178,139,145,225, 31, 15, 59,231,252,153,203, 22, 46,156,104,237, 98,253,231,235, 55, 45, 13,187,127,255, 24,178,203,254,106, +105,169,223,185,243,240,199,247, 63,188,146,214,152,122,143,158,127,245,159,129,241,203,207,239,233, 69, 45,141,147,220,159, 93, + 61, 11, 76,222,219, 46, 62, 97, 98, 98,152,216, 80,115,235,214, 77, 5, 5,121,118, 78, 22, 97, 65,118, 76,189,215, 55,111,103, +103,103,231,226,226,226,229,229, 21, 16, 16, 16, 22, 18, 22, 18, 18,228,231, 23,224,225,230,102,102, 97,249,247,239,239,247,239, +223, 63,127,250,124,225,219, 71, 92, 46,191,115,107, 37, 59,199,119, 30, 94, 14, 14, 46,118, 22, 54,102, 70, 38, 70, 38, 22,230, +255,204,187,126,255, 97,100,251,227,138,223,215,247, 31, 49,137,136,136,112,112,255,248,249,243, 7, 19, 51, 19, 35, 35,131,148, +172,237,135, 15,239,191,125,190, 66,187, 56,155, 53,107, 86, 90, 90,218,104,218, 37, 8,112, 21,247,164,170, 1, 2, 9, 78,174, +167, 79,159,178,114,176,255,227,226,162,167, 23,190,189,187,112,108,239, 10,100, 17,151,208,142,193, 25,218,139, 23, 45, 98,103, + 99,251,247,239, 31, 55, 15,143,175,159,223,104,242, 27, 18, 0, 32,128, 8, 28, 7,253,127,239,194, 52,103,194,117, 64,168,159, +202, 79, 39,161,223, 95, 62,176,252,101, 50,211,147,137,143,207,135, 14, 48, 49, 49,156, 56,190, 64, 68, 78,250,223,151, 79,246, +230,186,207,158,189,223,115,254, 15,154,222,244,244, 54, 6, 54,126, 70, 46,190,255,204,255, 47, 94, 75,156,183, 98, 39, 68, 28, + 88,115,120, 88, 90, 50,124,121,193,192,192,123,247,242,117, 86, 17, 1,107, 11, 29, 30, 1, 49, 76,219, 25,129, 13,111, 70, 80, +185,205,204, 4, 44,243,153, 89, 88, 65, 0, 72,178,176,176,252,249,195,200,196,196, 12,148,197,229,242,139,231,103,241,243,179, +240,242,240,136,138, 9,243,240,114,253,253,255,247,199,207,239,191,255,254,229,226,225, 18, 21,147,252,251,239,193,227, 27, 10, + 88, 53,238,216,125,139,151,151, 71, 64, 64,240,219, 55,206,111,223,184, 56, 56,216, 25,193,195,105,192,250,230,219,183,111,111, +222,243,189,121,243,230,237,155,151,214,150,178, 88,181,175,238, 92,141, 63, 72, 93, 18, 92, 4,197, 5,177,150,254, 84,172, 3, +170,186,187,129,100, 91,105, 41, 25,122, 43,187,186,128,100,123, 89, 25,241, 90,174, 60,125,122,235,214, 45, 32, 35,200,209,145, + 72, 45, 51, 87,173, 2, 69, 49, 44, 6,255,255,255, 15,100, 67, 72, 8, 23, 34,155, 22,138,165, 16, 7,150,236,248,203,119, 98, + 74,127, 69, 65,161,239,191,126, 2, 25,108,156, 28,191,190,255,248,247,245,219,155, 23,207, 37,117,117,241,104,145, 84, 86, 35, +232, 47,126,121,205, 27,251, 54, 18, 84, 6, 44,253,109, 92, 34, 56, 4, 13,136, 10,172,208,119, 4,149,132,133,133,173, 10,221, +131, 85,202,113,207,107, 56, 91, 75, 0, 84, 50,188,250,241,239,251, 31, 80, 8,127, 5,147, 51,205, 5,212,120, 89,177,234,237, +233,233,169, 42, 40,241, 15, 10,252,241,227,251,196,254,190, 41, 83,166,228,228,228, 80,152, 56,239,220,185,211, 13, 78,159, 51, +103,206, 28, 45,169,105, 4, 0, 2, 8, 95, 5, 48,219,161, 47,248, 68,235,191, 99, 91,211,172, 24,240,215, 1, 63,191,188,147, + 80,113,110, 41, 13, 90, 48,243, 0, 68,228,224,177, 25, 95,191,253,244,114,201,183,178, 78,136, 8,115,226,228,100,255,245,247, +207,231,111,191,212, 44,162, 48,116, 63,100,248,197, 16, 20, 61, 61,181, 8,218,181,244,176,114, 0,150,167, 27,246,237,220,118, +244,248,162,249,211,126,124,255,201,198,204,194,195,197,198,199,246,247,206,163, 23,232, 85,212,127,134,255,224,114, 0, 76,130, + 25,255, 64,212,191,255,255,254,130,193, 31, 48,192,234,236,147,199,103,137,137, 50,243,242,114,203,202,202,169,107,170,242,240, +112,189,251,240,246,217,139,231,175,223,190,249,247,231, 63, 55, 23,183,186,154, 22,191,192,163, 43, 39,120,208, 52,110,218,112, +138,129,133,253, 59, 11, 19, 27, 59,219,183,111, 28,192, 58, 0, 84, 1, 48, 2, 51, 9,227, 55, 16,248,242,237,219,215,175, 95, + 62,189,125,253,108,201,130,115,252,202,198, 88,109,239, 94,212,141, 43, 60, 75,227,176,151,200,239,223,191, 71,102, 11, 9, 9, + 65, 74, 67, 65, 65,193,187,119,239,174, 94,189,154,164, 90,129, 77, 28, 58,254, 0, 52, 84,144,236,238,200,234,213,217,217,217, +191, 95,189, 34,166,244, 23, 19, 19, 11,114,115,251,205,206,222,219,219, 27,236,228, 4, 41,190,241, 3,160, 7,123, 26, 26,160, + 35, 21,245,245,189,141,141, 88,217,184,180, 35,215, 1, 64,134,177,177,241,158, 61,247, 92, 92,148,136, 44,253, 53, 36, 36, 5, +248,248, 32, 53, 13, 55, 7,231,243,215,175, 62,189,255,192, 35, 32,248,240,244, 25,121, 83, 19, 60, 26,253,210, 74, 98,130,125, + 85, 21,160,173,135,250,222,201,112,169,198,226, 92, 32,249,104,251, 94, 51, 53, 89,162,134,122,136, 44,253,161, 45, 11, 33, 66, + 42, 92, 8,154,193,205,194,120,177, 49,153,145, 79,228,239,189,139, 63,239, 93,189,245,238,171,201,118,124,241, 59, 99,230,204, +162,244,236,184,148,164,213, 75, 87, 40, 40, 40,180,116,118,241, 54,180,108,216,176, 33, 32, 32,128,194,162, 31,148, 23,200,106, +157,144, 4, 6,246,238,229,129, 5, 0, 1,132, 94, 1,164,221,158, 6, 43, 89, 65, 77,235,255,255,190, 48,252,250,249,251,192, +178, 52, 7, 6, 66,253, 0, 54, 45, 77,117, 38,166, 3,183, 62,188,101, 96,184,254,241,233,109, 96,127,121,227,214, 73,223,222, +252,141, 78, 44, 4, 54,231,253,124, 45,255,178,240,224,210,124,235,214,117,160, 26, 47,125, 96,179, 78,138,129, 65,254,199,207, + 95, 33, 30,110, 28, 2, 76,139,150,237, 0,118, 35,214,172, 88,192,252,231,179,166, 60,251,157, 71, 24,125, 20, 96, 89, 15, 6, +160,178,254,239,159, 95,191,127,253,252,249,243,251,143,239,160, 62, 1, 19,211,159, 63,191, 65, 5,242,247,239, 12,216,102,187, +249,249,254, 3,251, 10, 66, 66,194, 42,202,170,106, 42, 26,192,174,194,159,191,255, 94,189,126,247,243,199,239,191,255,190,190, +126,249, 70, 70,250,187,134,170,198,185,243, 27, 24, 24, 36,144, 53,178, 51, 1,109,253,254,251,219,159,175,204, 12, 28,236,108, +192,210, 31,216,223,248,247,239, 15,208,210,175,223,190,189,122,249,236,234,165, 51,111, 95, 61, 3, 58,138,137,145,216,105,246, +121,211,231, 65, 24, 73,153, 73, 56,115,247,234,213,200,236,162,162,162, 71,143, 30, 1, 45, 37,175,137, 52,117,234,212,151, 47, + 95,174, 89,179,198,219,206, 78, 80, 76,140, 84,237,192,182,255,123,112,248, 3,155,123,160,158, 92, 88, 24,126,245,192,182, 63, +176,244, 7, 37, 20, 54, 54, 53, 53,181,181,251,246, 17,211, 21, 32,166,146,192, 15,128,165, 60,176,208, 63,123,246, 44,144, 13, + 39, 67, 67, 67, 9,150,254,106, 98,226,192,210,159,153,137, 41, 43, 38,250,251,143,159,189,115,231,114,113,114,254, 0,130,239, +223,153, 88,152, 31,159, 63, 47,107,104,136, 75, 47,164,148,191,253,224, 1, 50,151, 12, 96,238, 20,177,103,117,133,171, 95,242, +127,118, 85, 34,181, 48,134, 65, 91, 9,255, 87, 9,226, 18,193, 5,128, 13,255,135, 95,254, 30,116, 21,101,205,159,249, 41, 90, +145, 69, 80,140, 96,233,191,119,239, 94, 5, 73,169,148,172,140,138,194,178, 41,243,103,152, 25, 25,205,152, 60,163,160,172,100, +169,165,249,229,203,151,117,241,118,149, 8, 22,253, 42, 42, 42,244, 44,253, 25,134,194,117, 61,212, 5, 0, 1,132, 82, 1,164, + 30,171,252,198,204,241,239,239,191,127,140,204,188,255,191, 51,252,254,193,200,192,204, 32,173,198,250,235,235,255, 61,243,210, + 92,146,240,214, 1,255,152,153,153,193, 12, 96,139, 73,134, 95, 90,253,225,205, 53,211,103,206,103,250,201,229,230,104,189, 99, +239,209,111,223, 24,184,132,248, 49,181,113,114,169,127,255,118, 19, 88,124,195, 4,128,109,252,103, 76,204, 14,113,241,201,255, +216,191,110,217, 58,207,207, 55,137,139,155,225,219,219,247,104,165, 48,212, 86, 80, 75,255, 31,176,141,255,251,247,239,159, 63, +126, 2, 11,123, 96,153, 14,172,186,126,253,250, 5, 44,124,129,226,160, 6,249,151, 47, 12,252,232, 67,183, 7,247,207,148, 16, + 7,213, 18, 44,204,172,127,255,253,127,247,246,227,175, 63,191, 94,190,120,251,225,253,231,111, 95,127, 49,124,255,243,239,223, + 11,102,150, 43, 82, 50,242,220,156,156,216,198,157, 24, 24,254,252,250,254,254,245,171,239, 95,254,253,254,193, 12,172, 60,254, +252,126,245,242,233,181, 75,103, 95, 62,123, 12, 44,182,152,152,128, 69, 7, 19, 3,238,209, 39, 50, 0,164,129, 63,107,214,172, +144,144, 16, 3, 3, 3,118,118,246,190,190, 62,242,140,130, 52,255, 45,116,116,196,197,197,129, 37,184,143,189,189, 20,233,117, +128, 32,184,220,103, 21, 19, 3,154, 0, 36, 9,246, 3,128,109,127,214,159, 63,215,174, 93,139,220, 21, 32,126, 56,136,108, 0, + 41,247,225,213,100,122,122, 58,176,250, 36, 88, 1, 0,235,114, 81, 33,161,196,144,144, 15, 31, 63,189,126,247, 22, 60,166, 8, + 2,192, 4,198,206,201,245,233,237,155,207,143,159,240,202,226,156,138, 4,150,254, 75,214,110, 70,174, 0, 32,253, 0,115, 35, + 61, 47, 71,123, 34, 92,253,153,129,129,151, 87,216,192,197,143,123,247,166,185, 12,116, 25,253,191,180,112,194,207, 29,243,197, +102,159, 3,214, 4,204,124, 66,127,222,191, 2,150,254,192, 14,193,215, 63,255,153,113,180,100,238,223,185,179,109,211,214,133, +179, 23, 78,154, 59,109, 70,223, 4, 33, 97,161,150,182,150, 69,203,150,218, 90, 88,207,155, 59, 47, 40, 52,200,214,218,150,236, +134, 63, 80,132,166,117, 0,218, 45,102,144, 3,165, 71, 84, 29, 0, 16, 64, 40,177, 58,219,170,125,137,121,253, 50,171, 70, 62, +235, 64, 96,195,159, 81, 72,146,161,108,229,233,212,117, 12,126, 89,255, 24, 88, 25,142, 44, 79, 99,186,140,213,148, 77,251,222, + 49, 48,124,242,143,207, 7,182,226, 25, 24,128,108, 94, 96,102,151, 87, 55,226, 96,103,249,251,231,231,255, 95,160, 17, 24, 94, + 94,222,183,239,222, 99,234,157,208, 95, 4, 36,175,157,152,203, 4,117, 11,200,136,127,223,175,254,248,249,155,153,149,131,145, + 13, 52,230,248,249,211, 39, 97, 97, 97,236,213, 14,184,245, 15, 44,124,127,254,252, 5,108,248, 3,203,250,143, 31, 63,125,120, +255,225,221,219,119,111,129,224,221,219,247, 31,222,127,252,132,101, 6,152,157,253, 23,176,230,248,245,235,207,251, 15,159,238, +220,185,127,230,236,133, 83,167,206,223,184,113,247,217,211,215, 95,190,252,252,242,249,199,235, 87,239,175, 93,187,125,242,228, +217,167, 79,177,172,235,128,183, 75,127,125,255,246,244,254,237, 75,167,142,173, 95, 57,119,199,166, 21, 79, 30,221,251,251,239, + 47,168,220,103,132,213, 19,120, 1,174,209, 30,156, 53, 54, 11,180,206, 22, 20, 20, 4, 6,105,121,121, 57,121, 17, 15,108,254, + 3,107, 17,208, 24,183,168, 40, 35,101,181, 20,164,220,135,244, 3,240,140,255, 0, 73, 96,113,127,251,249,115, 96,209,111, 99, + 0, 26,214,184,116,233, 18,144, 92,183,127, 63,126,243,139,235,235, 75, 26, 26, 32,227, 60, 16, 6,132, 13, 97,224, 25,255,129, + 0, 96,243, 31,109, 28, 25,194,134,136,227, 2, 2, 44, 44, 63,126,253, 4,182,105,110,220,187,123,239,201,227,147, 23, 46,254, +250,245, 27, 88,159, 3,195, 31, 24, 92,192, 70,199,247,175,223,118,175, 90,137,199, 4,120,233, 31, 19,236,139, 50,240,120,238, + 18,188,103,128, 23,240,194, 82,170, 42,164,232, 7,118, 5, 88,255,220,166,109,121,240,238, 57,155,156,218,171,108, 43, 96, 77, +192, 34, 34, 9, 17, 3,114, 69, 56,152,248, 88,176, 39, 18,117, 85,117, 46, 46,238, 73,115,166, 58,218,219,155, 91, 90,220,191, +115,255,198,157, 91,192,118, 25, 7, 59,187,181,177,245,214, 77, 91,215,175, 95, 79, 76,209, 15,172,149, 33,165,255,174, 93,187, +224,195, 62,240,250,128, 62,128,188, 11,156,135, 52, 0, 8, 32, 44,115, 0,105,140, 23,255, 31, 92,198,200,204,194,144, 59, 55, +255,129,228,164,190,133, 12,188, 60,211,107,111,166,182,169, 51,239,153,149, 38,171, 57, 75, 53, 11, 52,184,193,196,140,172, 75, +133, 79,230,202,165,117,176, 74,229, 43,176, 88, 0,161,223, 63, 89,254, 1,155, 14,160, 50,125,253,134, 93, 64,210,218, 19,203, + 64,193,142,203,255, 61, 12,117,144,218,214, 64, 87,177, 50,176,114,252, 97,252,251, 15, 92,132,134, 71,231,129,230, 10,142,205, +194, 90, 1,252,249,251,151,233,247, 31, 38,166,159,160, 22, 55, 3,227, 95, 96,157,243,243, 7,176,161, 6, 44,214,128, 29, 11, + 96, 87, 0,216, 51, 96,151,149, 68,211, 8, 42,253,127,255, 99,248,254,235,205,155,247,223,190, 1,179, 58, 11, 48,135,255, 4, +226,191,191,129,189,138,255, 64,205, 76,191, 63,127,249,245,250,245,231,175,223,129, 21,152, 26,142,242, 31,202,248,249,227,251, +199, 15,239,192, 19,206,224, 73,105, 82,226,224,230,195,155,234,242,234,120, 70,126,144, 7,196, 57, 97,221, 17, 96, 73,116,239, +222,189,206,206, 78,240, 40, 71, 57, 63, 63,255,199,143, 31, 63,124,248, 64,204,152, 9,164,249, 47, 33, 1,237, 81,229,228,228, + 76,158, 60,153,188, 78, 0,220, 4, 60, 21, 0,124,244,159,145,151, 23,232,224,178,178, 50, 96, 35,250,247,251,247, 64, 55, 87, +228,228, 16,236, 7, 32,143,245,227,154, 15,192,212,213, 73,104,154,253, 44, 24,224, 26,249,125,255,238, 29, 15, 47,239,155,247, +239,247,159, 60,201,194,196,252,243,247,239,111,223,191, 3, 19, 27,100,210,229,207,111, 96,170,250,137, 63,168, 49,135,125,128, + 34,144, 78,128,170,130,194,163,123,119, 72, 10, 97, 96, 29,240,245,245,201,237,235,231,146,209, 15, 32, 56,242, 3, 7, 23, 86, +205, 54,136, 47,100, 87,212, 3,245,111,223, 60,191,245, 14,180,210,148,221,210,231,209,223, 63, 92, 83, 78, 98,213,242,233,211, + 39,118, 78, 14, 21, 69,197,251, 79, 30,191,125,253, 54, 60, 38,122,219,222,221, 19, 59,122,215,111,219,164,170,168, 26, 23, 28, +123,252,220,209,245,107,215, 6, 6, 7, 19,108,248, 3,139,126, 87, 87,208,186,187,221,187,119,211,191,244, 31,153, 0, 32,128, + 88,176,148,254,251, 22, 0,155,199, 12, 66,114,223,100,205, 39,181,204, 96,248,251,149,225,197,167,154,229, 7, 51,252, 51, 24, +246, 44,124,244,226, 53,131, 42, 3,176,205,141, 86, 1,220,249,244, 73, 77,128,239,207, 79,134, 59, 7,150,168, 56,184, 51, 48, +128,100,127,255,250,205,202,192,244,229, 7,104, 17,133,135,131, 17,167,176, 52, 86, 71,120,232, 50,110,187,248,159,149,131,129, + 77,206,253,215,163,195,144, 78, 0, 43, 27,251,111,134, 31, 60,156, 28,160, 30,198,182,229,223,223, 62,182, 80, 22,192, 86, 1, +252, 7,141,254, 51, 2,221,195, 8,169, 15,128, 37,254,247,239,223, 33, 45,101, 80,245,240,231, 15, 80, 68, 20, 67,227,143, 31, +127,192,227, 54,255,126,254,252,251,249,243,119, 96, 94, 6,178,127,255,254, 11,172,191,152, 88,152, 25,152, 24,255,131,178, 58, +227,159,127, 95,191,255,248,139, 47,119,193,107, 1,104,193, 15,111,251, 67,248,140, 84,108,254, 3, 1, 23,108, 25, 34,114,233, +175,164,164,244,249,243,103,160, 79, 33,197, 19,145,205,127, 5, 17, 17, 8, 23,200, 96,164,234, 80, 21,174,209,255,255,159, 63, +215,214,214,254,124,251,246, 55,164,209, 0,174,129, 88,127,254,244,245,245,125,250,234,149, 52, 85, 87, 88,194, 71,120,224, 19, + 0,104,192,216,216, 24, 50, 27,204, 0,218, 7,128, 46,251,231,231,175, 15,191,222,253,248,241, 67,128,159,159, 3,152, 20,255, +254, 1, 6, 44,164, 61,241,251,247,111, 96,163, 3,127, 56, 3,219,248,240, 25, 96,228,177, 32,228,153, 97, 82, 1,183,168, 57, +176, 29, 69,134, 70,226,231, 0,236,119,191,126,165,176, 6,216, 9, 96, 84,212,147,159,127,254,205,143,127,220, 44,140,191,142, +108,184,121,239, 62,174, 4,242,253,207,175,179,199, 79, 77,232,233,183,114,176,169,105,106,216,185,125,231,210, 69,139, 45,237, +108,100, 21,228, 88,184, 88,247, 30,222,187,108,225,226,117, 27,214,110,221,186,213,219,219, 27, 83, 59,176,225,143, 92,244,143, + 2, 58, 3,128, 0, 66, 25, 2, 74, 99,186,252,255,240, 82, 6, 78,142, 7,159,126, 49,124,255,200,254,239,155,158,142, 18,195, +219,111, 12,191,254, 56,232,171,129, 22,102,254,254,193,204, 8, 30,162,249,135, 89, 38,126,184,245,225, 17, 11, 59,131,135, 95, +225,178, 73,192, 70,202, 47,134,111, 63,255,126,103,216,176,255,194,158,211,215,128,210, 50,114,138,160,130, 21, 7,240,210,103, +252,253,131, 97,211,214, 29, 38,110,185,160,230, 63, 3, 43, 51, 39, 67,152, 79,168,151,157, 63, 80,246,201,195,187,255,127, 99, + 47,133, 33,115,192,127,128,173,254, 95,191,126, 0,219,225,223, 65,235,111,128,165, 33,176, 57,252,233, 35,176,117,242,249,203, +151, 47,223,190,125,195, 50,194,251,245,223,247,239,127,128,232,235,215, 95,159, 63,255,248,244,249,251,231, 47, 63,190,124,249, +249,233,227,143,207,159,127,126,254, 4, 66, 31, 63,254,252,248,225,251,251,247,223,177, 90, 12, 43,250,161, 75,144,192, 5, 63, + 35,188,173, 78,204,248, 15, 16,104, 90,106, 30,221,118,116,231,190,157,144,250, 0,216, 27,192,163,152,153, 25,180,206, 21,194, +238, 2,175,194,172,168,168, 0,150,254, 12,176,133,146,196, 55,255,197,197, 81,182, 32,101,103,103,111, 61,116,232, 25, 17,139, +121,176, 2, 96,243, 31,127, 21, 2,108,230, 67, 24, 43, 87,174,188,243, 2,180,148,107,203,129, 3,112,193,155, 55,111,138,138, +138,210, 40,137, 67, 74,121, 72, 65,131, 92,232,192, 75,127,236, 21, 45, 31,239,191,191,127, 63,189,123, 15, 90,206,251,225,253, +215,111,223,128, 8,152,152,190,126,252,244,249,195,135, 31,223,191,253,250,241, 3,152,236,112,105, 71, 46,229,225,165, 63,132, +141,188, 34, 8, 63,248,242,250,228,158,213,136,107, 14,191,189,187, 64,235,226,224,121,184, 2,176,220, 7,150,254, 63, 15,174, +121,152,104, 8, 44,253, 15,187,138,254,249,248,218,100,199, 43, 28, 35, 64, 12,192,150, 68,106,126,230,157,155, 55,143, 31, 56, +204,207,203, 31, 25, 30, 41, 32, 44,116,238,212, 25, 30, 54, 14,110,110,110, 73, 5,169,229, 43,150, 87, 84, 87,125,249,240,129, +120,103,208,173, 50,128,223, 39, 12, 71, 35,173, 2, 0, 8, 32, 68, 15, 32,237,214,180,255,175, 31,252, 96,229,216,243,138, 11, + 24,215, 10, 31,158, 51,175,107,217,158,222,220,173,165, 34, 41,200,145,171,193,201, 48,245,252,255,223,191, 30, 51, 75,160, 12, +129, 32, 0, 15, 48,197, 2,169,139,151, 54,235, 27,248,214,213, 44,218,184,174,111,215,254,235,142,150,218, 44, 44,236,187, 15, +159,251,207,204,242,235,239, 95,252,174,241, 48,212,216,113,246, 6, 67,111, 71,136,175,151,143,143,239,206,125,235,255,252,254, +225,237, 30,201,244,247, 55, 43, 51, 51,142, 57,128,255,144, 30, 3,116,237,231,191,127,204,160,225, 32, 38, 80,135, 0,216, 28, +254, 7, 93, 37,132,165, 2,248,198,198,200,248,157,149, 21,180,243, 11, 92,141, 48,252, 5,117, 23,128,232, 63, 35,243, 31,144, + 94, 6, 96,243, 31, 88,247,253, 3,246, 0,184, 4,113,182,254,145, 89,140,140,144,130, 24, 41,175, 48,226,107,254, 3, 75,127, +104, 43,117,193, 30, 32, 2, 50,128,149, 1,131, 23,190, 32, 2,251,151, 97,205,154, 53,144,188,167,168,168, 8,233,232, 0,155, +165,192, 30, 0,193, 10, 0, 88,250, 67,154,255,138,212, 43,112, 89,193, 3, 71,222,246, 56, 39, 54,173,116,117,123,123,123,129, +205,124, 96, 65, 15,236, 13, 4,184,128, 86, 34,170,171,171,195, 5, 31, 62,124, 40,194,206, 46, 1,235,145, 96,206, 1,192,123, + 54, 37, 13, 13,112, 63, 18, 28,253,135,131,208,208,208,213,171, 87, 3,203,253,153, 51,103, 66, 74,127, 96,243, 31,191,150,247, +111, 62, 50, 50,252, 1, 13, 31,190,252,198,198,193, 1,236, 80, 66,122, 0,223,129,109,132,175, 95,127,254,252, 9, 44,209, 60, +162,163,113,105,135,148,242,144, 81, 32,115, 35,189,147,231, 46,193,165,208,166, 4,112,129,207,175, 79,158, 60,176,222,217, 43, + 2, 90, 25,124,188,125,243,210, 81, 50, 26,254,196,143,255,128,250,106,239,190, 62, 74, 49,253,127,255,146,216,236,115, 95,255, +252,255, 20,173,200,191,236,254,167, 68, 97, 96,233,207,132,187,130,207,206,201,169,237,104, 17, 19, 22,249,253,239,239,237,199, +247,162, 35,163, 22, 45, 89,178,113,195,166,168,232,168,159, 63,126, 30, 62,115,236,251,247, 47,105, 9, 9,123,143, 31,199, 92, +199, 1,140,145, 59,119,238,184,129, 59,136,104,253,128,210,210, 82, 58,140, 2,193,175, 50, 70, 99,143, 16, 0, 16, 64,136, 10, + 96,150, 90,150,195,215,153,183,158,188,127,238, 11,174, 6, 79, 86,252,223, 50, 93,234,229,253,126,251, 32,134, 15,239, 24,218, + 22,252,127,122,227, 47, 39,247,135,119,160,238, 59, 35, 19,250,154,128,131, 7, 54,218, 59, 56,131, 10,214,127,191,239,124,120, +196,192,240, 87,133, 79,209,209, 81, 79, 92, 68,226,237,199, 79,160, 14,194,175, 63,207, 63,124,213,196,230, 8, 25, 57,203, 39, +143,142,131,211, 44,139, 7,104, 37, 40,203,142,203,191,119,110, 89,243,242,205, 51, 97, 1,208,194, 33, 1, 54, 86, 73, 1, 30, + 28,101,240,127,112,241,254, 15,178, 11, 0, 52, 35,204,244, 23, 88,166, 51,130, 75,226,255,208,221, 1, 88, 42,128,200,168,252, +197,139, 26,129, 89,155,153, 25, 50,118,244,255,223,223,255,192,158, 61,168,127, 15, 44,100, 25,129, 61, 29,198,191,127,255,255, +252,253, 47, 63,179, 17,109, 43, 57,210, 12,192,127, 56, 7, 94,244, 35, 40,188,157, 0,120,233,143,198, 6,213, 1, 56, 0,176, + 0, 2, 22, 61,192,226, 27, 82, 1,172, 1, 3, 32, 87, 89, 89, 25,104,251,196,137, 19,129, 29,130,119,239,240,237, 6, 42, 1, +131, 29, 59,118,124,125,137, 50,179, 13,172, 15,238,223,191,207,128,119, 83, 24,230,206, 47, 96,209, 15,172, 78,128,225,235, 99, +111, 47,141,123,254, 0, 88,178, 91,233,233,189,125,240, 0, 88,202,223,130,173, 5, 82,149,148, 44, 42, 42, 58,122,244,168,154, +154,154,142,180, 52,158,105, 15,228,113,127,226,231, 0,144, 39, 3,202,203, 65,139, 62,239,221,131,182,253,225,219, 2,240, 44, + 4,226,145, 22,251,254,252, 5,176,141,255, 21,216,151,124,243,154,145, 17,180,242,247,199,143, 31,144,100,118,255,218,245,223, +191,126,226, 89, 2,132,210,187,117,180, 7, 34,248,196, 47, 49, 67, 64, 95,222,156, 2,150,254, 32,103,112,115,111, 68,234, 4, +152,216, 6,210,180, 56, 48,217,254,234,140, 39,131,129,177,203,171,108, 43,137,105,199,128,245,129, 32, 27,227,219,119,239, 89, + 24, 25, 89,240,246,103,227,226,226,224,236,205,155, 55,123,121,123,110,217,180,101,213,170, 85, 13,213,181,187, 14,236,101,102, + 97,150,150,145, 6, 6, 36, 3, 27,150,133,124, 42, 42, 42,152,213, 0,100, 26,128, 62, 91,192, 70,242,189,232, 0, 1,132, 50, + 7,112,192, 48,157, 1,182,178,121,203, 43, 1, 31, 81,198,255,103,182,253, 63,190, 9, 84,178,113,112,252,224,226,221, 45,224, +240,194,210, 5, 60, 22,129,190, 33,240,230,173, 95, 71, 78,180,129, 74, 82,102, 14,200,112,197,157, 79,207,235,114,146,190,125, +251,249,233, 59,104, 14,224, 23, 19,187,147, 71, 8, 86, 71,212, 86, 39,236,216, 10,222, 86,243, 23,114, 6,203, 31, 15, 93,198, +136,172, 62, 46, 46,118, 62,240, 28, 0,235,191, 31,210,162, 56,202, 23,208,174, 80, 80,241, 13,105, 36,254, 99, 4, 65,200,222, + 96, 80,233,251, 31,223,184,200,183,111,156,223,191,127, 6,118, 2,128,125, 0, 96,153, 15, 52, 4,220, 3,248,247, 13,180,253, +145, 17, 40,242, 27,216,164,102, 98,196,102, 39,184,100,255, 15,175, 3,254, 99,246,137, 32, 83, 1, 49,137,129,184,206, 33,185, +126,252, 58,169,177, 5,244,201,247,239,223,117,117,117,149,148,148, 30, 60,120,176, 10,188, 75, 22, 82, 25, 64, 64, 71, 71, 7, +193, 58, 0, 8, 50, 50, 50, 48, 5,131,227,227, 25,136,216, 20, 6,217,154,139, 12,124, 29, 28, 8,206, 30, 75,192, 22,113, 33, +247, 6,128, 13,127, 19,117,117,182,175, 95,241,123,153,146,244,141, 92,202, 35,239,162, 96, 32, 98,159, 48,167,164,196,183,219, +119,254,254,249,243,233,253, 7,112,239, 10,212,140,120,255,242,213,167,247,239,129,174,194,211,252, 71,155, 12, 88,178,118, 51, +242,210, 79,228,233, 1, 28,233,242,226,137,253,144,245, 20, 12, 27, 87,131, 22,128, 26,217, 71, 8,137, 25,208,178, 28,248,143, + 82, 7, 48,204, 54,200,168,123,241,239,159,254,130, 83,167, 60,196,181,183,188, 4,150,254,188,172,196,238,104, 1, 70,238,190, + 3,251,156, 92,157, 55,173,221,208,220,217, 81,254,241, 35,176, 93,182,114,229, 90, 17, 17,145, 71,159,112,234, 66,171, 6, 24, +232,178, 5,108, 20, 0, 4, 16,206,157,192,192,126,192,220,203,123,116,254, 94,149, 96,253,248,227, 63,203,237,255, 2,204,175, + 63,189,176,128,110, 35,100,194, 54, 32, 35, 42,100,232,149, 16,247,247, 63,188,169,254,255,203,215, 79,204, 44,252, 12, 76, 92, +101, 61, 4,106,114, 15,111,157, 13, 83, 43, 24,152,190, 49,192, 26,235, 60, 60,252,127,127,191,103,248,255,245,225,177, 89, 38, +122,114,248, 82, 46,168,140, 96, 4, 22,195,160, 81, 27, 70,240, 88, 60, 35,108, 24, 30, 35,125, 35,131,244,140,178, 41,147,219, + 62,127,254,200,194,194,196, 0,157, 79, 6,245, 0,190,124,249,245,235, 15,168, 78, 97,102, 97,234,106,159,128,169,209,211,223, + 2, 72,238,220,124,226, 47,120, 20,248, 63,196, 9,208, 57, 95,168,237,241, 41, 33,120,252,155,210,156,242,224,238, 3, 50, 34, + 12,216, 3,120, 15, 94, 63, 99,108,108,108,102,102,246,250,245,235,187,119,239,130, 22, 38,254,251,183,118,237, 90,130,117, 64, + 78,124, 60,167,152,152, 15,182,225,154, 28,112, 5,192,137,187, 40,135,100, 72, 52,189,210,168,115, 9, 4, 1,176, 55, 96, 13, +238, 13,136,113,114,234, 88, 89,209, 52,113,163,149,239,192, 16, 67,155, 13, 38, 88, 7, 8,171,170,124,126,255,158,133,157,237, +231,207, 31,127,127, 3,211,196, 63, 94, 65,193,143,239,222, 1, 75,127,252,205,127,248, 70, 48,200, 4,192,201,115,151,128, 21, + 0,124,244, 31,215,190, 48, 53,201,247,111,222,190, 89,181,122, 57, 92, 36, 44, 58,249,221, 47, 85,210,202,114,140, 49, 31, 12, + 17, 70,130,253, 0,134,237,208,131, 28, 84, 54, 66,247,222,127,252,253,151,120, 55, 56, 57, 56, 93, 20,188,232,230,237,145, 26, +155,172,167,175,187,105,227,230,227, 23,206,166,165,165, 61, 34,116, 40, 27,188, 26,232, 6, 3, 90,247, 0, 32, 3, 62,240, 30, + 0, 26,119, 36, 0,128, 0,194,119, 20,196, 63, 93,151, 75, 12, 46,151, 72, 49, 78, 71,199,122,210,164, 69,121,249,145,210,242, +192, 84,251,147,149,157,227,201,243, 79,246,190,113,196,232, 53, 52, 84, 74, 72, 8, 91, 48,111, 29,195,191,135, 12, 12, 44,127, +126,124,151,150,228,151,227,251, 67,176, 81, 12, 44,113,255,131, 32,195,127,216,254,101, 6, 72,127,128, 8, 75,115,114,171,128, +100, 85,101, 30, 51, 51,211,127,208, 24, 11,176, 19,240,247,203, 23, 80,241,207,196,196, 56,125, 58,190, 83, 18,221,125, 65,213, +192,182, 13, 71,255, 35,138,127, 80,214, 74, 78,143, 36,104,239,199, 47, 31,177, 30,245, 67, 16, 0,203, 32, 96, 39,224,239,223, +191,159, 62,125, 98,102,102, 6, 50, 36, 36, 36,126,255,254,141,156, 85,128,117, 0,174, 51, 33, 32, 77,117, 65,178,150,123, 10, + 65,170, 84, 18, 75,124, 76, 32,142, 99, 75, 7, 46, 64,246, 28, 0, 90,201,142,117, 45, 16,193,237, 96, 10,102,166, 64,242,198, +193,131, 63,190,125,255,247,247,175,166,177,177,174,149, 29,143, 52,222, 0,252,207,248,240,254, 93, 32,205,198,192,144, 20, 4, +157,210, 1,138, 32,179,177, 46, 21,190,245, 28,152, 36, 4,195,163, 83, 30, 62,126,113,226,208, 22,160,200,170,165,115,205,237, +124,120,197,109,136, 9,168, 48,208,102,108,194, 39, 61,252,101,100,199, 42,254, 40, 80, 98,251,179, 31,212, 42, 89,244,193,224, +204,153, 51,123, 79, 28, 20, 22, 17, 38,233,144, 18, 72, 53, 64,183, 66,112,164,141,251, 35, 3,128, 0, 98,161,186,137,202, 26, +166, 91,119,222, 9,240,230, 18,147,150,125,247,249,143,189,119, 44,241,122, 45, 77, 53, 44, 77,171,210,211,235, 24, 24, 94, 10, +242,178,200, 9,253, 35,172, 37, 58,156,114, 55,183,181, 79, 2,146,121,121,185,191,127,253,250,247, 31,180,212,178,191,191,159, + 72,189, 94, 1,160,243, 77,183,174, 63,194,200,200,148,150, 21, 67,135, 56, 3,150,128,192,126,192,175, 95,191, 32,197, 34,164, + 64, 28,174,231,131, 18, 60, 97,130,120, 64,204,169,159,184,128,134,189, 61,241,138,159,223,187,105,174, 42, 67,182, 93,111,127, +169,240,136,171,184,132,218,144,170, 17,215, 41,111, 72,128,233, 15, 35,251,119, 38,236,243,255,119, 63,255, 81,227,197, 83, 32, +144,179, 80,216,196,196,100, 48,167, 46,204, 89,223,145, 54, 31, 0, 16, 64,140, 35,121, 2,100,232, 2,206,159, 55,190,163, 30, +217, 63, 10, 70,193, 40,160, 39,216,188,184,105, 24,248, 2, 32,128, 70,111, 4, 27,146, 96,180,244, 31, 5,163, 96, 20, 80, 14, + 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,104,180, + 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,136, 38,151,194,143,234, 29,213, 59, 56,245, 66, 78,131, 24, 13,171, 17,174,119, + 20,192, 1, 64, 0,177,160,101, 15, 98,244, 96,205, 66,148,232, 29, 5,164, 2, 92, 5,217, 40, 32, 53,148,112,169, 97,255,251, +255, 39, 51, 98,225,227,163, 71,143,158, 62,125,202,206,206, 46, 34, 34, 34, 39, 39, 71, 55, 47,192,207,124, 29,204, 57,232,213, +171, 87, 79,159, 62,197,175, 70, 90, 90, 90, 12,219,238, 19, 74,244,142, 2,202, 1, 64, 0,161, 47,251, 37,184,243, 30,207,161, +143,104,122, 49,143, 38,166,233,153,195,244, 47, 92,240, 43, 40, 40, 40,208,212,212, 36, 91,123,104,104,168,139,139, 11, 30,189, + 84,169, 3,220,221,221,129,228,206,157, 59,233,160,247,235,215,175,107,215,174,133, 92, 10, 31, 28, 28,108,136,251, 62, 69, 76, +207, 18,188, 20,126,198,140, 25, 88, 91, 27,248, 67, 9,143, 44,188,244, 7,150, 80, 63,127,254, 4, 90,193,193,193,241,227,199, + 15, 96, 77,112,250,244,105,125,125,125, 60, 55, 85, 89, 91, 91, 19,244,215,243,231,207,129,133, 59, 65,101,192,210, 31,114,220, + 55, 49, 97, 69,204, 94,144,176,176, 48,252,233, 10, 2,228,229,229,129,228,231,207,159,129,126,135,196, 29,158, 52, 9, 44,193, +139,138,138,240, 88,250,254,253,123,115,115,115,172, 65, 13,212,171,165,165,133, 71,239,203,151, 47,107,107,107, 71,155, 59, 52, + 2, 0, 1,196, 50,108,124, 66,255, 70,241,198, 25, 30,184,164, 2, 50,119, 80,210, 25,194, 83, 61,236,217,179, 7,153, 13,207, +144,247,239,223,135,220, 11, 79,124, 32, 92,190,124, 25, 82,136, 35,155, 67, 42,200,200,200,200,206,206, 38,230,234, 87,200, 77, +144,113,113,113,192,226,160,183,183, 87, 65, 65, 65, 80,144,240, 94,104, 96,201,187,125,251,118, 8,219,195,195, 99,199,142, 29, + 88,217,120, 2, 25,158, 48,128, 12, 99, 99,227, 89,179,102, 65, 10, 74, 98, 18,204,199,143, 31, 33,109, 79, 96, 77,195,201,201, + 9,172, 12, 62,124,248,192,207,207,127,234,212, 41, 6,240,134, 85, 92, 26,117,116,116,128,197, 37,188,224, 70,110,197, 67, 46, +113, 59,113,226, 68, 84, 84, 20, 49, 33, 76,100,233, 15, 1, 19, 38, 76,160, 60, 97,115,115,115, 95,187,118,141,149,149,245,215, +175, 95,192, 64,190,125,251,118,101,101, 37, 65, 93, 47,145,142, 23,180,181,181, 61,124,248, 48,156,251,230,205, 27, 34, 53, 98, +130, 7, 68,221,158, 70, 17, 24,201,151,194, 3, 4, 32,239,236,109, 24, 6,129, 40, 28,225, 42, 3, 80,193, 16, 46,210, 51, 8, + 13, 43,208, 83,102, 43,203, 27, 68,242, 56,180,249,148,139, 16,114,126,140, 73, 99, 41, 87, 89,150,206, 66,248,252,222, 59, 75, +220, 59, 40, 1, 44,203,210,168, 16,143,243, 99,196, 92,174, 79, 81,115, 75, 29,233, 0, 83,139,142, 91,249,194, 3,220,211, 52, +129,146,171, 73,103, 45, 81, 76,225,197, 27,114,111,160,253,231,121, 46,166,240,155, 59,143,246,151,153,145, 98, 10, 15, 7,180, +180, 2,191,155,194,179, 48,246,182, 54,133,167, 78, 64,231,205, 5, 67, 84, 80,148, 82, 42,132,128,246,167,201, 56, 63, 76,225, +115,206,195, 48,240, 40,173, 53,100,240, 54, 87, 80,190,104,252,110,231, 78, 18, 89,109,123, 19, 64,196, 24,229,162,156,102,127, +189,243, 41, 16,254,128,117, 74, 9, 14,160, 48,156,115,141,232, 95, 7,232,239,189,175, 57, 64,218,136, 47,133,212,253,114,199, +113, 52,198, 64, 87, 50,203, 86,194, 90, 75,129,241, 81, 80,159,187,208,255,244,127,166,240,119, 1, 68,205, 10, 0, 94,132,225, + 17, 33, 18, 0, 51, 27,176,105, 73,106, 29, 0, 76,118,195,126,112, 28,222,152, 5,150,218,144,195,211,145, 79, 3, 37, 30, 0, +155,255, 12,160, 75, 81, 92, 32,151,194, 3, 73, 98, 90,241,104,192, 25, 12,128, 70, 1, 77, 0,146, 4, 77,128, 20,169,228,117, + 5, 40, 1, 88, 47,133, 39,216,233,249,246,237,155,176,176,112, 68, 68, 4,176, 31,240,246,237, 91, 86,216,173,240, 64, 6,176, + 38,120,247,238,221,233,211,167,241, 24, 2, 44,253,225,181, 50,164, 2,128,244, 3,192, 55,145, 17,219,223, 2,150,251, 64,189, + 16,141,116, 72,216,192,230,246,193,131, 7,189,189,189,129, 53,129,136,136, 8,144, 13, 44,253,129,149,193,215,175, 95,153,153, +153,137, 44,253,171,171,171, 33,153, 17,173, 31,128, 11, 44, 91,182, 12, 79, 39,224,233,211,167,192, 40,192, 37,251,247,239, 95, +105, 48, 0,134, 54,164,115,172,175,175,111,110,110, 14,105,112, 16, 95,250, 67,110, 3, 30,129,151,194, 3, 4, 32,239, 12,114, + 24, 4,129, 40,218, 51, 17,238, 0,178,237, 53,122, 13,110,208,107, 52,172,187,243, 26, 38,222, 68, 22,125,233, 36,179,208,138, + 96, 72, 92,116, 22, 6,141,226, 8,241,255,153, 79,194,244, 36,128,173,112, 81,185, 50,220,139, 3, 66, 8,173,121,192,161,135, +135, 93,221, 31,239,215,211, 93,168, 92, 41, 64,180,134,255, 18,248,131,218,196, 74,252,129, 39, 8, 64, 76, 30,132, 3,246, 62, + 68,212,255,219,183, 40, 60, 33,191,238, 29, 47, 69,225,229, 98, 97,162,189,247,186,158, 52, 12,131,230, 4, 5,229,103, 27,133, +172,138,194, 51,236,170, 5,253,180,121,158,137,253, 65, 61, 26,188,113,154, 38,217,124, 73,138,194,131, 59,208, 67, 74,169, 0, +229,138,254,100, 27, 43, 54,106, 82,117,184, 89, 28,110, 77, 5, 78,216,178, 44,198,152,113, 28,173,181,204,154,136,108,156, 58, +231,114,206, 53,232,207, 49,198,184,167, 5,117, 55,194, 14, 18, 74, 56,149, 97,193,115,230, 72,208, 31, 62,192,237,202, 78,180, + 22, 60,141,127, 43, 10,246, 17, 64,212,172, 0,168, 62, 9, 76, 70, 29, 0,108, 78,146,212, 15,128,100,173,165, 75,151,162,137, +111,219,182, 13, 40, 72,164, 33, 39,238,107, 89, 40, 94, 35,111,228, 7,146, 88,129,201,151,188,211,220,208,110, 6, 38,102, 94, + 17,222,252, 71,187, 20,158,188, 78, 0,220, 4, 60,151,194,195,155,252,192, 50, 5,232, 90, 85, 85, 85, 96, 35,154,157,157,157, +159,159,191,165,165,133, 96, 63, 0,121,172, 31,215,124, 0, 25, 85, 59,176, 32,134,171,193,108,241, 1, 27,248,188,188,188, 64, +242,216,177, 99,192,106, 0,114,209, 52,252, 82,120, 96, 65,249,147,208,165,240,152,195, 62,240,170, 26, 24, 83,175, 72,188,125, + 19,152, 20, 33,113, 77, 70,115,129,248,147, 13,129, 17, 81, 90, 90, 10,201,113, 64,235,110,223,190,205, 0, 58,166,215, 16, 88, +255, 17,179, 14,135,146,178, 30, 82,121,144, 97, 32, 48, 30,129,177, 99,105,105, 9, 63,120, 14,232, 90, 96,223,133, 97, 20, 16, + 1, 0, 2,104,176, 79, 2,211,167, 14, 0,170,135,244, 91,225, 29, 97, 34, 75,127, 96,243,159,186,125, 38, 74, 74,127, 6,162, + 39, 12, 33,205,127, 29, 29, 29, 8, 23,200,160,176, 19,128, 31,192, 71,255,185,185,185,107,107,107,129,165, 63, 68,220,192, 0, +116,201, 9,176,220,247,245,245, 61,114,228, 8,144,164,250, 88, 25,164, 7,128,235, 82,120,120,165,139,185, 78, 28, 88,166, 0, + 75,255, 31, 63,126, 0,107, 41, 96, 93, 5,185,110, 19,126, 41, 60,144,129,191,244,135, 84,234,152, 99, 65,200, 51,195,164, 2, +178, 53, 18, 63, 7, 0,172,143,189,189,189,129, 57,136,139,139,203,193,193, 1, 24, 2,192, 40, 3,214,208, 11, 22, 44, 96, 98, +162,237,166, 81, 96, 89, 15, 31, 62,130,100, 64,226,171, 19, 96,131,230,209,163, 71,225,225,160,131,129, 87,174, 92, 9,186,122, +140, 56, 0, 57, 13, 20,216,234, 71, 30, 2, 26, 81,115, 0, 0, 1, 52,216,119, 2,147, 49, 19, 0, 4,196, 55,222,225,133, 5, +188,223, 74,124,233, 15, 1, 70,134, 6,123,247,237, 95,182,143, 11, 82, 31, 0,123, 3, 36, 57, 21, 88, 12,237, 1, 3, 72,125, + 64, 92, 19, 30, 90,244,160,221, 11, 79,124,110, 97,192,118, 41,252,154, 53,107, 32, 82,100, 0,130,151,194, 3, 11, 17, 8, 3, +152, 63, 47, 92, 0, 93,110,190, 98,197, 10,184, 32, 77, 47,133,135,175,249, 65,171,119,241,119,185,128,205,127, 96, 41, 15,116, +225,155, 55,111,128,228, 55, 48,248,242,229,203,167, 79,159,128,229, 11,176, 55, 0,236, 1,252,197,125,199, 53,114,140,160,205, +219, 19, 63, 94, 7, 76, 12,200,206, 38,178,123, 71, 9, 88,184,112, 33,176,220, 7,150,254,215,174, 93, 59,112,224, 0,176,244, +175,171,171, 3,214,205,149,149,149,196, 84, 0,182,216, 0, 73,117, 0, 48, 27,146, 90,250, 67, 6, 33, 33,165, 63, 16, 0, 25, +246,164,156,221, 13,109, 37,140,200, 27,225,129, 0, 32,128, 6,233, 36, 48, 37,165, 63, 48, 13,145,209, 77,134,140, 5, 1,187, + 2,196,151,254,192,226, 30, 88,250, 67, 71, 57,214,173, 95, 11,190,197, 15, 88, 25, 48, 56, 57, 50, 48, 16, 94, 6, 10, 89,149, + 8, 47, 23, 32,197, 4,113, 43, 50, 65, 69, 45,218,189,240,196,151,254,144,230, 63,214,198, 62,121,157, 0, 72,181,145,147,147, +131, 51,160,130,131,145, 47,133,143,137, 1,221,154,128,118, 41,124,108, 44,206,123, 35, 40,156, 3, 96, 32,235, 82,120, 97, 97, +225,183,111,223, 2,219,251,175, 95,191, 6,246, 0,224,151,194,127,253,250, 21, 88, 19, 0, 75,127, 96, 53,128, 54,184,143, 12, +224, 61, 51, 6,140,155,200,240,232,194,236,222,193,199,145, 48,119,132, 17,217,240, 39,126,252, 7, 8,110,223,190, 13,140, 14, +160, 7, 45, 45, 45,129, 36, 48,208,128,229,233,166, 77,155,152,153,153,137,169, 0, 40,105,197, 35,155, 64,146, 46, 99, 48, 0, + 50,206,157, 59, 7,116,179,141,141, 13, 48,105, 1,123,153,200, 11,166, 9,183, 18,144,122, 0, 35, 10, 0, 4, 32,239, 10,114, + 32, 4, 97,224, 7,120, 2, 9,207,224, 76,178, 63,226,155, 60,129, 19,223,224,226,172,147, 52, 85, 20,171,135,205, 38,114,106, +140, 94,218,210, 41,118,200,252,239, 16,248,151,213, 95, 99,192,173,222,255,208,254, 98,128, 45,113, 15,109, 75,226,158,233,194, + 83, 15,114, 2, 9, 34, 10, 63,246, 80, 36,210, 77, 56,121,227,205, 47,194, 9, 42, 35,170,191,252, 80, 26, 23,226, 24, 66,160, +254, 59, 0,128, 92, 32,253, 80, 75,138,239,177,110,123, 15,192, 62, 3,208, 73,136,152, 2, 86,225, 88, 38,164, 48,169, 38,177, +246,222,215, 90,169,188,214,123, 39, 2,137, 40, 60,103,194,198,131,215,103, 93,210,191, 91,190,146,114,143,151,245, 38,122, 76, + 39, 53, 46, 50, 62,115,206,104,255, 83, 74,192, 3,231, 92,107,205, 8, 0, 82,193,217, 72, 61, 27, 9,220,237,253,185,119,224, +177, 82, 10, 12,148,254, 24, 35,252,134,163,204,229, 28,152, 44,160,221, 16,248, 85, 44,160, 69, 0,177, 96,230, 55,178,205, 66, + 75,157,200,237, 23,228,102, 17,237, 74,127, 96,178,163,112, 69, 13, 73,218, 31, 63,121,129, 75,138,147,147,139,160,118,172, 3, +211, 68, 2, 96,129,130,255, 94,120,252,221, 2,172,151,194, 67,118,220, 16,236,130, 96, 86,234,185,185,185,120, 74,127, 8, 16, + 18, 18,130, 12,241, 3, 91,211,200, 13,255,154,154, 26,252, 73,142,194,125, 0,200,165, 60,218, 86, 9,130,245,189,189,189,253, +182,109,219,254,252,249,243,225, 3,228, 82,120,144, 75,128, 29, 2, 32, 23,200, 38,114, 52, 31, 50, 1,128,188,244, 19,121,122, + 0,127,233, 15, 15,109,122,174,108,134,212, 1,192, 36,116,240,224, 65, 96, 52,181,183,183, 3, 91, 12,192, 14, 16, 7, 7, 7, + 49, 67,124,100,180,226,145,245,146, 10,128, 53,211,211,167, 79,145,247, 1, 92,188,120, 17,216,117, 3,182, 42,136, 92,183, 58, +194, 1, 64, 0,177,224, 47,196,113,245,109,105, 13,200, 40,253,233,156, 79, 90, 90, 90,240,239,111, 36, 88, 89, 82, 50,164, 11, + 44, 52,149,193,192,217,217, 25,104, 14,214,123,225,129,141, 33, 76,141,144,139,221,129,133, 23,242, 28, 0,164,121, 91, 86, 86, +134,191,180,197,170,151,212, 33, 35, 34, 27,254,212,234,146, 34, 39, 9,204, 75,225,241,215, 1,192, 96,241,246,246, 6,182,100, +217,216,216,126,254,252, 9,172, 3,128, 33, 44, 32, 32, 0, 44,176,240, 28,212,129,156,143,224,211,191, 64,123,129,234,225,121, + 7, 87, 46,131, 36, 9,180,109,195,164,206,253, 98,142,249,144, 52, 10, 4,169, 3,224,155,191,178,178,178, 32, 12, 96, 79, 8, +143,150,103,207,158, 33,239,246, 90,177, 98, 5,193, 19,126,112,233, 37, 9, 92, 0, 3, 52,193, 39, 96, 64,188, 33,104,147,192, + 35, 10, 0, 4, 16, 11, 21,203,119, 76,189,244,169, 45,232, 95,250, 3,129, 40, 24,144,173, 93, 9, 12,168,226, 18,184, 81,200, +109,115, 96, 29,128,181, 27, 75,246,145, 15, 20,234,197,218, 27, 32, 18,144, 61, 7,128,150, 36,176,118,185, 8, 38, 27, 96,183, + 18, 88,191,238,223,191,255,251,247,239,127,255,254, 53, 48, 48, 8, 11, 11, 35, 24,119, 39, 78,156,128,119, 35,224, 34,200,108, + 92, 81, 9,111, 28, 64,106, 14, 96, 14, 34, 88,217,192, 65, 24,101,247, 39,147,157,131,164,165,165, 3, 3, 3,241,171,105,110, +110,166,186, 94,202, 1,252, 78, 96,228,162,127, 68,173, 2, 2, 8, 32, 22,106,149,161,163,167, 53, 13, 56, 64,139,130,225,113, + 4, 46, 21,211, 21,217, 70, 65, 58, 91,196,171, 7,246,111,136, 60,231, 7, 79,141, 78, 70,117, 75,173, 26,154, 84, 32, 38, 38, + 70,118,216, 82,162,151,186,117,192, 8, 44,253,129, 0, 32,128, 70, 47,133, 31,170, 96,244, 94,248, 81, 48, 10, 6, 16, 12,143, + 75,225, 1, 2,104,244, 70,176,161, 10, 70, 75,255, 81, 48, 10, 70, 1,133, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24, +161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, 70, 43,128, 81, 48, 10, 70,193, 40, 24,161, 0, 32,128, +104,120, 41,252,232, 5,220,163,122,135,168,222,205,126, 83,136,215,235,187, 41,135, 90,122, 55,250,146,160,215,127, 51,138, 94, + 31, 27,105, 6,240,222,133,223,191,127,223,191,127,255,215,175, 95, 44, 44, 44, 79,158, 60,137,228, 87,216,121,230,204,119, 61, + 89, 11, 11, 11,102,102,102,200, 34,218, 45, 71,158, 82, 43,172, 32,246,194, 1,100, 91,223,213,171, 87,165,164,164,222,189,123, + 7, 36, 57, 57, 57, 25, 96, 27,250,208,236,197,170,247,241,149, 37,233,182,143,150,157, 81, 99, 17,115,227,225,229,195,165,119, +244, 82,120,170, 0,128, 0, 34,225, 40, 8,252,155, 18, 41,185,128, 27, 13, 72,156,184,118,231,213,115, 78, 54, 14,117, 46,254, + 59,118, 58,116, 11,139, 33,113, 1,247, 96, 3, 55,111,222,236,239,239,239,173, 2,177, 55, 28, 6,157, 1,128, 71,241,131, 39, +143,159, 62,121,114,243,198,141,247,239,223,203,203,203,243,240,242,122,184,186,225, 55,127,247,238,221, 4,221,176,102,205, 26, +226, 99, 10,178, 11, 26,235, 29,194,248, 64,232, 59, 48,245, 31,116, 16,211,106, 33, 18, 52, 26,247, 51, 40,197,131,147,215, 2, +134,179, 69, 36,135,111,200, 27,132,189,107, 68,240, 40, 4,150,158, 95,191,126,221,181,107, 23, 48, 25,135,178, 10, 75,200,138, +254,248,250,157,243,219, 31,235,146, 84, 59,223,240, 45,115,103,108,222,187,215,205,205,141, 14, 73,226,239,223,191, 64, 55,232, +235,235,171,169,169,157, 59,119,238,199,143, 31,170,170,170,152,135,195, 99, 5,127,254,252,185,120,230,188, 76,178, 97,153,153, +246,137, 93, 61,107, 47, 59,168,234, 56, 17,169,119, 20,144, 1, 0, 2,136,168, 10,128,152, 35,125, 40,185,128, 27, 14, 84,207, +221, 21,124,251,133,145,225,255,175,191,204,191,223,125,121,242,230,227,131, 41,103,121, 28,205, 69,180,241,173,120, 57,187, 63, + 93, 3,186, 74,155,121,253,174,127,135, 79,255, 79,139, 96, 0,138, 20,181,146, 86,148,147,116, 1, 55,174,154,131,214, 87,118, +128,202,162, 80,208, 22, 33, 33, 33, 44, 71, 6,189,123,231, 2, 14,106, 65,250, 44, 9,135,149,254,255,193,165,191,221,145, 35, + 71,240, 84, 0,122,250,187,158, 61, 91,187,104, 62,148,123,235,198, 77, 32,153,146,184,238,227,151,156,207, 31,240, 85,243, 43, + 87,174,196,239, 12,226, 55,253, 99,166,228,140,244,244, 25,196, 85, 30,200,215,208,147, 0,148,226, 17,135,178,145, 81, 1,192, +124,135,231,228, 81, 8,184,123,247,238,129, 85,171,154, 92,194, 12,162,179,216,196, 5, 25, 88,152, 24, 24,152, 24,254,253,103, +248,199,250,239,231,127,175,248,180, 71,147, 58,142, 29, 59,102,101,101, 69,235,194,148,137,137,201,192,192,224,192,129, 3,192, + 58,192,204,204,236,197,139, 23, 23, 47, 94,212,211,211, 35,230,152, 25,160,103,157,157, 92,219,251, 54,149, 39, 92,182,240,200, +180, 48,223, 83, 50,249,137,154,105, 28, 86,189,144,216,196, 95, 61, 0,101, 73,174,236, 71, 18, 0, 8, 32, 22, 98, 51,140,203, +170,153,161,239,137,175, 3,200,184,128, 91,230,238, 75, 35, 78, 65, 54, 73,254,191, 12,255, 57, 63,112,189,120,253,250,197,231, +143,138,236, 60, 55,118, 30, 1, 70,175, 40,238, 58, 0, 88,214,223,184,203,244,255, 63,199, 95, 70,246, 0,215,223,129,110,223, + 25, 24,254,193,218, 77, 36,230, 86, 18,203,110,248,145,141,144,131,168, 76, 42,238,117,158, 5,214, 36, 97, 4,171, 1,130,117, + 42,193,253,159,144, 91,144, 48,132,137, 61, 86,229,246, 94,190,158, 85,145, 16,118,113,232,114, 53,151, 79,100,148,254,125,125, +125,192,220, 94,220, 6,189,248, 9, 79, 14, 7,150,254, 22,230,107, 45,204, 25, 26, 27, 17,130, 81, 81, 12,224, 59,220,166, 44, + 95,133,175, 14, 0, 22, 10,144,195,239,128,133, 96,120,120, 56,228,224, 35,130, 5, 34,214,182, 63,228,192, 12,184, 59, 51, 50, +136, 45,253,201, 4,198,125, 12,176,139,218, 65, 21,128, 81, 47,195,185, 98, 26, 89,181,111,223,190,233,129,105,138, 78,174, 12, +204, 63, 25, 89,153, 24, 89,152, 24,153, 89,255,255,103,252,247,245,207,255,191,127,129, 77,170,212,248,172,172,186,252,187,226, +226, 36,109,106, 35, 3, 0,243,130,164,164, 36, 48,156, 15, 30, 60,120,227,198, 13, 87, 87, 87, 75, 75,203,147, 39, 79,106,107, +107, 19,212,123,100,239,242, 32,131,111,103, 63, 51, 71,213,127,177, 49,156,152, 83, 16,222, 83,254,161,188,103,169,146, 97, 20, +158,194, 29, 94,188, 0,163, 24, 77, 4,127, 70, 67,187, 16, 24, 49, 54, 53, 98,118, 71, 1, 4, 16, 11,145,165, 63,136,187, 90, +144,152, 58,128,188, 11,184, 21,110, 60, 83,103,227,102,251,255,135,179,167,244,207,183, 95, 28,197,173,252,108, 28, 63, 88,191, +127,253,241,157,147,129,241,249,193, 19,108, 50,146,184, 46,224,190,113,151, 97,214, 10, 96,137,255, 13,140, 24,108, 77,153, 2, +221, 24, 97,117, 0, 3,176, 55, 48,107, 5, 81, 97, 65,234, 5,220,144,210, 31, 82,244, 67, 74,127,120,112,117, 18, 81, 7,220, +237,184,139, 75, 74,185, 2, 95, 22, 5,182,253,145, 47, 51, 65,149, 74, 7, 75,225, 59,112,248,205,101,201,154, 41,254,255, 25, +254, 91, 10,213, 88,187,104, 31,217,125,181,119,117, 20,195,234,255,245, 69,211,164,212,137,109, 74,127,121,152, 46,205,193,240, +237,237, 85, 96,227,139, 87, 76, 15, 82,250, 79,159, 62, 29,171, 98, 94,129, 43,192,210, 31,194, 62,121,146, 1,124,103, 31, 8, +192,119,248, 71,134, 77,153, 49,167,154,233,159, 44,158, 65, 30, 10, 19, 58, 48,102, 33,165, 63, 82,125,144, 62, 99, 6,246,100, +201, 20,246, 30,222,124, 96, 4,227,127,161,168,178,140,144, 81, 25, 16,229,141,218,231, 97, 10,127, 15, 25,176, 1,130,127,255, + 18, 10, 10, 10, 32,226, 64, 6,176, 38, 96, 82, 77,134, 26, 12, 86,131,166,151, 37, 28,221, 94,228,123, 24, 65,178,184,237,253, +241,227,135,132,188, 2,195,191, 95, 76,236, 12,140, 44,204,127, 62,127,252,113,239,254,235, 39, 79,101,172, 28, 24,217, 4, 24, +127,255, 98, 96,102,234,204, 44,113,157,213, 80, 84, 84, 68, 73, 48,226, 41, 28, 33,141,241,239,223,191, 11, 9, 9, 1,219, 7, +192,208,190,127,255,254,130, 5, 11, 52, 53, 53, 63,124,248, 64,176,131, 5,212, 43,207,116, 82, 82,206,227,195,193,203, 31,223, +179, 47,222,242,103,219,137, 37,121,161,156, 44,223,128,177,134,165, 2, 24, 29, 23,162, 28, 0, 4, 16, 11,254,162, 31, 24,196, +140,174,176, 51, 20,247,132, 49,132, 18,110, 46, 65,202,253,111,223,150, 2,227,244,199,143,121,192,210,138,152, 11,184,197,158, +191, 19, 19,231,224,168,207,250,251,230,221,159,103,111, 88,216, 88,185, 24,153,185,129,136,153, 69,136,149,227,253,231, 15,207, +247, 29,227, 15,244,196,170, 23,173,124, 63,124,250, 31,184, 2, 96,232,171,102,252,207,200,192,248,159,216,174, 0,169, 23,112, + 35,151,254,232, 0, 92, 7,144, 52,133, 32,152, 6, 13,243,247,179,102, 18,227, 84,178, 59, 49,213, 83,252, 32, 69,191,149, 54, +232, 78, 96, 32,121,236, 42,168, 26,104,236,203,158, 57,147,216,206, 50,176, 8, 74, 47,188, 2,201,183, 54, 54, 54,192, 10, 0, + 87,233, 15, 4,118, 54,167,225,108, 83, 83,134,217,179, 25,246,239,103, 80, 85, 5, 58, 21,209, 99, 48,208,189,126,233,162, 44, +174, 49,101,226,135,131,240,244,180,144, 75,127, 6,208, 52, 0,206,112, 6,118, 11, 32,101, 56,214, 90,246, 31,172,220, 1, 54, +118,128,225,176,249, 16,202, 4,227,244, 25, 51, 33,190, 82, 80, 80, 0,102,159,137, 19, 39, 66,196,129, 12, 96, 5,176,115,231, + 78,248,185,149, 12, 24,122, 33,221, 17,160,174,212,212, 84, 76,123,255,192,194, 97,214,236,217, 64,123,183, 28,126,138, 86, 26, +178,240,242, 50,176, 50,255,253,246,225,250,182,189, 75, 87,173,153,246, 12,100,209,169, 70, 62, 85, 59,175,159,143, 30, 95,189, +120,246,242,253, 91, 31, 95,188,184,114, 5, 24,113, 18,100, 20, 22,152,199,174, 97,150,224,207,158, 61,171,173,173,237,233,233, +249,245,235, 23,176,235,198,203,203,251,245,235,215, 83,167, 78,225, 79,150, 16,189, 31,158, 28,109,156,255,104,110,129,212,187, +175,108,108, 44, 76, 50,130, 28, 47,222,252, 74,239,250,163,111, 98, 44,135,187, 87, 7,169, 6,224, 17,141,201,192, 3, 48, 43, + 51, 92,125,130,225, 10, 0, 2,136, 9, 87,158,129,156,123,142, 16,221, 67,212, 57, 83,144, 27, 96,190,125, 91, 6, 41,253,225, +163,210,248,111,134, 97, 57,112,150,255,221,231,127,108, 44,191,206, 94,253,121,253,222,143, 93,135, 25,190,255,100,251,255,159, +139,129,153,133,129,241,231,191, 63,239,126,254,152,182,123, 11, 46,237,125,213,160,102, 62, 28,128,217,144,252,251,255,230,157, +255, 69,173, 36, 52, 19, 32, 23,112, 51, 16,113, 57, 23, 80, 22,249, 16,127, 68,243, 31,169, 14,160,195, 21, 78,164,130,187,231, +191, 0, 67, 6, 94,250, 3, 65, 80, 61,107,207,170, 72, 27, 87, 96,247,252, 63, 88,150, 48, 88,182,108, 89,113, 27, 35,143,168, + 46, 48,100, 61, 2, 51,143, 28, 57,130, 71,241, 63,166,199,210, 82, 40,103,159,233,235,131, 74,255,184, 56,148,241, 34, 89,217, +167,120,134,128,128, 32, 60, 60,156, 25, 21,192, 69,240,187, 22, 61, 37, 19, 89,195, 33,149, 77, 16,128,201,101,196,214,180,128, +107,116,115,115, 67,107,107, 3, 59, 1,174,174,174, 72, 46, 67,215,187, 97,230, 76, 96,233, 12, 49, 28,238, 77,228, 64,128,112, +177,218, 11,204, 47, 76, 92,236,191, 95, 60,156, 89, 83,179,224,235,135,247,246, 22, 16,241,185, 75, 22, 52,148,164,168, 21, 69, + 54, 93,222,183,234,253,125, 87, 63, 63, 34, 59,184,192,226, 30,152, 11,206,159, 63,143, 84,101,206,192, 58,202, 7, 9,144,203, +151, 47, 31, 60,120, 48, 50, 50,114,202,148, 41, 95,190,124,129, 28,160, 13,236,151,240,240,240,132,133,133, 89, 91, 91,227, 42, +250, 65,122,143,175,189,181,179,168,168,178,119,115,189,212,245,167, 44, 31,191, 48,255, 99,100,120,251,229,215,127, 97,229,194, +170, 86,159,128, 24,156, 85, 53,176, 26, 7,103,216,153, 96,128,149, 65, 60,128,148,254, 35,234,116, 28,128, 0, 98,193, 90,244, +147,209, 49, 68, 19,129,148,254,200,221, 2, 60, 23,112,179,188,253,240,238, 63, 43,219,219,119, 28, 27,246, 49,178, 48, 49,252, +248,245,255,243, 87,198, 63,127, 88,129,173,191,255,255,126,252,253,243,249,207, 47,134,127, 56,199,124, 33,147,189,125,213, 88, + 82, 23,120,114,152,100,239, 16,115, 1, 55, 90,243,255, 76,135, 18,102,101, 64,204, 21,222,202, 21,202,120,198,130,168, 14,186, +102, 20, 91, 8,214,192, 75,127, 8,128,136, 88, 10, 93, 5,202, 18,116,240,210,165, 75, 15, 29, 58,244,246,173,179,176,240, 94, + 30, 17, 29, 96,106, 97, 98, 98,194, 51,207,246,232, 17, 3,114, 61, 8, 76, 92,102,102, 32,198,237,219, 12, 83,167, 66, 5,223, +189, 99, 96, 97,193, 57,186, 72,112,184,159,188,147,223,225, 9, 18,191,151,243,243,243,225,173,120,228,162, 28,191,225,144,251, + 24, 32,163,255,112, 0,233, 4, 0,165, 16,157, 0, 84,144, 44,173,118,235,234,181,167,130,130,192, 32,205,203,203,155, 52,105, + 18,241,246,218,254, 20,248,255,239, 75, 74, 91,181,110, 72,200,204,182, 54,248,253, 45, 51,111, 95,129,246,140, 15, 31,222,189, +123, 55,208,106,112, 6,255, 70,176,244,135,116,233,128,129, 3,108,101, 27, 24, 24, 0,107, 2,160,198,204,204,204,199,159,177, + 84,177, 79,158, 60,241,247,247, 7,122,109,219,182,109,144, 43, 51, 25,192, 75,122, 24,192,247, 8,225,153,167, 5,138,223,187, +121,161,161, 44, 73, 88,117,245,249,213,241,151, 30, 51, 62,122,201,194,240,159,233,231,175,223,239,254, 11,103, 39,103,145,183, + 4,136,140,123, 77, 70, 96,233, 15, 4, 0, 1, 68,157,141, 96, 51, 97, 0,214, 40, 70,143, 48,160, 56, 92, 13,166,246,107, 79, + 30,157,126,243,236,234,253,123, 47,239, 63,248,244,224,201,231,199, 79,255,124,251,254,251,247,159,207,127,127,125,251,251,231, +231,127, 96, 1,240,255, 63,161, 24,133,175,249,185,113, 23,196, 6, 54,252,193,109,127,166,222,106,114,110, 61, 35,166,149, 4, + 44,232,225,101, 61,132,141, 44,130, 92, 37, 16,232, 54,189,159, 5, 25,249,129, 32, 90, 71, 57,184,177, 15, 14,168, 87,160,187, +189,214, 53,254, 46, 43,168, 7, 50,128,221, 2, 98,218,254,129,118,135,128,189, 58,193, 19,123,251,171, 65,185,215,206,206, 14, +207,224, 15,104, 36, 68, 70, 86, 89,153, 1,142,110,220, 96,128, 28,148,169,170,250, 31, 88, 60, 10, 9,129,144,138, 10,131,171, + 59,129,242, 29,222,234, 71,110, 14,195,111,130,165, 36,209,226, 81, 3, 44, 49,209, 10,113,104,167,179,175, 15,255,250, 84, 23, + 23, 23,248, 85,236,200, 0, 40,136,210, 9, 64, 5,135,174, 61, 74, 74,206, 62,187,108, 89,101,101, 37,102,173, 3,177,119,239, +222,189, 88, 75, 55, 59, 45,185,121,115,167, 26, 71, 69,181,183,183, 99,181, 26, 88,121, 56, 59, 59, 19, 89,152, 2,227, 20,104, + 11, 48,112,128,234, 33,181, 59,164,249, 15,172, 9,176,170,255,253,251,247,150, 45, 91,174, 93,187,118,251,246,237,175, 95,191, + 2,185, 64,193, 95,191,126, 5, 4, 4, 16,108, 83,254,252,249,243,236,218,168, 31,183, 38,239, 60,120,247,254,115,230, 79, 95, +153,254,254,103,120,250,149, 51,187,168,154,160, 94, 96, 45, 14, 89,215, 11, 36, 33, 53,122, 58, 24, 0,117, 65, 24,163,163,252, +248, 1, 64, 0, 49, 97,102, 9,228, 14, 47,242,128, 6, 49,198, 65,198, 76,185,184, 16,243, 83,144,213,138,248, 47,224,102,101, + 99, 6, 70,249,147,175, 31, 30,125,124,247,250,211,251,143, 63,126,188,255,245,253,245,207,239,207,127,124,123,250,227,203,187, +223, 63,223,255,251,253, 11,117, 0, 23,165,237, 99,138, 90,158,194,166, 4, 82,194,121,254, 3,123,198, 12,108,196,184,156,236, + 11,184,177, 12,254, 16, 93,250,227,159,236,165, 17, 56,186,231, 42,132,161, 33,230, 30, 84,207, 10, 71,189,171,162, 24, 25, 24, +241,103, 54,127,155,131,241, 69,160,210, 31,152, 66, 54, 30,117, 96, 0, 31,151, 79,208, 70, 53, 13,117,164, 42,132, 97,202, 20, +134, 59,119, 64,253,128,198,198,255,112, 32, 40, 40,136,191, 7,240, 23, 12, 32,115, 0,127, 97,128,212, 41, 1, 82, 1,164,169, +142,214,238, 6,246, 9,128,222,199,213,138,135,183, 64,177,214, 28, 88, 5,225,224, 48,251, 7, 70, 38,158, 57, 85,173, 60, 91, +246, 0,179, 12,252, 76,233,116, 85,157,124, 99, 43, 46, 46, 46, 96,117, 91, 91, 91,187,103,207, 30,204, 91,180,230, 62,189,245, + 92, 91, 75, 90, 90,250,223,191,127, 88, 43, 15,172,130,184, 34, 26,190,192, 6,216,228,103,128,109,158,192,122,145, 28,196,179, +178,178,178,143, 30, 61, 2,118, 50, 84, 84, 84, 88, 88, 88, 32,117,182,133,133, 5, 49, 77,117,101, 13,195, 89,187, 4, 46,109, +171,183,181,212,228,230, 96,226,230,250,203,201,254,211,211,159,168, 49,103, 96,121, 5,175,159, 40, 25, 2, 26,153,205,127, 32, + 0, 8, 32, 38, 92, 45, 35,120, 53,240,127,119, 40, 49, 61,101, 56,128,220,121, 13, 41,247, 33, 36,193, 11,184, 53,173,172,254, +240,112,189,255,255,247,218,215,247, 87, 62,190,189,250,233,205,213, 79,239,174,125,125,119,231,219,251,183, 63,127,124,249,243, +231,217,183,175,120,174,210, 14,116, 99,236,171,102, 6,162,255, 12,204,255, 25,153,210, 34, 24, 83, 35,216,146,195, 69,149,149, +197,255,129,110,197, 34,220, 25, 36,227, 2,110,184, 98, 72, 89,143, 89,226,175, 94,189,154,152, 27, 92,129,129, 3,204,207, 21, +103, 43, 32,245, 1,164, 55, 64, 59, 80, 18,182,252,248,187,214, 99, 87,161,139,106,128,205,127, 11,193, 26, 8,187, 53,123,203, + 12,220,147,192,192, 66,161,191,134, 33,161,200, 89,224,196, 30,199, 46,123, 38,111,134, 3, 7, 14, 16,153, 36,228,229,229,225, +108, 39, 39, 6, 1, 1, 96, 7,139,193, 19,117, 70,223,196,212, 20, 79, 15, 0,179,237, 15, 17, 33,166, 7,128, 54,136, 15, 7, +192, 38, 35, 49,142, 7,182,244,209,110,212, 2, 22,226,196,108, 79,131,215,109,200,220,127,184,219, 49,160, 38, 51, 35,227,191, +111, 63, 89, 37,228,211, 91, 90, 18,184, 5, 4, 14, 28,135, 14, 13,197, 36, 52,244,204,185,221,183,188, 78,215, 41, 76, 80,113, +247,166, 77,152, 13,148,128,140,116,109, 29, 29,200, 4, 53,188,130,132,215,160,200, 92,172, 3, 62,192,194, 29, 50,199, 11, 25, +244,135,151,245,192, 38, 63,100,162, 21, 88, 19,224,106,254, 3,101, 89, 89, 89,129,141,253,143, 31, 63, 2,107, 38, 78, 78, 78, + 81, 81, 81, 1, 1, 1,252,183, 72,194,245,178,179,179, 7,103, 76, 90,112,218,228,193,227, 79,226,252,204,150,234,140,122,138, +255,185,249,248, 70,155,231,116, 0, 0, 1,196,130,167,106, 69, 25, 74, 35,174, 7,128,124, 1,183,144,208,106, 6,226, 46,224, +254,162,175,242,237,214,173,111,127,126,126,250,250,237,238,239,223,172,255, 64, 67, 72, 31,127,255,248, 7,206, 61,219, 94,222, +255,250,231, 55,222, 49, 25,198,162, 86, 68,226, 6, 79, 6,252,251,203,240,243,250,157,207,243, 86, 18, 94,222, 78,222, 5,220, + 32,247,116,134, 97, 13, 22, 72,101, 64,112, 2, 0, 88,220,195,171,198,213, 96,192, 0,185, 17,158,150, 91,184, 84,157, 63, 49, +172,250, 15,233, 4, 64,102, 2,202, 10,234,143, 93,213,238, 89, 21, 85, 53,213, 27,191,131,129,109,127,216,238,179, 3, 12,224, +233,253,255,255, 87,131, 83,200,255,213,171,241, 45, 60, 13, 9, 10,222,189,115, 23, 3,120,225,191,163, 35, 52, 77, 1,227,118, +203, 22, 6, 31, 31, 16,219,220,210, 66, 79, 91, 7,127, 15, 0,147, 77,100, 11, 17,158, 50,153,152,152,144,203, 95, 96,147,145, +152, 93, 96,144, 65,115,248, 76, 0,164, 55,128,191,249,207,128,180,234, 1,121, 61, 15,254,165, 16,144,236,246,231,243,103, 86, + 17, 33,102, 46, 30,237,224,144, 38, 55,215, 42,200, 82, 78, 67,163,191,223,127,176, 10,139,235, 90, 56, 40,200, 40, 78,186,126, + 92, 71, 71,231,249,105,148, 27, 73, 51, 64, 73, 23, 20,178, 89,192,178, 27,188, 90,244, 15, 82, 88, 1, 27,229, 64, 17,248, 2, + 83,111,212,166, 46,176,100,135, 12,245, 64,218,209,104, 67, 61, 64, 54,158,210, 31,226,108, 96,113, 15,108,239,223,184,113,227, +220,185,115,192, 56,226,230,230,254,246,237, 27,145,131,245,226,226,226,254,254,254, 39,142,156,154,176,122, 55, 31, 35,155,186, +248,207, 59,111,184,109,212,127,195,107, 8, 92, 3,250, 64,113,120,134,197,179, 28,104,180,249,143, 7, 0, 4, 16, 11, 49,249, + 7, 20,148, 68,172, 1,165,228, 2,110, 41, 49,241,203, 63, 30,124,100,250,247,226,199, 23,134,223,191,255, 2, 99,157,129,225, +250,151, 15, 79,191,125, 34,226, 2,238,255,192, 86,255,172, 21,255,225,115, 0, 26,202,127,152, 25,190,146, 84,250, 51,144,126, + 1, 55,120,205, 40,176,163,122, 6, 94,238,155, 84,220,131,148,254, 38, 38, 38, 4,155,255,200, 29, 35,100, 54,168, 14,192, 11, +192, 11,171,222,187,186,206, 98,192,152,171,128, 72,165,167,227,187,216,189, 45,123, 75,245, 84,223,227,171,254, 91, 10, 93,133, +236, 3, 56,241,190,133,145,129,177, 53,123, 51, 3,195, 51, 60,246, 2, 75,127, 96,150, 11, 12, 12,156, 61,251, 19, 36, 75, 50, +194,214,163, 64, 54, 39, 67,192,230,195,150,152,122,179,243,114,167, 78,154, 12,108,254, 35,187,215,203,139,161,174,142, 97,231, +110, 11, 39,188,171,132, 33,227, 9, 33, 33, 33, 43, 87,174,196,186, 41,140,200,154, 0,178, 17, 12,121, 76,121, 6, 72, 48, 29, +207,122, 80,120,140, 0, 91,253,144, 10, 0,216, 27, 32,166,249,143, 92, 72, 17,175, 24,216,100,126,241,240,129,162,178,234,191, + 63, 63, 25,255,252,101,225,229,227, 53, 50,225, 49, 52,253,247,245,207,223,111, 63,255,255,249,203,240,247, 95,249,244,158,240, +168,112,204,198,245,159, 21,130,120, 76, 70,147,245,223,140,174, 0, 88,196, 3, 75,127, 72, 22,128,223, 3,140, 92, 7,224,247, +160,186,186,250,228,201,147, 95,191,126,237,234,234,122,230,204, 25, 96,233, 15,212, 66,240,206, 84,136, 94, 11,115,243,140,228, +140,251, 79,238,199, 38,103,156,220,189,240,249,231,119, 38,246,174,226, 50,106,104, 29, 5,172,189, 7,120, 1,133,185,255,139, +152,141, 96,163, 0, 32,128, 88,136,204, 60, 68,182,253,145, 75, 52,146, 46,224,254,105,111,172,198, 96,252,116,230, 2, 6, 78, +142,247,255,255,252,250,243,231,223,255,127,194,252,252, 79,190,126, 36,184, 39, 22,109,161, 39,108, 14,224, 47, 73,165, 63, 3, +233,167, 56, 64,246, 13, 64,202,122,200, 8, 21,114,233, 79,208, 40,172, 87,212, 18, 15,144,119,219, 33, 5, 50,225,238,131,176, +222,211, 25, 51,103,220,218,195,215,187, 58,242,248, 42, 96,123,144,177, 36,108, 57,168,103,128,183,244,135, 68, 28,184,160,255, + 4,206,123, 12,104, 37,219,130,222,189, 64,146, 91, 14,152, 15,177, 28,188, 5,108,224, 3, 77, 16, 17, 3,246, 3,214,193, 51, +255,231,207,106,134,198, 58,226, 50,174, 44,255,241,149,146,184,122, 0,240, 9, 0, 34, 87, 1, 1,203, 8, 96, 29, 0, 95, 30, + 3,239, 7, 16, 63, 19, 0, 41,134, 8, 54,255,201, 6, 78, 78, 78,217,171,102, 53,125,254, 96, 96,111,195, 36, 46, 8,178,238, +247,127,208,113, 14, 12,172,140,204, 44,140,108,204,179,103,244,241, 57,155, 40, 43, 43, 83,125, 15, 20,100,168,103,250,244,233, + 64, 82, 95, 95,159, 36,189,119,239,222,221,187,119, 47, 48, 22,108,109,109,129,193,139, 54,244, 15,140, 50, 96, 92,163, 5, 59, + 28, 0,123, 12,139, 22, 44,100, 99,102, 15,137, 12, 1,170,177,241, 74, 65,169,183,254,252,129,232, 37, 99, 85,207, 40, 32, 6, + 0, 4, 16, 11,181, 12,162,202, 5,220,142,233, 9,247,238,222, 59,183,125,231,215,159,191,128, 29, 88,101, 51, 35, 15,185, 72, +130, 37, 41,217, 71,182, 65, 74,112,242, 46,224,134,155, 0, 89, 51, 10, 44,244,225,181, 8, 49,238,129,216, 75,158,179,211,211, + 5,113,249, 26,216,246, 39,210, 16, 53,151, 79, 51, 93,224, 38, 16,123, 14, 4,184,148,103,140, 47,130,158,207, 5,201,149, 64, + 65, 96,185,207, 45, 23, 74, 80,251,203,231,110,179,102,185,253, 99,122,204,207,247, 17,200,133, 28,255, 64, 48, 9,146,183,202, + 19, 79, 29, 64,134, 70,248, 76, 0, 73,205,127, 60,173, 87,236,163,130,202,202, 18,121,121, 19,118,237,186,215,188, 33,148, 85, + 88, 0,124,160,219,247,111,127,242, 75, 42,153,185,132,182, 45,156,121, 81,132,209,141,148,195,124,254,254,253, 67,204, 28, 24, +145, 67, 61,184,124,119,235,214, 45, 32,169,161,161,241,246,237, 91, 22, 22, 22, 96,169, 45, 44, 44,204, 0, 59,159,142,141, 13, +180, 10, 3,107, 5, 0,212,117,234,212,169,127,127, 24,173,172,245,159, 60,121, 2, 84,249,235,215, 47, 25, 25, 25,136,212,199, +143, 31,129, 29, 29,160, 33,236,236,236,120,218,157,144,186, 1,153, 65,210, 16,208, 72, 30,255, 1, 2,128, 0, 98,161,145,185, +228, 23,202,202, 74, 74, 57,153,116,243, 63,217, 23,112, 99, 86, 3,100,216, 75,158,117,120, 92, 75,235, 51,224,192, 13,124, 6, +180,113, 23, 98,138,126,100,192,244, 79,246,243, 7, 89, 34, 21,187,130, 1, 21,189, 64,222,209, 96,192, 86, 63,193, 17,124,172, +128, 36, 93,192, 82,143,139,139, 43, 48, 48, 16,114,164,243, 35,216,145,206, 71,247,238,134, 28,233,236,108,225,140, 75,239,236, +247,237,169,130,149, 40, 66,120, 79, 15,197, 85, 7,144,225, 71, 83, 83, 83,200,146,255,127,255,254, 1, 75,112, 32,227,245,235, +215, 64,146,135,135,135, 1,188, 24, 20, 72,178,178,178, 98,245,175,143,143, 15, 68, 1, 80,239,143, 31, 63, 24, 64, 27, 71, 30, + 1, 73,200,170, 48,136, 8,176, 98,192,218, 3, 24, 61,172,151,114, 0, 16, 64,163,151,194,143,130, 81, 48, 10, 70, 1,201, 96, +120, 92, 10, 15, 16, 64,163, 55,130,141,130, 81, 48, 10, 70,193, 8, 5, 0, 1, 52, 90, 1,140,130, 81, 48, 10, 70,193, 8, 5, + 0, 1, 52, 90, 1,140,130, 81, 48, 10, 70,193, 8, 5, 0, 1,196, 50, 26, 4, 67, 5, 24,146,126, 80,237,249,209, 9,158, 81, + 48, 10, 70, 1,110, 0, 16, 64, 52,188, 20,158, 14,122,141,100,110,114, 48, 94,103, 97,122,198,196,240, 13,124,242, 63,243, 63, +240,201, 63,224, 37,138,255, 33,231, 64, 48, 51,252, 42,109, 5, 29,156,130, 54,221, 61, 20,253, 43, 67,202,178,135, 39,168,203, +224, 70, 47,133, 31,213, 59,170,119, 20,160, 1,128, 0, 26,218, 61,128,166,142, 85,169, 17,108,154,202,191,111,220,253, 15,217, +255,213, 87,205, 84,212,138,216,238,223, 91,195, 4,172, 12,144,247, 9, 99, 1,255,255,255,122,241,224,227,175,127,160,147, 39, + 24,153, 4,196,165,136, 57,195, 4, 25,240,242,242,126,254,252,249,199,155, 91, 28, 34,106,163, 73,138, 32,184,126,243,220,175, + 31,223,244,245,109, 72,210,133,117, 89, 55,145, 11, 1, 41,209, 11, 1,138,138,138,144,213,168,144, 19,149, 73,114, 57,242, 73, +136,228,173, 37, 29, 5,163,128, 70, 0, 32,128,208, 43,128,133,139,230,226,215, 16, 31,151,140, 75,138, 18,189,100,131,217, 43, +126,245, 85, 35, 95, 10,134, 40,253,129,229, 62, 35,104,203,204,127, 13,101,208, 1, 65,251, 30,226, 48,226,207, 47,143, 11,211, + 78,189,249,251,244,251,191, 87,191, 24, 31,178, 9,176, 42, 27,107, 89, 57,115,112,114, 18,227,128, 45, 7,110,108,154,198,194, +240,243, 23,208, 32, 6,246,107,199,142,125, 63,115,149,151,131,159,180,154,224,199,171, 91, 28, 98,195,191,242,184,116,113,143, +130,204, 79, 93,229,255,255,254,253,253,248,122,197,211,151, 76, 95,126, 74,154, 24,219, 18,169,253,227,235, 57,204,204,208, 61, +107,119, 38, 84, 24, 52,253, 34,222,106,228, 82,123,237,218,181, 37, 37, 37, 36,185, 28, 88,250, 23, 20, 20, 48, 50, 50,246,247, +247,147, 81,136,147,121,161,252,200, 0,248,143, 10,134, 52,209,102,205,158,141,171, 94,135,111, 17,128,156, 26, 4, 63, 59, 8, + 18,218,163,151,194,227, 7, 0, 1, 68,191, 30, 0, 19, 3,245, 55,115,247, 86,179, 51, 50,252, 4,151,245, 12, 26,208,147,149, +153,109, 77,255, 29, 62,253, 31, 44,242, 31,126, 73, 0,120, 8, 8,187, 33,204, 12,255, 20, 69,120, 62,127,123,205,252,231, 47, +227,159,255,127, 63,127,127,113, 98,243,206,139, 39,108,227, 11,133,192, 27, 26,241,128, 37,251,159, 49, 42,248, 49, 48,108, 99, + 96, 98, 98, 96, 5,221, 96,102,229,192,163,171,245, 98,254,134,135, 28, 92,242,132,203,253,247,183, 76,212, 63, 91,153,115, 50, +252,252,195,192,112,205,106,130,169,200,155,179, 62,118, 26,131, 60,209, 92, 56,191,135,157,229, 29, 11,211,175, 31, 63,254,126, +252,202,105, 99, 71,248,228,222,107, 55,206,241,114,188,117,178,102, 87,144, 87,230,227,227,255,253,231,207,235,215,111,196, 31, + 61,190,125,247,222,177,163,239,172,172,253,137,177, 23, 88,250,255,189,211, 74,182,179,201, 62,123, 3,114,187, 11,252, 44, 32, + 60, 55,186, 12, 54,176,103,207, 30, 96,109,135,114,252, 17, 13, 75, 67,216, 5,172,164,106,123,180,142,241,100, 10,172, 16,103, +128, 93,182,134, 48, 41,101,198, 87,179,240,201, 88,171,213,237,219,183, 67,216, 30, 30, 30, 59,118,236,192,202, 38,220,134, 67, +154, 93, 27,105,251,162, 0, 2, 8,123, 5,112,244,200, 73,107, 27,115,234,218,244,143,208,205, 92, 68,222,208,132, 98, 38, 35, +211,237, 59,160,162, 31,136,110,220,101,250,255,159,227, 47, 35,123,128,235,239, 64,183,239,176,174, 0, 81, 9,242,193,147,103, + 91, 94, 48, 60,249,198,240,231, 63, 3, 15, 19, 3, 11, 43, 51,219,151,215, 7, 86,206, 14,200, 40,195,117,134, 9, 16,172, 88, +191,143,209, 32, 29,178,211, 29,212, 3,248,247,143,129,229, 47,176, 38,224, 21, 20, 10,118,120,181,118,231, 79, 14, 65,124,141, +250, 31, 95, 31, 38,250,125,224, 21,151, 96,248,251, 15,212,123,248,253,135, 83, 92,241,163,144,244,146,195, 7, 98,108,165,232, +159, 20,206,159, 63,111,104,104,136, 95,205,149,107,231,254,255,124, 32, 47,249,131,159,143,157,137,137,235,251,247, 63,111,223, +125, 63,184,103, 2, 7,159,145,185,153, 29, 30,141, 28,204,175,213, 20,255,107,107,107, 62,127,241,254,236,249,115, 95,190,124, +229,231,231, 85, 82,146,103, 98,102,253,251,247,209,249, 11, 71, 12, 13,108, 6,109, 38, 1, 54,255,225, 87,172, 0,251, 1,192, + 58, 96, 54,182, 6, 41,225,146,142,238, 61, 0,200,206,240, 53,107,214,144,119,175, 22,241, 0,222, 24,159, 57,115, 6,169,246, + 48,201, 7, 67,244,254, 93, 41, 0,111,205,211, 45, 60,209, 46, 1, 30,105, 39, 67, 0, 4, 16,206, 30, 0,176, 14, 0,146,164, + 86, 3, 71,242,110, 99, 21,183,153,164, 74,124,140, 66,122,112,196, 84, 3,165, 45,160,155,231,250,170, 65, 39,128,206, 90,241, + 15,124,209, 29,232, 16, 90, 91, 83, 38,240,189,240,255, 96, 99, 65,192, 26,130, 17,215, 16,208,111, 38,214, 25, 82,193,207, 4, +254, 49, 48, 49,243, 50,252, 84,187,183,239,209,187,111, 31,152,152, 63, 62,187,255,248,241, 3,121,121,236, 7, 54,156, 62,123, +246,141,128,169, 24, 43, 43, 43, 27,107,192,172,136,159, 43,130, 32,226, 9,153,150,225,190,162,210, 18, 28,202, 34,239,159,226, + 62,143,238,199,219, 91,193,142, 31,129, 85, 5,195,143,159,160,154,227,207, 95, 96, 5,192,198,206,198,196,200,240, 75,213,126, +197,198,153, 17,254, 78,116, 46,253,225, 87,106,224, 1, 63,191, 62, 85,148,254, 46, 34,204, 45, 35, 45,193,197,205,245,240,225, +211,191,127,255, 73, 75,241, 94,189,126,252, 2, 39,183,129, 46,246,139, 31, 46, 95, 62,162,167,246, 75, 78, 78,241,218,245,135, +103,207, 94,127,253,230, 51, 48,158, 5, 5, 57,191,125,251, 98,104,168,253,225,195,199,167,103,207, 95,188,204,169,175,107, 60, + 8,115, 8,218,229,142, 4,175,117, 68, 30,217, 64, 59,202, 24,200,134, 15,119,144, 49,142,212,220,220,236,235,235, 75,234,105, + 13,192, 58, 0,104,239,170, 85,171,240, 52,101, 50, 50, 50,208,122, 6,144, 43, 33,129,226,104,109, 2, 96, 65,143, 89, 56,194, +143, 87, 2,223,195,149, 65, 82, 39, 3, 89, 47,115,248,135,127, 43, 5, 6, 36,150,225,158, 26,105,151,194, 3, 4, 16,129,125, + 0,192,106, 0, 82, 19, 16, 9,176, 22,244, 68,150,254, 16,112,240,224,193,167, 96, 64,210, 57,174, 72,115, 0, 32,112,248,244, + 63, 72, 35,162,175,154,177,183,134, 17, 88,250,255,103, 96,197, 25, 4,204, 44,170,230,110,246,142, 30,246,246,174,134,118, 94, + 60,126,249, 14,194, 64,189,255, 88, 24, 25,174, 92,198,233,247, 59,119,239,243, 10,203,176,178,177,176,177,130,142, 42, 99,143, + 88, 7, 65, 87, 46,221, 99,248,241, 3,136, 12,228, 62,226,113,176,178,224,123,105,113, 14,134,239, 63, 62,188,250,180, 96,233, + 69,117,211,169,179,103,157,252,253,245, 35,176, 58, 1,130, 55, 34,166,167, 41, 59, 43,148,140,210,159,160, 50, 96,243,159,131, +229, 57, 39, 39, 43, 7, 59,155,162,162,130,137,153,153,160,160, 32, 11, 11, 51, 27, 27,179,144, 32,199,211,199, 15,112,182, 50, +254, 63,229,229,225,252,246,253,207,149, 43,183,159,189,248,248,232,201,167, 91,247,126, 61,127,241,249,245,235, 15,183,111,221, + 83, 81, 86,150,150,226,123,251,250,209,160,109,254,163,221, 8,134,255, 90, 71,148,164, 5, 62,198, 18,235,133,242,228,117, 32, +128,133, 50,228,218, 22,226,193,222,189,123, 87,175, 94, 13, 57,173, 22, 79,147, 25,249,242,119,228, 11,129,145,173,195,101, 53, +196, 88,200,221, 97,228,245,138, 86, 21,114, 99,151,101, 96,192,127,152,157,135,135,135,167,167, 39,100,156, 7,194,128,176, 61, + 96,128,152,230, 63,114,149, 6,100,143,168, 81, 32,128, 0, 34,106, 14,128,188,222, 0,217,224,246,109, 80, 55, 2, 88, 7, 72, + 75, 75, 19, 55, 28,196,216, 87,253, 31,220, 9, 96,128, 55,249,193,137, 7, 52,146,120,243, 14, 68,252, 23,174, 57, 0,212, 81, + 69,166,255,124, 98,234,194, 28,140,143,126, 0,155,239,223,191,127,198,165,242,201,163, 71,146,218, 76, 44,204, 44,204,160, 65, +140,223,112,241,199,119, 63, 3,139,117,160,189,124,255,241, 77, 81, 26, 72,126,100,248, 14,172,125, 25,239,222,122,221, 53,239, +161, 93, 96,194, 39, 41, 77,182,231, 47, 88,249,133,254,255,251,203, 43, 42,115,231,194, 78, 83, 99,154,180,136,209,134,122,224, +165, 63,193, 12,252,254,221, 43, 17, 94,198, 63,127,255,253,250,253,231,245,155,119,172,108, 28, 63,127,254,254,253,231,239,159, + 63,255,254,252,253,255,225,253, 27, 92, 26,217, 88,191,114,112,202,188,125,251,241,211,231,111,239,222,127,231, 19,214,183,210, +211, 59,117,116,135,212,175, 63, 31, 63,125, 84, 87, 87,102,103, 99,249,250,249,221,224,108,254, 3, 75, 40,180,203, 20,129, 61, + 0, 34,103, 2,128, 53, 7,230, 29,144,240, 99,165,113, 1,248,229, 10, 25, 25, 66,206,206,136,211,223,128, 57, 2, 72,110,218, +180,233,205,155, 55, 68,158,250,183,103,207, 30, 72,233, 15, 81,191,118,237, 90, 92,165, 48,114,255, 15,114, 33, 48,228,122, 0, +200, 45, 49, 16,113,200,181,192, 88, 77,128, 28, 35, 10, 36, 33,253, 6,172, 30,196,149,151,129,206, 11,177,220,179,146,129, 33, +188,255, 43, 83,248, 7,172,122,205,112,220,252,134, 60,214,143,107, 62,128, 97, 20,224, 6, 0, 1, 68,253,157,192,104,237,125, +146,154,255, 31, 63,126, 68,174, 6,128,153,135, 96, 63, 32, 53, 2,216, 0, 7, 77,246, 2, 75,249,190,106, 40,210, 64, 92,181, + 11,106,254, 19,108,132,240,126,127,203,247,253, 13,231,215,183,220, 95, 95,171,191, 60,123,254,237,143, 15,255, 24,255, 48, 48, +240, 75,224, 89,107,252,255,239,207,207,204,204,192,254, 3, 34, 12, 85, 15,164,121, 57, 42, 66,122, 0,247,158,177,227,177, 19, + 84, 61,124,251, 1,172, 42,158,220,126, 41, 46, 45,171,161,169, 9, 20, 20, 96,249,195, 2,186, 80, 21, 88,169, 48, 61,121, 68, +147, 22, 49,176,184, 71,110,214, 65,184,144,158, 56,193,177,133,191,127, 25,190,126,251,253,245,235,175, 79,159,126,190,124,249, +254,217,179, 55,159, 63,255,252,242,229,247,151, 47,191,190,126,253,253,241, 3,206, 30,207,207,159,127,126,252,248,251,251,247, + 47, 94, 94, 54, 89,105, 62, 46,110, 80,115, 79, 73, 89, 65, 70,138,143,159,143,227,255,255,191,191,255,252,251,249,243,235,224, +108,254, 23, 21, 21, 97, 45,217, 9,118, 2, 48,239,146,132, 0,160, 32,193, 59,127,144, 70, 84, 16, 0, 82,248, 2,171, 1, 96, +153, 78, 76,255, 24,216,246, 95,179,102, 13,188,244, 7,146, 33, 33, 33,184,138,111,160,225,152, 87, 66, 66,218, 4,112,113,160, +123, 8, 29,166,253, 31,109, 32, 23,121,248, 11,151, 30, 17, 17, 17, 70, 88, 59,159, 84,189,212, 2,192,174, 0, 4,141,180, 10, + 0, 32,128,136,234, 1,208,173,237, 15, 43,104,254, 18,121, 4,124,106, 56,187,166,242, 47, 96,219, 31, 2,128,213, 0,248, 62, + 72, 6, 88,111, 0, 50, 10,196,220, 91,205,248,151,129,231, 16,142, 57,128,127,127,126,171, 29,155,201,206,248,239,245, 47, 38, +134,191,127, 30, 63,127, 58,231, 41, 19, 43,195,255,143,204,140,230,134, 56, 87, 40,202,200, 72, 31, 90, 84,234, 85,177,158,137, +131,131,143,143,127,145,118, 62,195,255,159, 12, 54, 82,160, 69, 12, 63,127, 48,252, 99, 56,125,141,151, 65, 5,167,203,239,189, + 96,215, 23, 1,118, 20, 24,221, 77,197, 69,222,222, 62,251,227,153,178,208,219, 35, 50,229,172,204, 64,191, 51,253,253,241,153, +200,121, 48, 82, 1,164,237, 15,105,166,193, 87,200, 97, 14,245, 98, 5,130, 66,162,207,238, 95, 97,103, 99,254,245,251,223,143, +159, 79, 30, 63,121,251,238,253,167,119,239,190,189,125,247, 29,136, 4,132, 20,112,105,124,249,230,255,139,151,111, 52, 53,149, + 63,188,127,207,202,194,244,233,243,147,175, 31,254,105,169,124, 21, 23, 21,229,226,226, 98,103,231,124,254,226, 51, 35,179,224, +224,204, 33, 88,175,113,135,204, 4,224,215, 8,233, 31,192,239,146,132,215, 28, 12,164, 92, 41, 19, 22, 22, 6,111, 17, 67,110, +173, 0,198, 90,112,112, 48,176,250,193,191,185, 9,173,237, 15, 1,200,253, 9,148,254, 40,142, 43, 33, 33,226,192,212, 2,185, +123, 29, 34,254, 24,155,189, 64, 53, 89, 89,153,144,219,117,192,213, 6,164,255, 13,234, 52, 64,220,143,167,230, 0,234,157,234, + 40, 24, 62,225, 27,218, 88, 16, 80, 4,162, 55,201,145,149,214,165, 63, 50,123, 68, 13, 1, 1, 4, 16, 11, 45,138,126, 96,171, + 31, 50, 27, 76, 82,243, 31, 14,144, 75,127, 96, 15, 14,207, 61, 98, 26, 42,255, 32,203,252,109, 77, 25, 14,159, 70,136,195,199, +130, 82,194,121,254, 51,252,253,207,192,200,244, 31,103, 95,231,255,191,191, 27, 47, 63,122,251,251,255,143, 63, 12, 95,255, 50, +188,251,195,244,159,225,255,155,239,255,213, 61,124,249,120,120,113,150,164, 70,134, 79,158, 60,121,118,117,191,130,145, 7, 27, + 27, 59,104, 21, 16, 19,176,254,248, 5,105,201,108, 58,244,235,159,138, 15, 30, 63,158,190,197,166,175,252, 25,168,152,131,137, +209,218, 83,201,250,247, 69, 6, 70,246,149, 47, 89,127,253,250,247,247,199,151, 19,115, 74,237,204,245,105, 20,229,144,139,159, +128, 65, 10,153,162, 36,166,237, 15, 1,250,186,198,215,175,156,253,255,244,211,183,239,191,223,179,255,248,207,240,254,199,143, + 63,192,222,192,171, 55,223,158, 61,255, 98,235,136,115,217,235,247, 95, 34,247,238,191, 86, 82,148, 83, 84,148,121,251,246,141, +160,192, 95, 85, 85,126, 49, 81, 37, 14, 78,206, 15, 31,190,156, 61,119,227,201,211, 79, 18, 50,218,131, 39, 87,252, 7,223,118, + 9, 41,120,225,229, 47,214,181,252, 88,106,105,164, 21,140,192, 78, 0,252, 46, 73, 8,232,235,235,219,181,107, 23, 46,189,144, + 24,129, 92,248, 3,185,108, 25,185,200,134, 84, 0,192, 86, 60,158,241, 31,164,225,163,189, 36,221,110,132,235, 74, 72,136, 56, +164,248,198, 85,136, 67,150, 24, 77,155, 54, 29, 50,195, 97, 96,160, 15, 31,184,135,181,232,113,222, 52, 0,209,203, 20,246, 30, +162, 55,212,146, 29, 30, 48, 97,253, 95, 25, 24, 24,240,183,254,129,229, 3,124,129,147,167,167, 39, 60,118, 72, 26,249, 73, 43, +239, 64, 20, 29,157, 21, 35,170, 14, 0, 8, 32,150, 65,210,234,135,128,136,136, 8,146,212, 51,194, 6,250, 3,221, 24, 3,221, +152,160,153,138,241,127, 90, 4, 48, 33,176,254,251,207,175,172,204,247,143,225, 53, 35,195,223,127,184, 23, 40, 3,171,135,143, +255,152,223,252,254,247,231,223,255, 79,191,255,127,254,253,239, 23, 51,139,146,163,179,189,157, 39, 30,171, 53,212,212,159,155, + 60, 59,115,102,233,173, 79,111, 84, 44,131, 64,141,125,208,189, 22,140, 23,238,125, 62,127,159,251,183,106, 20,126,151,255,211, +176,223,116, 96,133,159, 37, 27,180, 36, 0,214, 79,255, 64,115, 6,191,191,127,126,118,105,191,146,180, 48,176,130,161, 81, 32, + 67, 46,255,131,223,161, 74,210,170, 18, 25,121,245, 51, 39,118,138,137, 0, 27,238, 44,224,177,157,191,159, 62,255,122,247,254, +187,172,162,182,141,149, 61, 46, 93, 94, 94,193,187,182,207, 63,113,234,170,173,181,190,188,188,252,239, 95, 63, 12, 13,244,184, +249,249, 31,222,123,244,244,217,135,163,199,175,191,255,204, 31,104,105, 63,120,114, 69,102, 6,100,128,133, 49, 19, 88, 32,130, + 11,244,127, 72,229, 62, 19, 19, 35,158, 11,214, 65,151,179,255,135, 23,128,140,255,254,253,131,119, 2,128, 12, 96,105,229,225, +225, 14,171,100, 24,188,163,107, 49,199, 58,112,149,218, 64, 89,252,165, 63, 50, 0,170,196,213,222,199,147, 42, 48,175,132,132, +139,227,185, 44, 12, 94,115, 0,203, 95,112,243,159, 17,185,254,192,111, 47,178,222, 85,133, 60,200,213, 34,156,187,243,226,111, + 92, 1,130, 60,238, 63, 58, 7, 64, 6, 0, 8, 32,236, 21,128,149,181, 25,133,227,110,228,181,253,225,209, 70, 36,184,126,247, +191, 38,116,184,159,177,168, 21,177,232, 18, 60, 16,244,239, 47,195,207,235,119, 62, 67,174,134,183, 49,253, 45,160,142,171, 2, +248,255,227, 47,195, 31,208, 65, 16,255,217,164, 84,165, 36,228,117, 76, 45,101,164, 8,159, 52,226,232,224,200,195,195,115, 96, +255,142,141,251, 22, 50,108,133,222,131, 58,235,146,129,129,145, 41, 49,142,127, 33, 31, 49,127,247, 50, 67,217,175, 6, 10,188, +192,228,255,225,203,239,207,175, 31,221, 57,178,238,199,141,157, 38, 38,198,192, 10,134,118,177,110,104,104, 8,105,205, 17, 51, +242,131, 18,173,224, 82,254,214,141,107,207,238, 61, 4,150,131,127,255,254,231,224, 20, 82,211,212, 9, 12, 32,112, 41,152,152, +180,222,137, 83, 59,128, 61, 6, 93, 29, 37,105, 41,145, 71,143, 95,190,191,124,247,230,173, 71,123,247, 93,122,248,244,127, 74, +106, 46,145, 14,184,191,229, 51,217,190,126,240,224, 1,145, 42,255,173, 20, 36, 94,214,119, 19, 94,189,119,231,195, 59, 1,160, + 81,163,123, 11,144, 21,160,233,197,218, 33, 64, 46, 43, 73,107, 30,145,152,133,113, 93, 9, 73,204, 85,145,240,130, 30, 77, 25, + 49,205,139,127, 15,215,174,153, 16, 7,234,190, 88,162, 12,245,192,185,184, 42,128,209,157,213,148, 3,128, 0, 98,161, 74,210, +161, 10, 32,227,130,183,217, 43,254,194,138,123,148, 3,127,110,220,101,208, 80,254,195,204,240, 21, 82,250, 3,193,145,211,191, +124,112,150,168,140,159,127,253,249,245,135,225,229, 47,134,176,200, 84, 62, 62,126,226, 29, 96,106, 98, 10, 68,167,207,156,102, + 96,128,206, 48, 16, 89,250, 67,192,111,237,168, 89,231, 78, 51, 31,187,250,225,245,157, 51, 47,249,111, 62,242, 87,150, 21,119, +112,116, 0,154, 73,235,208, 38,181,232, 71,174, 3,128,232,194,229,179, 47, 95,188,228,230,230,198,211,240, 71, 41, 8,244,140, +129,104,233,146,153,215,110,158,148, 20,231,225,224, 96,253,242,229,215,211,231,159, 24, 89,100, 83, 82,227,136,180,154, 71,168, +136,108,255, 66,150,243, 15, 0, 56, 87,204,160,156,136, 88, 72,122,150, 4, 47,144,145, 13, 51, 50,132, 96,213, 6, 57,133, 35, +174,242,154, 96, 57, 78,222, 93,146,112,111, 34,143,252,208, 31,204,234,172, 64, 30, 5, 26, 81, 0, 32,128,208, 43, 0, 74,142, +235,161,197, 81, 63,196,128, 27,119,153,192,155,129,255,167,193, 6,144, 96,171,128,254,165,133,179,204, 90,249,135, 64, 16,176, +177,255, 16,148,249,250,249, 7, 3, 55,232, 70, 86, 50, 28, 0, 44,175, 53,179, 14,152,200,124, 20, 16, 86,209, 37,241,254, 90, +112,133, 1, 42,238,109, 25, 24,128, 21, 9, 29,138,126,234,140, 35,233, 26, 51,232,146,172, 43, 58, 38,253,200,177,131,175,223, +190,254,254,226, 27, 7,135,176,140,162, 30,145,245, 7, 3,101, 23,192, 82,229,242,216,255,255,255, 49,144,119,156,201,189, 5, +208,229, 64,247, 22,210, 58, 94, 72, 26,246, 25, 36,192,205, 39,156, 96, 91,222, 12,135, 56,133,115, 0, 62, 49,181,144, 25, 96, + 96, 29,128, 44, 56,114, 42, 0,128, 0, 26, 14,247, 1,252,103,128,248,226, 15,242,225, 63,224,110, 1,179,170, 10, 7, 3,195, + 23,130, 13, 16,143, 44, 74,163,188,176,164,148,114,143, 12,149,210,159, 18, 64,124,137, 63,128, 96,214,251,142, 52,193, 10, 20, +161,213, 66,228,235, 5,182,250,207, 22, 49,140, 2, 28, 32, 36,123,202, 0,214,235,240, 58, 96, 4,150,254, 64, 0, 16, 64,163, +151,194, 15, 25, 48,122, 33,204, 40, 24, 5,131, 7, 12,143, 75,225, 1, 2,104,244, 70,176, 33, 3, 70, 75,243, 81, 48, 10, 70, + 1,117, 1, 64, 0,141,222, 9, 60, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,104, 5, 48, 10, 70,193, 40, 24, 5, 35, 20, 0, + 4,208,104, 5, 48, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,192, 95, 10,111,111, 38,141, 75,229,215,119, 47, 32, 12,110, 33, + 9, 8,227,224,169,167,200, 10,126,138,138,227,210,187,187, 63, 7,194,112, 45,132,174, 49, 96,127,253,146, 72,123, 49, 1,241, +246, 98, 2, 52,123, 77, 12,113, 94,246,242,230,254, 85, 8, 67, 68, 17,122, 46,194,153,243,207,168,229, 95,143,221,216, 15,160, +231,151,146,138,133, 29, 5, 60, 69, 28,106,254, 14,215, 52,106,197, 47,178,222,155, 55,111, 34,159,143, 86, 88, 88,168,174,174, + 78,163,116, 53,170,151, 42,122, 47, 95,190, 12, 97,232,234,234,146,170, 23,243,138,167,209, 75,225, 7, 27, 0, 8, 32,156,147, +192,144,195,164, 32,108,146, 14, 21,161, 80, 47,176,208, 7, 22,247,144,162, 95, 66, 86, 1, 72,190,192,125,208, 60,102, 33, 8, + 44,254, 32, 69,225,212, 77,167,128,100,182,159,217, 32,143, 0, 96,161, 15, 44,238, 33, 69,191,182,137, 53,144,188,122,230, 40, +173,253,187,249,203,151,157, 95,191,186,115,115, 3, 73,134,151, 47, 79,149,151, 1, 5,205, 58,187,104,234,211, 3, 7, 14,172, + 88,177,226,199,143, 31,112, 17, 14, 14,142,136,136, 8, 7, 7,135,209,124, 56,168, 0,176,208, 7, 22,247,144,162,159,212, 52, + 9, 57,185, 11, 82,244,147,148, 38,145,207, 55, 37,111,125, 39, 25, 87, 10,142, 2,128, 0,194, 89, 1, 0, 75,112, 30,205, 80, + 56,155,164, 66, 28,116, 12, 33,183, 40,169,122, 33,133, 62, 39,191, 48,144, 1, 41,250,177,246, 6,240,180,127,205,162, 43,128, + 12, 72,178,195,148,197,186,224, 21,217, 88,200,229,142,255,255,255,255,247, 15,116,149,216,223,191,127, 33,238, 97, 98,102,197, +223,232, 6, 2, 73, 49, 80,219,249,215,167, 15, 63,255,128,246,157,125,249,243, 23,226, 30,126, 49, 25,252,237,125,126, 41,101, + 32, 3,146,205,176,245, 6, 4,169,235, 95, 32,200,121, 9,234, 25, 64, 74,127, 72,209, 15,106,155,239,218,141, 44,235,131, 55, +166, 62,114,191,121,203,243,250,195,219, 59, 98, 2,154, 50,111, 84,136,137, 92, 96,219,127,229,202,149,200,165, 63, 16, 0,185, +156,156,156,146,146,146,104,253,128,225, 13,128,205, 35,146,114, 19,158,195, 16,105, 81,244, 67,210, 36,144,129,153, 38, 97,189, + 1, 65, 60,229, 47, 48, 77, 2, 25,152,105, 18, 34,139, 43, 77, 2,101,167, 47, 88,142,224, 38, 68,146,234,101,228,250,131,158, + 33, 54,212, 1, 64, 0,177,224, 10, 77,120,233, 15, 4, 64, 54,241, 97, 10, 84, 9, 47,253, 65, 61, 0,110, 81, 98,244, 2, 11, + 98, 96, 81,203,207, 7, 58,125, 19, 66,162,201, 2,171, 4, 92, 93, 1, 96,121, 7, 76,118,241,225,160, 75, 25, 33, 36,154, 44, + 48, 57, 18,108,134, 48, 51, 51,203,200,200, 0,201, 95,191,126,125,253,250, 21, 88,250,191,127,255,158,200, 64,228, 97, 97,158, + 55, 97, 61, 59, 63,195,203, 7, 12,167,191, 60,125,253,226,206,226,254, 74,130, 13,127, 96, 54,147,145, 2, 13,109, 65, 72,172, + 99, 65,228,249, 23,207, 57, 0,192,242, 29, 88,244, 55,231,100, 3,217,205,176,162,127,201,173, 91,136,210,159,208, 33, 2, 15, +254, 31,102, 48,123, 26, 33, 23,243,243,159, 10,251,191,255,215,223,236, 61,191,251,166,202,191, 44,252,254,237,239,239,255,254, +253,251,130, 5, 11, 18, 18, 18, 32, 34, 16, 54, 80, 16,216, 15,160,229, 77,229,131,174,244, 95,181,106,213,251,247,174,192, 54, + 18, 49,234, 33,167,243,211,167, 68, 3,150,239,192, 52,121,235,252, 49, 96,209,143,156, 38,247,109, 93, 39, 46, 46, 14, 31, 11, +194,149,235,241,164, 73, 80,233, 12, 63, 94,149, 80,233, 15, 4, 64, 46, 25,117, 0, 25, 0,235, 5, 0, 35,106,107, 20, 64, 0, + 13,138, 73, 96,228,210, 31,165,165,249,233, 51,176,208, 7, 74, 97,118, 8,176,150,134,200, 96,225,202,117,192, 66, 31, 40,133, +217, 24, 65, 3,192,134, 63,176,220,231,227,227,187,119,239, 30,176,208, 7, 54,255,137, 47,253,129, 13,127, 96,233, 31,152,219, +226, 25,101,181,229,202,211, 23,223, 25, 72, 45,253,145,193,147,103, 47,128,125,109, 81, 65, 62,112,213,204, 76,134,127, 61,130, +227, 65, 45, 52, 22, 86,130,165, 63, 16,212, 78,153, 10, 68,144,210, 31,216, 27, 40,117, 3,183,251, 69,217,240,149, 71,252,219, +220, 66,164, 18,229,179, 88,153,120,184, 25,184,152, 24,152,165,197,173,109,130,157,239, 73,245,227, 31,252, 1,185,112,225, 66, + 72,185,143, 70,194, 21, 16, 9, 14, 31, 62, 60, 32,169, 52, 45, 45, 45, 52,116,245,210,165, 75, 41, 47,253,133,132,246, 16,169, +101, 38, 24, 48, 50, 50, 34, 95,217, 72,187,210,191,181,170, 16,216,101,159, 51,185, 7,185,244, 7,138, 76,153, 50, 5, 79,154, + 68, 46,253, 49,211,164,167, 53,248,212, 41, 94,110, 34, 75,127, 68, 29, 64,202,165,176,163,128, 60, 0, 16, 64, 44,184,154,255, +189, 53,201,105, 81,238, 16,145, 89,203,118, 22,183, 16,213, 12,129, 55,255,181, 60, 44, 26,214,128,142, 58, 12,227, 17, 35,166, + 19,128, 86,250, 3,139,254,239, 31,223, 66, 70, 96, 32, 82, 64, 17, 92,122,209, 82, 30, 48,217,157, 90,218, 1,233,141, 66,164, +128, 34,120,172, 86, 86, 86,126, 11, 6,192,154,128,137,137, 9,216, 38, 5,150,254,192, 42, 1, 88, 13, 16, 60,141,107,237,134, +245,219,206,125,159, 80,224, 6,172, 9,184,184,133, 30,127,125, 10, 44,253,129, 85,194,151, 63,127,153,241,234, 69, 43,253,129, + 69,255,199,103,160,123,109, 52,100,196, 30,188,254,192,206,197,254,243,251, 79, 82,253, 91, 57,123,203,146,182, 34, 29, 37,173, +235,247,175,227,210, 11, 41,253,145, 91,253,160,105, 0, 6,134,123,233,141,129, 91,231,106,155, 41, 93, 61,139,243,174,146,139, +108, 91,172, 29,196, 69,185, 53,191,255,255,204,252,235, 43,219,159,159, 31,153,254,254, 96,252,255,143,141, 71,218,214,100, 77, +101, 91,136, 65, 21, 86,141,144,161,127,118,118,118, 6,216,248, 44, 36,111, 67,216, 64, 41, 96, 39,128,248,153,128, 37, 75,150, +217,218,218,210, 63,171, 0, 11,110,170,180,253,129,165,127, 85, 85, 21,241,205,127, 6,216,153,201,180,110, 17, 3,211,100, 40, +176,138, 91,189,250,236,217,179, 74, 91,215,169, 25, 90, 1,123, 3,144,201, 60,160, 56,121,105,178, 43,193,103,242,142, 19, 18, + 74,146, 47, 30,190,164,169,227,225, 19, 15, 12,164,207, 1,140,228,211, 16, 0, 2, 8,231, 28, 0,164,244,231,213, 10,251,124, +109, 21,144, 93,220, 50,151, 36,115, 33,165, 63, 25, 0, 62,206,131,214, 39, 0,214, 7,224,181, 64, 79,241,232,133,143,243,160, +181, 71,128,105, 17,180, 54,230, 53,246, 36,248,231,207, 31, 46, 46, 46, 96,209, 47, 40, 40,248,237,219,183,175,224, 2, 81, 84, + 84, 20, 88, 37, 16, 60,163,234,199,123, 6, 51, 78,206,210,201,135, 93,245, 25, 30,158,103,128,220, 73, 3,228, 78, 42,116,252, +251,239, 47, 49,254,133, 79,175, 57, 27,107,176,240, 50,237, 60,112,205, 80, 67,150,143,135,253,224,153, 59, 34,138,218, 15, 80, + 87, 1,225,242,239,166,107,255, 25,158, 51,248, 57, 51,206,222,114, 79, 88, 80, 49,200,154, 17,143,127, 33,165, 63,164,220, 7, +130,255, 13,253, 12,210, 31, 25, 83,235,255, 55, 54, 51, 48,125,103, 60,213, 54, 69, 92, 28,235,169,220, 63, 52, 30,202, 11,120, +125,250,251,229,231,251, 59,139, 31, 45, 59,226,247, 94, 43,197,209, 45,151,135, 83, 80,157,131, 69,144,197,239,227,233,117,248, + 14,179, 3,134, 48, 60, 60,145,217, 36, 1, 96,243, 31, 88, 43, 31, 57,114,196,198,198,134, 12,189, 64,146,236,202, 35, 32,224, + 23,181, 74,127,121,121,121, 34, 11, 53,248,224, 24,164, 19, 64,246, 25,174, 68, 2, 39,239, 32, 96, 63, 24, 88, 1, 0,203,125, + 99, 48, 3, 40,104,108,108,236, 97,111, 2, 73,147,186,186,186, 15,240,174,168,129,167,201,231, 27, 58,120,181, 57,120, 84, 11, + 86,117,164,232,235, 72,168,251,180, 0,189, 67,211,213, 56,163,227,254,100, 0,128, 0, 98,193,218,252,135, 20,253,104, 82, 4, +103, 2,208, 70,255,145, 1,176, 31, 0,191,132, 4, 15,128, 52,243, 49,135,131,240, 52,255,145, 27, 29,152, 69, 63,193,230, 63, +104, 64,230,205, 27, 49, 49, 49, 72,251,244,247,239,223,144,185, 95,126,126,126, 86, 86,214,199,143, 31,227,191,140,110,254,158, +131, 41, 62,246,144,182,235,173, 63,160,241, 31, 32,195, 65,141,129,175,101,127, 97,137, 21, 65, 55, 3, 27,254, 64, 82, 78, 76, +232,253,207,159, 44,124,204, 63, 94,127, 3, 22,141,146,242, 50,187,246,157, 38,210,191,241,197,173,247,143,238,101,121,193,240, + 65,156, 1, 88,137, 89, 40, 40, 58,217,227, 91,162,138,220,246, 95, 18,158,178,246,231, 77, 6,149, 31, 12, 39, 89, 24,120, 88, + 24,124,141,101,124,227,241,117,149,164,133,126,253,122,199,250,231, 55,176,244, 63,158,192,111, 23,232,175, 33,166,121,101,215, + 1,195,208,175,172,191,190,254,209,248,247,250, 37,190,137,122, 72,137, 15,153, 3, 64,102,147, 4,128,205,255,153, 51,167,103, +100,100,145, 90, 1, 0, 75,255,165, 75,151, 67,236, 37,190, 14, 72, 75, 75, 3,150,218,192,162, 63, 26, 12,232, 89,250,163,141, +249,208,167, 19, 0, 4, 30,193, 49, 74, 74, 74,144,126, 0,164,237, 47, 46, 41, 73, 82,154, 76,243,181, 59,241,236, 21,175, 62, +239,211,157,119, 25, 56,216,131,115,227,132,100,124,104,234,102,204,193, 34,146, 2,106, 36, 31, 6, 7, 16, 64, 4,230, 0, 32, +253,128, 89,203,118,146,103,122, 67,136, 31, 39, 47, 47,104, 32,133,145, 17,216,232, 35,168, 30,216,204,199, 58, 25, 0,107,254, +227, 3,192,102, 62,214,129, 72,104,243, 31, 55,248,244,233,211,231,207,159,127,254,252,249,239,223,191,215,175, 95, 67,198,127, +128, 93,129, 47, 95,190, 16, 28, 2, 90, 63,185,230,192, 21,134,143, 15, 24,126,127,103,152, 84,238, 8, 25,255, 57,119,158,225, +194,243,163,196, 92,106,252,241,217, 93, 33,126,110, 97, 33,110,117, 53,205,123,247, 95,223,122,250, 86, 78,152,255,231,203, 87, +127,126,255,129,111, 5,192,227, 95, 43, 7,127, 27,199,200,245,155, 87,237, 63,180,106, 89, 95,113,112,113,219,165,223, 12,175, +223,190,194,227, 95,248,136,127,162,149,121,180,150,252,170,245,251, 46, 93,122,208,119,249,236, 10,215, 56,134,185,199,158, 62, +125, 13,223, 10,128,101,136,224, 7,251,223, 95,111,126,253, 2, 93,254, 14,185,200,254, 19, 39,104,166,228,251,191,111, 76, 63, +191,114,126,101,126,249, 28,123, 5, 0, 9,198, 31, 96, 0,237, 76, 32,177, 73,109,254, 67,234, 15,146,102, 2,128,138,129, 53, +199,140, 25,211,128,149, 7,176, 26, 32, 94, 47,133,195, 62,100,151,254,200,205,127,200,220, 3,188, 19, 64,235, 18, 1, 50, 20, +137, 12,224,105, 18,190, 21, 0, 79,154,180, 53, 85,119,177, 86,107,109,234,233,157,176,173,110,201,190, 12, 39,147, 23, 27,183, +125,124,255, 9, 87,137, 12, 20,207, 76,136,196, 20,207, 36,101, 18,152,138,245,226, 72,187, 23, 30, 32,128,152,176, 54,255,225, +165,127,111, 77, 50,120, 2, 96, 46,114, 39,128,248,230,255,253,163,160,213, 44, 76,204,204, 44,172,172,225, 2,146, 69, 69, 69, + 4,155,255, 88,167,130,137,109, 14, 99,155,134, 34,168, 87, 80, 80, 16, 88,238, 3,123, 0,192,106, 64, 84, 84, 20, 50, 33, 12, + 44,158, 62,124,248, 64,176, 2, 72,107, 93, 1, 44,247,249, 21, 24,128,213, 64, 94,231,126, 96,233, 31,148,223,254,228,223,139, +165,125,101,204, 76,140,196, 52,255,141,141,213, 68,149, 20,196, 68, 69,216,152, 24,255, 48,254,127,253,245,251,251,207, 63,136, +244,111,111,199,134, 0, 77, 69, 62, 62, 97, 46, 81,169,223,239,222,159,223,178,252,195,187, 71, 68, 70,252,188,142, 28,134, 66, + 23,150, 63,191, 20,190, 50,188, 98,254, 52,233,249,105, 6, 54, 62, 2,227, 93,119, 63,189, 97,250,254,136,237,155,137,138,163, + 86, 28,207, 61,193, 3,162,162,231,101, 45,238,125,100,250,252,243,255,247,111, 75,254,113,224,184, 66,153, 90, 55, 55, 1, 11, +241,232,104, 80, 97, 17, 19, 19, 5,100, 19,175, 17, 88,232, 3,181, 64,216, 64, 19,128, 92,162,155,150,130,152, 35, 63,196,207, + 6,147, 93,250, 35, 23,244,240, 74, 8,114, 99, 59, 77,139, 3, 96,154, 60,126,252, 56,100,220,223,216,216,152, 1,188,140,123, +229,166,109,196,167,201,141,235, 27,220,203,115,189,188,156, 69,216,153, 63, 51,254,223,121,235,241,241, 43, 79, 9, 22,223,104, +117, 0,132, 75,183, 73, 96, 96,171, 31,130, 70, 96, 29, 0, 16, 64,248, 90,229,192,210, 31, 72,146, 58,250,143, 82,100,124,253, +250,235,199, 15, 38, 22,102,102, 86, 22, 86, 54,118, 14, 14, 14,130,205,127,180,162,255,197,227, 7,196, 55,255,209,146, 99,182, +159, 25,193,230, 63, 3,120,189,191,132,132, 4,176, 7,240,242,229,203,103,207,158, 1,235, 3, 96,209, 15,105,112, 17,172, 0, + 94,191,184, 83,211,178, 31,216, 3,232, 46,182,173,207,183, 2,214, 7, 75,123,203,152, 89,216, 88, 24, 25, 89, 8,233, 5, 54, +181, 36, 69, 4, 88, 25, 88,129,253,163,231,247,175, 62,124,245, 81,138,159,247,251,183, 31,231,238, 62, 37,166,249, 31,156, 84, +196, 42, 4,172, 92, 25, 22,108,187,191,118, 90,169,123,114,193,149,235, 23,179,157,229, 9,250, 23,216,252,239,245, 11, 99,248, +192,193,192,200,202,208,219, 19,114,250,112,135, 89,192,177, 19,151, 25,251,203,240, 52,255,129,224,226, 11, 17,198,239, 31,191, + 48,124,253,198,193,161, 28,204, 39, 19,196,250,209,157,231,167,140,218,159,191,223,126,191,121,122,116,242, 71, 21, 21,101,218, +165,212, 35, 71,142, 0,163, 3, 50,122, 3, 33,137,108,200, 3,149, 1,107, 32,248,176, 15,132, 1, 52,141, 24,189, 46, 46, 46, +152,131, 63, 68,118, 11,200, 46,253, 25, 80, 71,255, 87,175, 14, 69, 94, 51, 74,211, 78,192,173,243,199,224,227,254, 89, 73, 97, +161,161, 32,123,129, 34,219,143,157, 35,166,249, 31,238, 98,206,255, 79,144,137,129,117,109,127,238,180, 45, 23,194, 76,181,239, +223,121, 20,210,182,152, 96,189, 5,169, 3,224, 8,174,158,214,117, 0,114,185,207, 48, 34,103,131, 1, 2,136, 9, 87,243,159, + 1, 60, 13,128,107, 38,128, 96,243, 63,140, 71, 44,156, 79,130,137,137,137,149,157, 13, 88,246, 3, 17, 27, 39, 71,168,176, 76, + 91, 91, 27, 49,205,127,228,162,159, 96,233,143,214,252, 71, 46,250, 9,150,134,224,252,252,254,203,151, 47,172,172,172,144,230, +255,191,127,255, 32, 36, 49, 21,192,226,254,202,115, 79, 15,242, 72,128, 38,126,121, 89,152,129,245, 1, 31, 59,235,135,119, 79, +128,205,127, 22,188, 67, 94,144,230,191,172, 16,239,181,123,247,255,252,250,197,206,194,246,229,203,143,139,247,159, 1,139,126, +130,165, 63,196,191,254, 57,205, 75, 39, 77,252,246,143, 65, 86, 89,230,202,213, 19, 69,190,250, 68,250, 23, 8,138,148, 77, 54, +223,222,199,240,241, 15, 3,135,200,238, 83,215, 24,219,115,129, 69, 63,254,210, 31, 8,244,127,249, 28,221,125,138,225,215,231, + 47,140,159,223, 51,125,249,200,242,251,247,223, 79,236, 63,190,113, 60,187,191,162,234,182,130,129, 26,254, 11,109, 56, 57, 57, + 33, 12, 14, 48, 64, 19, 36, 88,136, 47, 94,188,116,198,140,105,112,145,216,216,104, 96, 39,128, 96, 29, 0, 25,250,135, 55,255, +225,157, 0,160,105, 36, 13, 34, 65, 90,253,192, 50,157, 1, 60, 27, 76,112, 66,152,146,210, 31, 88,196,227,234, 51,205, 0, 3, +218, 53,255,225,107,126,106,106, 11,129,105, 82, 92, 92, 28, 82, 7,192, 55,246,227, 79,147, 41, 14,122, 5, 61, 19, 63,191,124, + 37,202, 39,118,245,218,163,132,190,101,144,101,172, 68,214,121,112,128, 60,170, 51,186, 24,148,166, 0, 32,128,240,221, 7,240, +249,218, 42, 6,108,179,193,196,128, 85, 95, 94,129,114,154,136, 44,200, 14, 86, 22, 22, 54,182,239, 95,190, 8,138,139,115, 49, +115,225,111,254, 35, 47, 0,101,253,255,155,225,207, 55,104, 59,157,133,139, 96,243, 31,121, 1, 40,200,168, 87,208, 37, 7,120, +182,227,194,235, 0, 32, 9,236, 7, 0,201,119,239,222,241,241,241, 65,198,127,136,185,148, 21,188,234,191, 61, 51,212,158, 97, +210,225,105,213,222, 33,197, 19,151,117,100, 3,155,255,192, 14, 15,193,230,255,181, 71,175, 84,100, 69,246,238, 57,193, 0,222, +126, 9, 36,127,255,132,246,181, 89,113,107,135, 52,255, 91,146,156,243,234, 23,200, 42, 49,146,228, 95, 72,243,223,109,253,188, + 93,209,145,140, 50,160,139,236,221,185, 65, 11,180, 55,127,129,222,155,230,203,195,131,199,217,122, 63,203, 46,110,223,242, 67, +253,152,130,170,206, 39, 78,134,251, 12, 15, 63, 63,120,253,186,237,239,151,247, 50,133,113,197,248, 3,106,250,244,233,192,226, +254,251,247,239,240, 34, 12,200, 5, 10, 18, 83,250, 3, 11,241,153, 51, 81, 84,218,216,216, 0, 75, 73,160, 56, 48,142,112, 77, + 8,103,100,100, 1,213, 0, 75,127,180, 89, 95, 8, 23,168, 23,136,144, 43, 21,188, 41, 4,212,234,127, 9,222, 38, 77,204,108, + 48,176,235, 64, 94,233,207, 0,187,252, 29, 79,193, 71,234, 94, 98, 34, 1, 48, 77,182, 54,212,172,219,188,221,221,198, 8,158, + 38,129,200,248,222, 61,143,224,152, 71,111,191,201, 9,115,225,111,254, 23,204,218, 92,149,236, 38, 37,225, 0,169, 69, 32, 78, +133, 7, 8,169,238,129,175,236,164,221,236, 55,100,180,103, 36, 47, 3, 5, 8, 32,124, 21, 0, 25, 69, 63, 7, 15, 55,176,177, + 15,100, 36,201,170,179,114,176,243, 8,130,118,141,127,255,252,249,247, 47, 80,139, 9,216, 9,224,100,249,141, 71, 59,100, 13, + 40,176,201,255,239,239,111, 80,233, 15, 6,191, 25, 89,113, 29,198,128, 12, 32,235,207,128, 77, 96,120, 57, 72,100,233, 15,175, + 3,224,155,191,128,117, 0, 81, 1,132, 84, 7, 44,134,109,132,154,221, 6,219, 19,251,251, 11,254,107,200,129,205,255, 83,111, + 62, 92,184, 13, 26,240,129,151,251, 4, 75,127, 8, 0, 54,255,215, 26,113,231, 4,106,144,225, 95, 96,243,191,120,211, 42,198, +214,250,237,226,230, 19,190, 92,129,139, 27,178,176,202,112,176, 19,244, 44,176, 31,176,125,211,143, 39,239,239,190,126,251,252, +229, 45, 30,230,191,124,214,122,182,142,113,142, 52, 74,160,240, 66, 28, 83, 10, 82,142, 3,219,242, 64,132, 86, 61,192, 74, 82, +156,133,187, 45, 24, 16,239, 12, 50,214,128,166,167, 11,146, 81,250, 51, 12,232,114, 70, 96,154,180,180,180, 68, 75,147,192,210, +159, 1, 52, 21, 76,224,186,108, 96,243,223,117,207,201,232,250, 69,118,118,118,226,168,189, 73,178,171, 43, 72, 29, 64,204,246, + 35, 76, 17, 50,130,113,164,205, 0, 3, 1, 64, 0, 33,202, 55,200, 30, 16, 98,244, 0, 85,126,199, 16,129,234,253,250, 26,106, + 46, 11, 11, 43, 43, 43, 59, 24, 0, 27,122, 16,242,230,255,239, 94, 94, 94, 23, 30, 48,224,234, 4, 0,139,126,102, 96,147,255, +207, 55,102,164,162,159,152,205,202,144, 1, 31, 96, 81,136, 92, 26, 18, 83,244,243,139, 74,253,250,245,147,188,176,139,110, 94, +124,251,198, 85,178,131,254,212,173,199,144,108,134, 92,250, 19, 44,250, 33, 32,206,136,155, 60,255, 2, 1, 99,127, 25,164,232, +135,151,254, 68, 22,253,112,224,169, 24,194, 0,169,220,136, 91, 35, 3,108,210, 66, 54,253, 2,219,251,240,221,191, 64, 6,164, +249, 15,100,224, 25,214,192,223, 66, 39,181, 28, 39, 27,144,177, 6,148, 22,141,116, 90, 3,172,105,146, 96,209, 15, 1,174, 53, +179,169, 88,244,147, 84, 29, 82, 88,101,162,149,251, 35,170, 67, 0, 16, 64, 44,200, 81, 69,124,108,161,109,232, 32, 73,239,133, + 7,232,155, 65, 32,163,252,144,162,159,129,196,162, 31, 50,234, 77, 94, 81, 8, 4,127,254,254, 35,166,123,129, 21,188,122,247, +145,120,139,144, 1,100,148,159,188,162,159, 18,255, 66, 70,249, 55,127,249, 66,118,209, 63, 10,134, 43,128,204,241, 62,122,251, +141,140,162, 31, 82,254,194, 71,123,134, 80,253,135,118, 35,252, 8, 28, 14, 2, 8,160,209, 75,225, 71,193, 40, 24, 5,163,128, +100, 48, 60, 46,133, 7, 8,160,209, 27,193, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96, +132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, 26,173, 0, 70,193, 40, 24, 5,163, 96,132, 2,128, 0, + 26,248, 75,225, 71,154,222, 31, 47, 30, 19,175,151, 67, 66,150,186,110,102,254,255,159,229, 31,195, 79,102,236, 27,220, 88,255, + 50,252, 97, 98,248,207, 56, 26,191,163,122,135,179,222, 81, 0, 7, 0, 1, 52,168,123, 0,164,238, 2,191,119,239,222, 30, 24, + 0,178, 71, 99, 23, 13,176,255,253,255,151,145, 17, 94,250, 63,122,244,232,248,241,227,231,206,157, 3, 50, 32, 34,191,153, 65, +165, 63,241,128, 90,167,188,141,130,193, 15,110,222,188, 73,146,226,140,140, 12,178, 45, 34, 91,239, 40, 32, 21, 0, 4, 16,203, +160,117, 25,169, 37, 56, 80,125, 71, 71, 71, 88, 88, 24,178,118, 37, 37, 37,226,181, 3, 1,232, 58,251,208, 80, 37, 48,192,175, + 62, 45, 45,141,160,153, 64,199, 96, 93, 13,189,123,247,124, 98,244,190,127,207, 77,221, 32,133, 23,253,175, 94,189,250,249,243, + 39, 35, 35, 35, 7, 7,199,143, 31, 63,128, 21,192,233,211,167,245,245,245, 85, 84, 84, 72, 50,144,152,163, 50,192, 21,121, 38, + 49,202,176,238,230,165, 76,111, 58, 14,197, 51,145,165,240,111, 35, 2,166,138, 54,145,224,255, 91,239,178, 28, 64, 57,177,242, +111,215,169,255,219,238, 70,138,174, 99, 96,215, 32,232, 60,119,119,208,177,234, 59,119,146,115,172, 58,228, 44,232,244,116, 65, + 74, 86,214, 3, 75,213,254,254,126,130,231, 8,165,166,166, 1,235,116,204, 88, 45, 41, 41, 38, 70, 59, 60, 85, 76,152, 48,193, +222,222, 30, 88,142, 47, 91,182,236,211,167, 79, 4, 45, 69, 41,146, 88,152, 35,172,216,210, 51,210,187,118,116,151,184,150, 64, + 4,103,207,158, 53, 90, 88,211, 2, 0, 4, 16,246, 10, 0,243,176, 17, 26, 29, 63, 66,197, 10, 0, 94,250, 3,221, 9,217,147, + 2, 52,129,200, 10, 0, 82,121, 64,138, 51,200,150,230,242,242,114,194,122, 87, 11, 17, 50, 24,103,136,125,245, 37,112,139, 58, + 3, 17,135,164,145,119, 15,198,199,143, 31,197,196,196, 32,237,119, 78, 78, 78, 96,101,240,225,195, 7,126,126,254, 83,167, 64, +151, 39, 19, 83, 7, 0,131, 23, 18, 74,192, 16, 11, 14, 14, 6, 6, 56,193,154, 96,211,166, 13, 16,134,159, 95, 0, 46, 54, 46, +189,223,143,229, 64,131,196,106, 10,156,141,204, 5, 50,112,233,221,177, 3,229,114,179, 67,135, 14, 65,142, 35,132, 7,212,146, + 37, 75,240, 39,140,206,206,206, 86, 7, 3,160, 87,129, 45, 3,228, 44,240,127,249, 93, 6, 70, 70,146,146, 40,253, 51, 17,114, +233, 15,244, 50,248,244,164,165, 71,142, 28,241,138,170,198,165,248, 24,198, 21,218,235, 87,131, 74,255,127,255,254,205,154, 53, + 11,168,157, 79,206, 30,107,161, 15,239, 14,222,184,113, 3,200,141,140, 4,213,151, 81, 81, 81,196, 84, 27, 61,187,161,183, 16, +191,216,249, 28,168,119, 89, 62, 23,208,200,114,143, 50, 6,112,236, 45, 95,184, 44,195,158, 78,125,130,145,118, 58, 16, 64, 0, + 49, 97, 45, 86,128,217, 27, 24,217,104, 25,158,200, 1, 25, 74,198, 94,144,245, 66, 26,227,196,235, 5, 58, 24,190, 33, 25, 72, + 18,223,246,135, 84, 30,140,224, 28, 14,204, 36, 16, 75,137,244, 5, 99,216,123, 8,194, 35,130, 11,240,108,153, 14, 65,120, 68, + 8,150,254,255,193,128,248,209,152,247,239,223, 3,203,122, 38, 38,166,164,164,164,232,232,104, 54, 54, 54, 96, 29, 0,236, 7, + 0,189,207,204,204,124,246,236, 89, 96,245,128, 71,251,181,107,215,128,246,174, 89,179, 6, 18, 92, 64, 75,215,174, 93, 11,108, +232, 1,197,233,156,112,209, 42, 3, 26, 53, 65,128,165, 63, 48, 73, 68,137,173,143, 20, 89,139, 22,248,213,230, 23, 88,246, 71, + 16, 99, 14, 48,124, 74, 75, 75, 21, 21, 21,201,112, 3, 80, 47,176,237, 47, 44,188,151,242,182, 63,188,244, 39, 73, 59,188,244, + 47, 46, 46,198,163, 29, 57,249, 1,155,255,118,118,118, 64, 6,176, 14, 0,246, 3, 8,150, 27,104,122,195, 45, 65,173,210,101, +249,156,192,126, 64,153,123, 41, 61, 19,213, 8, 60, 11, 8, 32, 0, 59,103,116,194, 48, 8,132,225,180, 84, 58, 84, 95, 28,194, + 7,187, 68,223, 93, 66,208, 29, 58,128,115,232, 28,142,224,115,191,214, 32, 37,132,196,166,148, 66,169, 79, 23,162, 8,151,187, +207, 59, 3,255,126,174,229, 28, 69,192,107, 29,221,202,189, 30, 28,215,156,121, 39,223,182, 93,224,204, 50,253,213, 37,237,240, +160,252,239,148, 69,250,214,104,244,159, 36,210,106,178,149, 82,160,191,214, 26,208,231,156,133, 16,135,199,192,168, 82,157, 49, +198,133, 68,117,206,129,126,165, 20, 64,193, 81,192, 17,155, 87,222,251, 31, 75,140, 70,127,108,216,253, 44,118,130,147, 91,131, +216, 89,209, 51, 13,143, 17, 84,219,254,154, 24, 99, 88, 59,209, 90,232,164,191,181,150, 79,198, 65, 2,190,171, 2,118,143, 2, +107,163,127, 93, 78,204,164,148,122, 4,180,217,145,249, 4, 88,125,228, 12,144, 82,178,123, 8, 97,245, 34,145,242,127,216, 13, +215,203,168, 63, 65, 31,112, 62, 29,239,125,192,159,254, 31, 27, 55, 1,196,130, 53,177,194, 47,134,190,135,116, 49, 52,193,180, + 78,173,210,159, 42, 21, 0, 37, 0, 88,121,144,237, 17,186, 1, 50,138,146, 59,119,238, 0,115, 50,176,165, 15,100, 0,181, 3, +243,234,175, 95,191,128,217, 15, 88, 1, 0,201,191,127,255, 2,171,135,245,235,215,227,138,232,189,123, 65,237, 80, 96,137,143, +172, 0,194,134, 20, 79,120, 82, 8,242, 8, 15, 46, 54,158,198, 62,174,177, 32, 60,131, 63,104, 35, 63,144, 54, 41,241,160, 77, + 36,184,213,193,128, 37, 29,109,220,255,228,255,109,247,238, 17, 51, 60,136,212,132,135,212,145,144,146, 14, 24,134,196,143, 2, + 65,244,170,170,170, 50, 16, 61,221,130, 12, 50, 51, 51,225,131, 93, 64, 54,228, 66, 77,226, 75,127,123,107,208,145,140,192,182, +127, 73, 73, 9,176, 97, 14,209,238,235,151,250, 23,175, 46,120,243, 31, 14, 32, 99, 65,219,182,109,211,208,208, 96, 96,224,198, +175, 55,220, 18,229, 96, 46,240, 88, 16,195,242,101,231,111, 74,220,196,175,151, 42,165,127, 90,121,199,172,206,138, 17, 85, 1, + 0, 4, 16,246, 57,128,180,180, 52, 72,195, 31,126, 49, 52, 73,165, 63,214,118, 40,158,225,105, 92,122,145,197,105,119, 70, 46, +208,167,240, 99,199,145,221, 64,222,136,237,255, 85,130,100,187,228,139, 15,225, 9, 79,184, 35,209, 74, 4, 56, 23,162, 0,107, +112,189,123,247,142,151,151, 23, 72, 30, 59,118, 12, 88, 13, 0, 75,127, 96,147, 31,114,245, 13,176, 62,248,253,251,247,207,159, + 63,241,212, 43,144, 94, 17,102,152, 0, 69,214,172, 89, 3,148,197, 19, 92,148,207, 1, 0,203,122,228,226, 30,194, 38,178, 26, + 0, 22, 73,164,214, 1,255,183,222, 5, 6, 42, 36,229,195, 39,147,254,175,184, 15, 20, 36,126,110, 9,185,142,100,128, 93,236, + 78,222, 52, 0,176, 19, 0,153,189, 32, 94, 59, 48, 42,225,227,239, 54, 54, 54,192, 18,156,164,182, 63, 80,251,159, 63,127,144, +181, 31, 60,250,183,167, 51,131, 96,243, 31, 82,226, 99,130,254,254,126,239,232, 26, 92,122,145, 70,255, 81,251, 7, 68,232,165, + 86,233, 63, 2,123, 0, 0, 1,196,130, 39,213, 66,154,255,116,110,251, 35,143, 68,209,103, 41, 39,242,104, 15,242,250, 16,252, + 37, 26,206,254, 44,108,244,159,140,154, 0, 62,250,143,191, 38,216,180,105, 19,154,200,226,197,139, 99, 99, 99,145,154,213,126, + 64, 95, 96, 78,100, 1, 75,124, 96,233,255,227,199, 15,126,126,126,118,118,118, 96,246, 6,102,114, 96,195, 31, 40, 14, 44,253, +129, 12,130,189, 10, 92,195,128,192,134, 42, 29, 6,205,112,205, 6, 19, 3, 32,117, 0, 9, 25,227, 64, 36,166,103, 35, 69,214, +146, 52, 53,133,220,252,135,215,211, 68, 54, 44,144,155,255, 88,171,124,252, 96,217,178,101, 16, 67,128,117, 0, 25, 67,255,144, +150, 31,176,107, 88, 88, 88,120,230,204, 25,152,118, 2,201, 99,226,196,137,104,167,115,175, 88,177,226,224,193,131,192,116, 5, +105,145,224, 89,143, 63, 97,226,132, 8, 11,148,230,127,244,164,111, 43,142,253, 6,234, 53,140, 50,204,176,207, 24, 93,203, 79, + 11, 0, 16, 64, 76,120,218,197,144, 68, 0,159, 12,192, 3,128, 13,162,242,242,114,242, 92,128, 75, 47, 80,156,248, 50,101, 15, + 6,128,172, 8, 34,117,216,148,152,197,157,131, 1,248,129, 1,156, 11, 41,253,225,130,152, 53, 4, 4, 0,155,255,192, 82,254, +253,251,247,111,222,188, 1,146,223,192,224,203,151, 47,159, 62,125,250,248,241, 35,176, 55, 0,236, 1, 0, 21,224,172,219, 24, + 25,129, 45,125,130,149,232,160, 2,135,144, 0, 92, 16,232,125, 56, 27,207,184, 54,230, 33,231,240, 89, 34, 50,154,255,240, 78, + 0, 48, 12,201,158, 9, 0,234, 37, 38, 73, 3, 75,124, 96,177, 11,153,248, 5,214, 1, 16,191, 19,127,151,100,117,185, 61, 80, +251,191,149, 2, 64,237,192,166, 55, 68,251,161, 99,255, 96,205,113,156,205,127,248,128, 15,104,220,102,249,210,204,204, 76,160, + 57, 5, 5, 5, 4,173, 6, 53,255, 25, 24,151,194,154,255, 81, 19,191, 49, 71,124, 92,126,236, 23, 80,111,231,142, 46,154,166, +144,145,220,252, 7, 2,128, 0,194,222, 3,152, 53,107, 22,124,232, 31, 62, 25,128,191,112,132,148,227,144,182, 60,169,195, 53, +104,122, 33,125, 2,160, 32,121,195, 62,240,101,160,244, 4,144,134, 63,121,227, 63,144,134, 63, 49,227, 63,240,210, 31,206,128, +151,245, 88, 5,209,128,176,176,240,219,183,111,129,237,253,215,175, 95, 3,123, 0,192,246, 29,164, 7,240,245,235, 87, 96, 77, + 0, 44,253,129,213, 0,158,230, 45,164,153,143,117,137, 48, 68, 22,175,155,169, 48, 7, 64,164, 56, 50,192,122, 7,117,117,117, +117,107,107,171,136,136, 8, 77,147, 4,102,243, 31, 14, 8,206, 4, 96, 54,255, 73,106,251, 71, 71, 71,199,196,196, 0, 35, 23, +232,253,170,170, 42, 96,239,135,248, 11,109,106, 42,236, 15, 28, 56,192,184, 6,116, 63,235,174, 26, 94,183,150,207, 64,237,173, +157,160, 86, 60,254, 46, 8,100,237, 63,184,213,191,236,224,193,195,255, 25,255, 23, 22, 20,170,171,171, 19, 99, 41, 80,111,132, + 21, 43,162,213,207, 0,210, 43,238, 38, 65,198,204,199,104,233, 79, 18, 0, 8, 32, 22, 60,109,127, 96,233,143, 60, 25, 64,176, +235,138, 92,142,147,215, 15,128,232,165,112,228, 7,226,102, 50,203,113, 26, 39, 56,202, 1,100,144, 10,126, 85, 55,114, 63, 0, +171, 32, 50,144,145,145,185,115,231, 14,176,196, 7, 54,249,127,255,254, 13, 25,250,255,241,227, 7,100, 45, 41,100, 78, 24,207, +232, 54, 48,246,129,134, 67, 58, 1,240,148, 0, 12,106, 52, 17, 28,195, 86,212,159, 3, 64, 30, 17,194, 21, 86, 88,197, 65,139, + 56,171,171,195,195,195, 87,174, 92, 73,252, 64, 37, 26,187, 77, 36, 56,217, 97,121,228, 30,236, 27,193,220,221,221,239,223,191, +143,182, 11, 1, 2,128,226, 12,120, 55,133,133,134,174, 14, 13,117,118,117,189,135, 57,217,240,246,173, 51, 3,195,251,244,116, +156, 57, 17,126, 21, 34,164,147,177,107,215, 46, 6, 82,174, 51, 99, 98, 98, 4, 53, 98, 32,165,255,165, 63,243,247,131, 46,194, + 4,150,254,196,100, 13, 72,114, 2,182,250,129,100, 97, 81,161,186,154, 58,145,150,150,150,149,128,245, 50, 0, 91,253, 16,189, + 18,110,146,160,209, 38,122,229, 69,204,137, 95, 96,197, 48, 66,182, 2, 0, 4, 16, 11,174,238, 60,124,226, 23,190,204,131,152, + 49,113,170,140, 5,145,186, 3, 96, 4, 2,248,144, 11,188,140,131,236,222, 64, 22,196, 58,102, 10,108,163,109,219,182,237,207, +159, 63, 31, 62,124,128,204, 1, 0, 5,129, 29, 2, 32, 23,200,134,236,130,198, 99,111,126,126,254,196,137, 19, 33,213, 0,242, +184, 63, 80,156,214,117, 39,176,184, 39,166,208,199, 90, 26, 98, 86, 12,192, 38, 54,145,165, 63,102, 41, 12,155, 16, 38,220, 76, +193,122,164,193,131, 7, 15, 24,136, 88, 98, 0, 31,128, 69,117,185, 11, 49,254, 5,246,243,128, 69, 63,242,224, 59, 49, 0,168, +253,223, 74, 65, 96,185, 15,100, 47,216,255,107,197,177, 95, 64,237,135,143,147, 48, 90,117,232,208,161,130,130, 2, 34, 91,253, +112, 0, 73,132, 43,143,255, 6,234,149,112,151,132,213, 39,163,185,156, 30, 0, 32,128, 88,176,102, 15,200,166, 42,228,166, 31, +193, 33, 32,180,236, 65,118, 29, 64,185, 33,240,211, 32,136, 4,184, 46, 67, 38,166, 18,194, 28,243, 33,126, 20, 8,115,204,135, +200, 81, 32,248, 76, 53,114,222,198, 42,136,181,153,230,237,237,189,116,233, 82, 54, 54,182,159, 63,127, 2,235,128,127,255,254, + 9, 8, 8,188,127,255,158,152,181, 94, 90, 90, 90, 64,243,119,239,222, 13, 89,246, 3,217, 19, 48,228, 46,191,221,183,111, 31, + 48, 16,182,108,217, 66, 70,233, 15, 47, 43,239,149,151,227,233,170,150,150,150, 50,224, 88, 62, 87, 86, 86,134,127, 14, 32, 61, + 93, 16,151, 94, 96,219,159,152,114,156, 96, 31, 8, 15,112,111,249, 12,103,147, 84,250, 79,155, 54,141,188,232,232,233,238, 5, + 53,249, 7, 2, 96, 54,243, 71,218, 78, 96,128, 0,194,185, 12,148,160, 8, 77, 1, 61,119, 0,144,116,161, 49,106, 53, 67,102, +193, 7,210,203, 73,166,107, 33,163, 91,144,202, 9,109,164, 11, 89, 16,191,143,162,163,163,239,222,189,187,127,255,254,239,223, +191,255,253,251,215,192,192, 0,232, 36,226,195,220, 21, 12, 32,109, 55, 34, 27,254,212,154, 3,192,197,198, 83, 26,162,173, 75, + 33,102, 55, 19, 3,228,168,159,229,119, 35, 69, 81, 42,128,148, 79,134,201,142, 43, 88,210, 35, 32, 27,193, 32, 82, 88,123, 90, +120,194,223,217,217,153, 96,130, 36, 67, 10,238, 95, 96,140, 4, 6, 6, 66, 78, 31, 34, 21, 48,133,191, 7,106,247,243, 79,131, +180, 21, 32,139, 62,145,143,121,160, 5, 48,142, 49, 26,109,137, 15, 20, 0, 8,160,193,120, 24, 28, 25,205, 22,250, 55, 66, 41, +177,145,146, 83,222,168,229, 83,101, 48, 64, 19,252,245,235, 23, 51, 24, 80, 59, 66,167, 15,144, 94, 44, 9, 41, 38, 38,134,168, +113,137,109,160,163,126, 32, 35,159,112, 65, 96,233,207,240,159,129,224, 64,217, 16,202, 56, 24,218, 9, 15,189, 83,125, 57, 38, +221,206,249, 25, 5,152, 0, 32,128, 70, 47,133, 31, 5,163, 96, 20,140, 2,146,193,240,184, 20, 30, 32,128, 70,111, 4, 27, 5, +163, 96, 20,140,130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,136,101, 52, 8, 70,193, 40, 24, 5, +200,128, 17,147,245, 31, 78,140,130, 97, 5, 0, 2,104,180, 2, 24, 5,163, 96, 20,160,150,254,140, 80,136, 1,254,131,225, 40, + 24, 62, 0, 32,128, 70, 47,133, 31,213, 59, 60,245,198,249,233,194,217, 76, 76, 76,144,229,170,240, 21,141,255, 97, 0,162, 96, +209,166,203,200,122, 63, 60,216,207,193,193, 1, 81, 15, 57, 64, 27, 89, 47,228,212,188,127,255,254, 1,217,191,127,255,230,149, +181, 27, 1,225,204,200,204,194,254,255,223,159,127,255,254,108, 57,242, 4,121, 81, 40, 46,189,192, 32,122,249,242,165,132,132, + 4, 25,246, 82,162,151, 24,255,142, 2, 56, 0, 8,160, 33,223, 3,168,174, 70, 92, 97,215,218,106, 70, 63,189,167, 64,151,234, +181,154,181,194, 25,164,186, 28,215, 62, 85, 92,226,164,154, 51,204, 0,211,175,175, 44,111,239,171,254,184, 36,253,231,241,173, +255,138, 79,120,181,190,241,201,179,113,243,226, 82,127,228,200, 17, 27, 27, 27, 72,209, 15, 41,196, 25,193, 0, 94,136,255,131, +129,135, 15, 31,162,233, 61,119,238,156,177,177, 49, 39, 39, 39, 11, 11, 11, 80, 35, 92, 59,164,220,255, 11, 3, 63,127,254, 60, +123,246,172,131,172,221,224, 15, 61,160,203,223,190,125,123,252,248,113, 1, 1, 1,180,141, 17,132,251, 4,140, 76,236, 28, 66, + 2,130,234, 95,191, 60,253,242,249, 49,184,115, 64,160, 43, 0, 12,165, 53,107,214,220,186,117, 11,200, 6, 6, 99,113,113, 49, +241,214, 65,244,222,187,123, 7, 24,230,108,236,236, 5, 5,133, 52,221,133, 48,194, 1, 64, 0, 13,162, 10, 0,215, 73,147, 12, +120, 15, 26,131, 20,220,200, 69, 57,241,128, 18,189,195, 9, 80,184,119,148, 14,165,215,231,135,215, 63, 30, 90,245,237,219, 79, + 5,115, 38, 78, 25, 70,213, 71,151, 76, 25, 46,190,255,201,115,129, 43,238, 13,163, 52, 86, 77,215,174, 93, 3,150, 32,192,194, +142, 5, 6, 32,149, 1,164,225,255,231,207, 31, 96, 9, 14,108,191, 3, 75,255,125,251,246, 49, 11,155, 32,235,253,246,237,219, +249,243,231, 45, 44, 44,216,216,216,224,151,166, 1,181, 3,203,166, 63, 96, 0,212,248,253,251,119,160,154, 47, 95,190, 12,230, +152,173,170,170, 66,206, 68,159, 63,127, 54, 48, 48, 32, 67,239,226,101,103, 57, 57,197,128, 5, 50,168, 2, 96,100,248, 15,217, + 45,128,187, 88,126,246,236, 25, 48,100,162,162,162,148,148,148, 32,231, 82, 8, 9, 9,153,152,152, 96, 85,156,224,142,178, 51, +238,242,141, 27, 7,120,185,138,250,155, 12,141,116,158, 63,121,181,107,219, 1, 5, 29,195, 79,159, 62,142, 22,214,180, 0, 0, + 1,196,130,181, 44,128,148, 2,184,216, 52, 42,253,179,178,176,223,147,254,254,253,251,229,203,151,227,169, 3, 32, 37, 56,169, + 77,120, 10,245,194,219,254,100, 52,255,209,110,158,193,165,128, 70,161, 13,233, 49,192, 73,136,224,187,119,160,253,101, 66, 66, +123, 6, 97, 26,253,245,248, 26,251,177,197, 63,191,253, 11, 82, 97, 86, 23,253,243, 79,232, 63,171, 16,243,231,183,108,156,159, +191,107, 94,156,114, 86, 45,227, 27,151, 60,182,118, 43,227,245,235,215,129, 37,184,147,147, 19,164, 28, 7, 2, 96, 33, 14,185, +250, 6, 88,136, 3,219,239,143, 31, 63,222,191,127, 63,176, 38, 64,219,249, 6, 84, 6, 84,115,241,226, 69, 96,253, 1,108,192, +178,179,179, 67,244, 66, 42, 0,160, 70, 96,233,118,249,242,229, 31, 63,126, 16,220, 52,247,224,193, 3,160, 45,192,146, 23,232, + 6,113,113,113, 85, 85, 85,200,224, 18, 49,128, 18,189, 64,167,214,212,212,192, 15, 67, 5,150,230,192, 26, 81, 76, 76, 76, 88, + 88,152,200,210,127, 94, 82,146,151,161, 33,144, 45,145,155,203,201, 37,254,229,211,163, 79, 31,239,254,255,255, 23,116, 96,220, + 63, 2, 23,210, 1,139,123, 17, 17,145, 69,139, 22,197,199,199,111,218,180, 9,200, 61,116,232,208,175, 95,191, 24, 24,228,176, +170,127,219, 94, 4,103,243,252,250, 45,245,231, 71, 65,105,125,127, 79, 99,119,207, 52,105,166,191,211,122,250,156, 34,162,112, +233,165, 28,160, 93, 6, 57,162,182, 70, 1, 4, 16,246, 30, 0,242, 17, 40,184,216, 84, 7,244, 63,195,153, 10, 3, 80,176, 58, +128, 36, 0,175, 83,231, 7, 46,194,148, 77, 92, 31, 71,211,102, 56,196,112,100,146,224, 77,194, 3, 8,126,124,120,163,118,127, +235, 43,230,191, 42,252, 12,242,114,255,153,245,216, 88,148,148,216,126,254,248,121,244,241,207,143, 44,204,255, 88,127,236, 89, +204,228,149,255,143, 5,125, 44, 8,126,249,165,160,160,160,163,163, 35,176,232, 4, 22,163,192,134, 60,164,225, 15, 44,187,129, +173,212,131, 7, 15, 50,129, 1, 86,189, 64,149, 87,175, 94,181,177,177,225,227,227, 3,106, 7,138, 0, 75,127, 96, 41,246,233, +211,167,211,167, 79, 3,171, 1,160,105,144,153, 0, 92,224,210,165, 75,199,142, 29,187,127,255, 62, 80, 11,208,118, 9, 9, 9, + 96, 43,216,202,202,138,155,155,240, 86,112,178,245, 2,157, 4,185,249, 7, 89, 16,114, 46, 52,176, 21, 69, 76, 21,194,196,204, +134,204,125, 49,121,178, 68,128, 76,119,247,196,223,191,191,130, 3,135,241, 31,176,244,255, 15,234, 2,252,199, 61,254,118,242, +228,201,138,138, 10, 96,160, 5, 5, 5,201,202,202, 2, 43,218,109,219,182,153,187, 19,218,244,203,200,184,228,206,243,181,183, +159,110,218,184,144,153,153,177, 40, 55, 86, 95, 66,100, 86, 65,253,108, 98,244, 82,163,244,103, 24, 73, 71,129, 2, 1, 64, 0, +145, 48, 4, 68,235,227, 30,245,244,244,112, 73, 65, 6, 19, 7, 79,243, 31,179, 19, 48,176, 67, 55, 36,245, 24,176,206, 25, 12, +206,182, 63,168,107,114,245,220,179,167,159,164, 4, 88, 88,255,253,102, 17,249,199, 98,233,193, 33, 81,251,239,207, 35,134, 43, +241,255,239,126,122,251,141, 77,142,249,219,197, 75,199,248,141,220, 49, 11,113,200,101,247,183,111,223, 6,182, 70,157,157,157, +129, 69, 39,164,200,254,254,253,251,205,155, 55,129,109, 82, 96,241, 4,169, 18,208,244, 66,196,129,197, 46, 80, 10,152,246, 28, + 28, 28,128,109, 88,160, 81,192,154,227,227,199,143,103,206,156, 1, 50,128, 92,200,112, 16,158,246,251,238,221,187, 95,188,120, +161,172,172, 12, 44,190,191,126,253,122,227,198,141,125,251,246, 1,157, 97,100,100,132,191, 32, 6,233,221,179,247,229,199, 95, +124, 42, 22, 18,162,178,191,191,126,124,115,251, 12, 80,132,160, 94,160,239,128, 21, 6,208,205, 64, 19,128, 25, 10, 88,232, 67, + 58, 1,144,241, 28,130,165, 63,176,232,231,228, 20,225,228,146, 88,186,226, 82,116,132, 30,176, 19, 0, 20, 76,154, 55,143, 1, + 52,221,253, 21,170,134, 17,136, 24,255, 50,226,156, 4,216, 6, 6,213,213,213,188,188,160, 90,121,214,172, 89,192,170,235,205, +155, 55,106,106,106, 4,163,123,226,249,219, 19,207,221,218, 56,191,139,133,249, 59,227,223,191, 93, 19,230,249,121, 57, 63, 99, + 98, 33,245,132, 81,146, 74,127,228,226,126,164, 93, 13, 15, 16, 64, 44,196, 23,244,131,121, 42,102, 96,171,129,129, 44, 31,223, +185,144, 90,130, 99,150,254,240,126,192, 32,156, 0,224,251,241,118,219,163, 31,210,239,153, 13,249, 24, 69, 95, 51,168,176,240, + 51, 49, 10,255,255,241,242,235, 75,198,171,143,254,189,248,250,131, 5,216,126,255,119,139, 1,119, 5,192,206,206,126,247,238, + 93,105,105,105, 87, 87, 87, 96,201, 14, 44, 34,223,190,125, 11,108,162, 2,165,128, 69, 60,228,248,163,127, 24,122, 33,218,129, + 10,128,201, 30,216,241, 85, 81, 81,225,231,231,255,242,229,203,249,243,231,129,181, 2,208,204,159, 96,128,167, 85, 4,236, 37, + 60,121,242, 68, 95, 95, 31, 88,127,200,200,200, 0, 43, 0, 81, 81, 81, 96, 55,247,248,241,227, 4, 7,115,128,122, 95,190,251, + 40,164,102,161,100, 27, 46, 32,163,246,243,235,135, 71, 39,183,222,222,187,144,160, 94,200,236, 5,176,115, 35, 46, 46, 14, 44, +112,129,221, 8, 72,209, 15,175, 6,176,222,144, 3,173,246, 88, 56, 4, 4,213, 5,132,212,153,152,128, 85,221,215,185,243,247, + 39, 37, 58, 66,244,166,166,166, 2, 29, 15,209, 11,246, 50,184, 40,192, 54, 13, 0, 12,216,205,155, 55,103,101,101, 73, 74,130, + 14,248,220,187,119, 47,176, 42,226, 4, 3,111,111,239, 99,215,190,227,241,245,178,155,143,123, 79,223,152,211, 81, 46,163, 46, +255,245,203,251,141,219, 79, 95,186,124, 83,224,255, 63,182, 23, 47,189,115,162,143, 94,253,206, 48, 10,168, 13, 0, 2,136, 5, +179, 44,128, 31,114,139,139, 61,168, 0,217, 5, 55,133,122,201, 30,255,161, 86,171, 31,191, 20,158,162,124,104,173, 26,122,253, +230,241,177,231,223,189,185,184, 14, 63,254, 39,101,196,174,248,243,236,251,107, 89,235,187, 46,253,123,240,241,203,175,255, 79, + 63,255,229,100, 97,250,243,241, 5, 63,182,118, 12,188, 14, 0,150,152, 15, 31, 62, 4, 54,192,181,181,181,223,191,127,127,226, +196, 9,200,200, 62,174, 65,124,160, 94, 72, 39, 0,162, 23, 88, 7, 60,126,252, 88, 87, 87, 23, 88,124, 3,235, 15,160, 8, 80, + 28,178, 58, 8,115,248, 8, 14, 30, 61,122, 4, 52,223,216,216, 24, 88,250, 3, 21,243,241,241,153,155,155, 3,173, 6,138, 3, +107, 14,252,190, 6,170,249,199,196, 38,109,224, 2, 44,253,153,152, 89, 57,249, 68,229,204,189, 31,158,216,132, 95, 47,208,157, + 31, 62,124,120,250,244,169,156,156,156,181,181, 53,208, 82,200,200, 79,124,124, 60, 68, 1,176, 14,195, 99, 41, 7,135,176,176, +168,254,175,159, 31,223,188, 61,255,243,231,251,223,191, 65,243,219, 16,189, 47, 95,188,128,235, 5,150,255,184,106,189,231,207, +159, 47, 93,186, 52, 58, 58, 26, 24, 86, 12,224,235,104,128, 93,129,202,202, 74, 96,109, 4, 83,130,115, 57,230,173, 79,223,202, + 15, 94,232, 40, 73,183,245,113,249,250,229,205,170,117, 7,103,206, 93,187,189, 40, 65,233,213,147,206, 79, 47,132,132,132,241, +232, 37, 27,160, 13,245,140,180,179,160,129, 0, 32,128,176,244, 0,144, 71,249,113,177, 7, 57,160,124,141, 38, 49,160,197,180, +133,254, 55,136, 33,151,221,104,149, 1, 53, 14,131, 28,116,224,226,187,239, 31,127,253,187,248,250,207,179, 15,127,196, 79,176, +232,173,186,243,240,193,213,155, 39,127,253, 97, 97,254,245,143,225,199,175,255,239,255,255, 19, 21,252,143,181, 16,135, 47, 0, +133, 44,227,121,249,242,165,188,188, 60,176, 65, 10, 89,220, 9, 36, 25, 97,128,160, 51,224,155, 6, 32,228,224,188, 57, 14, 88, + 57, 1,251, 25, 64,134,162,162, 34,114,197,118,230,204, 25, 32,169,174,174, 14,185,116, 15,215,149, 77,192,208, 2,146,223,191, +189,252,242,249,241,223,191, 63,144,245,110, 98, 96,184,115,231, 14,176, 27, 4,210,251, 31,251,216, 63,176,102,157, 60,121, 50, +176,153,111, 99, 99, 3,228, 30, 61,122,116,195,134, 13,217,217,217, 72,165, 63, 78,240,252,219,207,216,109, 39, 10,194,188, 67, + 98,131,191,253,248,180,126,211,129, 9,211,150, 45,114, 51, 5,150,254,244, 9, 58,248,200,207, 72, 59, 28, 19, 32,128,168,185, + 12,116,160, 86, 16, 13, 20, 24, 12,165, 0,169, 99,247,144,184,192, 26, 35,131,179,103,240,253, 47,223,111,198, 23,103,222,252, +100, 97,100,216,123,239,135,196,234,127, 95, 37,197,238,176,125, 97,121,255,254, 39, 3, 19, 23, 51,168, 72,102, 23,150,192, 85, +100, 67, 86,250,255,253,251,247,207,159, 63,194,194,194, 60, 60, 60,192, 58,224,202,149, 43, 16, 17,180,237, 96,200,122, 33, 43, +253,129,106,190,127,255, 14,228,202,202,202, 2, 91,214,146,146,146, 87,175, 94, 5,182,193,127,253,250, 5, 49, 25,207,184, 40, +176, 25,254,228,201,147,179,103,207,242,242,242, 66,134,128, 78,158, 60,249,229,203, 23,160, 56,176,243,129,223,215, 64, 53, 47, + 47, 94,125,122,126, 15, 59,175, 48,124, 8,232,215,215,247,248,245,194, 29,243,237,219, 55,160,219, 32,189, 19, 72, 39, 0, 34, + 14,172, 3, 62,126,196,185,158, 18,232,215, 63,191,191,112,114, 75,112,112, 10,125,253,242, 28,104, 30,178,222,217,179,103, 67, +244,254, 67, 13,176,183,111,223,110,221,186, 21, 24, 74,192, 14, 86,120,120,184,133,133, 5,164, 43,176,121,243,230,210,210, 82, + 96, 85,132,199,155, 64,189,192, 46,194,142,141,235,247,237, 63,216,148, 18, 22,144, 16,254,237,215,151,251,247, 31,207,156,185, +106,131,175,149,145,152, 32,253,211,219,136,154, 1, 6, 2,128, 0,162,254, 62, 0,250,175, 32,170,174, 62,133, 54,152, 67,252, + 26, 77, 76,189,167,170, 65, 26,205, 90, 91,209,216, 88,251, 25,104,134, 19,175,151,138,189, 1, 82, 11,110, 92, 43, 62, 7,103, + 13,173,162,170,242,234,225,221, 39, 95,255,125,250,255,255,250,251, 95, 75,239,252,255,126,255,217,187, 47,127,228, 57, 25, 25, + 24,255, 62,255,207,192,197,194,224,172,172,242, 31, 91,105, 8, 89,181, 9, 44,172,129,197, 19,176,236,214,209,209, 1,123, 92, +200,204,204,108,205,154, 53,191,192, 0,107, 33, 14, 41,220,127,255,254, 13, 84, 0,172,230,149,149,149, 63,124,248, 0, 44,193, +129,166, 41, 40, 40, 60,124,248, 16, 40, 14,172, 6, 32,202,112,185,220,212,212,244,209,163, 71,192, 10,227,199,143, 31,240, 73, + 96, 96,195,220,210,210, 18, 50, 59,138, 7,128,244, 62,126,242,226,222,133,223, 63,191,241,136,201,253,254,250,233,205,237, 51, +236, 76,255,240,235, 5,246,105,128,205,109, 62, 62,190,139, 23, 47,114,114,114,138,136,136,112,112,112,192, 7,169,206,128,129, +182,182, 54, 46,237,191,126,126,252,248,225,142,144,136,174,128,144, 6,104,227,221,207,247,192, 42, 1, 34,245,236,228,212,103, + 39, 25, 92,193,151, 31,255,251, 15, 59, 17, 2, 28,108,192,210, 31,104, 23, 48,107, 3,189, 9, 41,253, 33, 93,129,152,152, 24, +252,165, 63, 3,104,186,120, 43, 31, 31,175,157,189,249,187,143,239, 2,179,146,190,126,255,248,250,229,187,140,220,230, 78, 19, + 21, 58,151,254,144, 66, 31,210, 15, 24, 81,117, 0, 64, 0,209,105, 35,216,128, 52,150,201, 27,163, 7, 22,217,192,178, 27, 82, +124,147, 90,130, 19,169, 23, 62,116,147,184, 62,142, 96, 95,138,118, 0,110, 11,242,206,128,193,150, 64,165,213,180,116,175,158, +149,127,255,241,205,223,127,159,126,252, 97, 7,150,214, 63,255,200,241,176, 0, 11,167,167, 95, 65, 43,112,188, 85,197,185, 21, +180,190, 96, 27, 15,129,175,248,212,213,213,213,215,215, 7, 22, 76,144, 85, 64,192, 50, 20, 88, 84,173, 95,191, 30,178, 33, 0, + 40,194,136,161, 23,178,219, 11,152,110,213,212,212,128,245,199,235,215,175, 33,235,133,128,166, 1, 69, 94,189,122, 5,209,139, +185,130, 8, 14,128, 85,133,171,171, 43,100, 41, 39,176, 68,134, 47,229, 4,186,132,224,106, 28,144, 94, 23,103,144,222,187, 39, +159,157,223, 13,213,107,237, 68, 80, 47,176,244, 55, 50, 50, 58,122,244, 40, 80,175,180,180, 52,208, 28,110,110,110, 96, 43,126, +210,164, 73,192,174, 15,208,246,190,190, 62, 92,119,196, 3,171,188,143,239,239, 0,139,117,126, 33, 53, 9, 41,203,239,223,223, +124,249,244,176,187,103, 82, 99, 67,149,148, 12,195,242,124, 46,198,176,247,142,113, 12,144, 26, 19,190, 6,232,214,173, 91,206, +206,206, 54, 54, 54, 64,243,129, 61, 15,160,220,148, 41, 83,128, 93, 1, 72,117,139, 31,220,188,121, 43, 36,216, 63, 34,194, 79, + 71, 87,253,237,231,143, 95, 62,190, 73,203,107,110, 14,116,118,254,247,109, 64, 18, 27,176,220, 31,105,171,128, 0, 2,136,202, + 21, 0,217, 43,136, 66, 66, 66,200,219, 9,140, 11, 80,178, 70, 19, 82,142,147,215,126, 39, 70, 47,254,150, 59,173, 11, 98,120, +219, 31,110, 11,242,158,128,193, 6,164, 20,149,127,152,217,254, 57,181,237,193, 71, 6, 30, 70, 86,121, 30,166,167,127, 25,153, +217, 89, 14,189,250,251,227, 31,131, 40, 59,179,178,137,221, 23, 65, 5,108,197, 25,168, 9, 15,108,113, 3,219,161,192, 50,241, +211,167, 79,192,178, 27, 82, 1, 0,219,239,192,126, 0,176,204,218,188,121, 51, 80, 13,176, 16, 71,203, 6, 64, 17,200,182, 97, + 77, 77, 77, 32, 27,162, 23,146,182, 33,253, 6,160,248,187,119,239,190,124,249,130, 63, 97,235,233,233, 1, 75,100,242, 54,115, +145,167, 23,232,108, 41, 41, 41,119,119,119, 96,173, 3,236,112, 0,187, 32,192,218, 78, 64, 64, 0, 88, 21,205,153, 51, 7,215, + 94, 92,164, 81,160,111, 31,222,223,252,241,227,157,128,160, 26, 15,175, 44, 47,159,220,215,207, 79, 59, 58,231, 70, 70,184, 0, + 43, 0, 88,192,254, 71,174, 1,188,188,188,182,109,219,246,228,201, 19, 96,128,248,249,249, 45, 92,184, 16,216,193,210,208,208, + 32,198,143,222,222, 94,235,215,111,254,244,225,237,147,103,207,243,179,227, 74, 43,218, 2,157,172,108,126,126, 98, 96,165, 83, +195,116, 4,206,250,162, 1,128, 0,162,102, 64, 83,184,130,136,140, 82, 30, 2,222,188,153, 91,125,106, 35,214, 1, 31,130,211, +191, 64,189,167,170, 55,162, 53,216,225, 77,120, 32, 3, 79, 57,254,102,238,155, 83, 27,171,201,211, 59, 80, 96, 40,206,196, 40, + 88, 57, 94,250,249,231,245,190,189,172,127,190, 95,250,252,127,207,231, 63,108,140,140,194,255,255, 59, 74, 10,216,187, 57, 11, + 25, 59,224,104,207,130,122, 0,192, 38, 48,176, 60, 2, 54,225,129, 5, 61,176, 24,133, 20,226,144,198,187,168,168,168,181,181, +245,206,157, 59, 49,135,113,128, 34,192,170, 2,216,220, 6,170, 7,182,106, 33,221, 8, 6,216,188, 2,144, 11, 84, 0,236, 85, +156, 56,113, 2,188,187,149, 64, 91, 30, 8,200,244, 56, 89,122,129,117, 0,176,196, 7, 58, 15,216, 3, 0,118,122,128,125, 23, +160,224,211,167, 79, 61, 61, 61,129,205,127,130,218,255,254,253,249,245,203,211, 95,191, 62,114,126,122,192, 39,160,204,197, 35, + 5, 68,187,246,190,100,116, 22,135, 53,230,192, 36, 76,189,149,149, 21, 48, 96,129,165, 63,176, 38, 16, 22, 22,142,139,139, 59, +112,224, 0,145, 78,181,180,180, 98,103,103,231,187,118, 54, 59, 59, 89, 70, 77,181,171, 32,121,193,180,133, 83,152,127, 12, 84, + 74, 27,105,205,127, 32, 0, 8, 32, 42,215,180, 3,178,130, 8,107,161, 70,100,243, 31, 83, 47,218, 56, 62,158,114,156, 18,189, +120,202, 98, 82,203,232, 97,127, 18, 28,176, 68, 51,112,118, 23,150,146,121,125,253, 10,243,195,123, 42,191,159,243, 10,139, 91, +233,106,104, 27,235,124,151,192,185, 63, 8, 88, 82, 3,219,254,192,102, 62,100,176, 30,216, 21, 0, 50, 32,199, 57,192, 71,135, +100,101,101,129,117, 0,102,129,197,201,201,105, 96, 96, 0,172, 3,128,229, 59, 68, 37,124, 81, 13,252, 36, 56,160, 81,134,134, +134,103,207,158, 29,164, 25,155,133, 69, 12, 12,212,213,213,129,254, 5, 86, 99, 64,239, 3, 67,163,186,154,152,124,241,255,247, +175,207,191,127,125,249,254,253, 53, 59,187, 32, 43, 27, 47, 19, 19,203,146,165, 91, 99,162,189,161,181, 32,170,106, 72,199,162, +183,183, 23, 88,209, 2, 25,106,106,106,196, 95, 43,109,100,100,204,108,106,154,212, 0,209,251, 95, 77, 77, 93, 45, 32, 0,232, +120,122,142,249,140,228,163, 32, 0, 2,104,216,222, 7, 64,246,210, 79,228, 34,155,212, 38, 60, 37,122, 71, 1,126, 32,171,169, + 13, 68, 64, 6,252,236, 77,252,251,130, 66, 67, 67, 5, 5, 5, 33, 75,125, 32, 75, 98,224, 43, 62, 33, 19,191,144, 3, 65,149, +149,149,129,130, 71,174,124, 69,214, 59, 97,194,132,213,171, 87, 67, 20,128, 78, 10,194,113, 28, 52,176,229, 75,112, 80,101,144, +212,160, 60, 96, 64, 98,115, 1, 82, 13,124, 6,150,254, 64, 51,128,193, 6,209,139,107,204, 11,114,228, 39,124,245, 17,241, 0, + 24,204,133,133,133,228,233,165, 86, 29, 48, 50, 75,127, 32, 0, 8,160,209, 75,225, 71,193, 40, 24, 5, 24,229, 2, 3, 3,250, +133, 48,163, 87,193,160,130,225,113, 41, 60, 64, 0,141,222, 8, 54, 10, 70,193, 40,192,104,252, 51,140,222, 0, 57, 34, 0, 64, + 0,141, 94, 10, 63, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,104, 5, 48, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,104, 5, + 48, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,232,165,240,163,122, 71,245,142,234, 29, 89,122, 71, 1, 28, 0, 4, 16,202, 36, + 48,214,163,134,137,191,102,100,240,232, 37, 82,251, 64,185,121,240, 0, 60,103, 78,224, 63, 31,145,186, 7,145,210,211,191,195, +126,219,196, 40, 24, 5,196, 3,128, 0, 66, 95, 5,244,127, 21,202, 25, 76,140, 97,239,137, 55, 11,243,116, 73,250,232, 69,115, + 51, 73,206, 30, 40, 55, 67,192,187,215,119, 94,191,126,254,242,205,151,143, 31,127,243,243,179,138,139,240,136,138, 74, 10,137, +170, 16,163,247,220,241,105,247,238,222,186,251,224,199,227,231,255,101, 37, 25,149, 21, 56,148,148,213,140, 44,179,168,149, 50, +224,229, 62,176, 38,240,181,157,137,167,218, 72, 7, 3, 90, 23,172,247,238,221,235,236,236,132,115,203,203,203,233,118, 62, 57, +217,190, 27, 64, 55,143,130, 81, 64, 12, 0, 8,160, 97,178, 12, 20, 94,226, 51, 50, 50,252, 91, 41, 56,248, 29,252,251,215,215, +199,143, 46,255,250,245, 91, 69, 81,192,193, 70, 78,128,159,253,253,135, 31, 79,159,127,185,125,239,249,135,143,111,100,229,116, + 89,217,112, 94,253,250,254,205,173, 99, 7,103, 51, 51,124, 10,247,102,176, 54,102, 80,150,103,184,243,224,255,145, 51,223,183, +237,191,184,117,109,169,149,125,170,160,136, 26,145,206, 32,166, 92, 67,235, 1, 96,118, 26, 32, 7,201,209,180, 14,192,172, 92, + 33, 5, 43, 29,154,243,240, 3,180, 73,181,107, 0,221, 60, 10, 72, 2, 35,121, 35, 24, 64, 0, 13,147, 10, 0,216, 9,128,212, + 1, 67,162,244, 7,130, 39,143, 46,139,139,112,152, 26, 42,130,239, 87, 98,252,247,239, 63, 31, 15, 59,183, 50,155,130, 44,255, +181,155,111,128,178,138, 42, 22,184,244, 2, 75,127, 91,227, 79, 5,137, 12,204,204,160, 10,239,247, 31, 6,110, 46, 6, 77, 21, + 6, 11, 3,134, 45,251, 63, 1,101,189,131,187, 73, 42,164, 40, 63,124, 2, 82, 7,208,186,244,199,188, 12,135,164,114,153,108, + 45,100,244, 3,200,118, 51,154, 70,252,220, 81, 64,197,162, 31, 46, 50,162,234, 0,128, 0, 26, 86,171,128, 24,135,136, 59,223, +189,190,243,251,247,111, 51, 35, 73, 68, 52, 48, 49,178,177, 49,115,114,176,176,178, 50, 41, 43, 10, 2,123, 6, 64, 53,184, 70, +126,128,109,255,194, 36,134, 31, 63, 25,238, 63,102,120,255,145,225,195, 39,134,101,155, 24,114, 27, 24,170,122, 24,172,140, 24, +152,254,127, 2,170, 25, 54,113,138,124,164, 32,214, 74,136,152,115, 6,145, 59, 40,240,254, 10,169, 85, 29,242,144, 23, 73,110, +222,189,123,247,158, 61,123,136,119, 51, 46,159,142, 22,253, 52, 2,192, 18, 31,142, 24, 70,216,145,112, 0, 1, 52, 88,122, 0, + 84,105, 63,254,167,134,189,228, 13,101, 32,223,180, 69, 48,187,190,126,243, 92, 93, 89, 8, 82,238,163, 73,113,176,179,124,248, +248, 83, 77, 89,232,214,189,231, 88, 39, 3,238,221,189, 21, 14, 58,146,139, 97,199, 33,134,169,139, 25,220,108, 25,188, 28, 24, +110,220, 97, 56,127,245, 63, 39, 7,163,161, 54,131,187, 61,195,186,157,183,140, 44,169, 54, 4,132,213,179,148,207,127, 16, 9, +240, 12,155, 64,138,114,160, 2, 98,124,129, 57,102, 69,124,119, 7,217,191,196,180,226,145,221, 12, 44,253,225,231,156,187,184, +184, 16,227,102, 52,183,225,231,142, 2, 10,139,254, 17, 30, 2, 0, 1,132, 94, 1, 96, 78,159, 18, 89,168,225, 42, 76,137,209, + 75,139, 70, 13,145,203, 84,176, 78, 32, 19,169, 23, 77, 25,241,115,209, 47, 95,127,113,180,150,251,255,159,225,240,241,199,223, +190,255, 6,138, 24,233, 75,136, 10,115, 62,126,250,249,206,253,247, 44, 44, 76,170, 74,130, 71, 79,126, 85,215,196,162,247,238, +131, 31,214,198, 12, 63,127, 51,108, 63,200,176,255,248,127, 41,113, 70, 37, 57, 6,103, 27, 6, 13,101, 70, 22,102,208, 57,234, + 22, 6, 12,221, 51,127,224, 31,240, 33,200,192,147, 49,144, 91,208, 67,226,202, 79,172,133, 53, 73, 23,224, 96,109,251, 19,169, + 29, 94,250,175, 94,189, 26, 88, 1,144, 90, 37,143, 54,255, 71, 1, 77, 1, 64, 0, 17, 94, 5, 68,252,186, 32,130,119,204,226, +106,188, 96,173, 39,136,175,120,176,186, 28,207,229,233,184,138,105,248, 4, 50,145,122,177, 42,131,152, 6,108,216,255, 91,133, +115, 54, 2,188,230, 7,116,179,235,227,103,159,190,127, 7, 93,107,165,162, 36, 8,172, 0, 46, 94,125,117,243,246, 59, 14, 14, +102,101, 69,129,247, 31,177, 31, 52,255,248,249,127,101,121,144,249, 30,118, 12, 6, 90,140,236,108, 12,127,254,128,250, 1, 2, +188, 12,247, 30, 49,184,219, 49,200,203,128,212,208, 52,209,192,203,253, 65, 62, 36, 13,119, 30, 90,193,141, 89, 35,146,212, 27, + 32,201,203,161,161,161,192,162,159,129,196,235, 46,112, 93,221,142,231, 74,247, 81, 64, 33, 24,153,247,194, 3, 4,208, 96, 25, + 2,194, 90,152, 18, 89, 16,147,180, 86, 21,187, 9, 84, 90, 59, 4,116, 9, 49, 70,241,243,179,190,255,240, 67, 68,136, 43,212, + 79,227,207,223,127,236,236,204,204, 76, 76,255,255,255,247,113, 83,246,118, 85, 6,154,240,246,253,119,160, 26,172,122,101, 37, + 25,239, 62,252,175,161,204,224,100, 9, 26,242,186,113,135, 65, 79,131, 65,144,143,193,211,129,225,223, 63, 6, 96, 39,224,214, +125,144, 26,252,129, 76,144, 65,234,198, 25, 58, 44, 3, 69,179,130, 24, 27, 49,111, 94,195,197, 38,222,118,146,186, 14,112,149, +192,200,117,117,117, 37, 82, 35,242,202,209,209, 58, 96,180,244,167, 41, 0, 8,160,225,176, 10,136, 96,207,131, 32,248,255,159, +129, 41,252, 61,229,117, 0,100, 49, 18, 83,216,123, 60,205,127, 32, 16, 23,225,121,252,244, 51,176, 2,232,155,126,218,206, 74, +214, 72, 79,156,145,149, 17,178, 28, 8,114,165, 38, 80, 22,168, 6,171, 94,101, 5,142,163,103,191, 3, 43, 0, 17, 99,134,138, + 76,134,252, 4, 6,126, 94,208,200, 79,227, 36,134,134,124,144,130,163,103, 65,106, 72,106, 35,147, 61,231, 65,135,173, 0,192, +194, 14, 88,228, 65,172,187,119,239, 30,100, 29, 61,100, 18, 21, 34, 72,176, 52,196, 90,100, 83,178,124,136,160, 70, 52, 55, 67, + 70,126,136,116, 51,188,244,199, 83, 13,140,214, 1,163,165, 63,181, 0, 64, 0,141, 30, 7, 13, 5,212, 90, 63, 10,173, 3,240, + 86, 39,162,162,146,119,238, 63,211,215, 22,171,200,183, 88,176,252, 50, 39, 7,139,129,142, 24,252, 58,229,127,255,254,223,185, +255, 94, 92, 76, 10,171, 94, 37,101,181,173,251, 46, 38, 4, 51,252,191,199, 96, 17,196,160, 36,203,176,116, 35, 76, 46,159,225, +239, 95,134,173,251, 64,106,232, 48,174, 66,246,180, 42, 73, 0,121,231, 20, 90, 5,128,169,128,200, 14, 4, 73, 78, 37, 99,220, +159, 18, 55, 67, 42, 15, 92,149, 4, 30,169, 81, 48, 90,250,147, 1, 0, 2,104,244, 48, 56,106, 2,208, 16, 16, 17,163, 64, 66, +162, 42,236,236,108, 39,207, 62, 3,150,245,158, 46, 74,151,174,190,106,237, 59,222,210,123, 12, 82,250, 3,197,129,178,184,246, + 3, 27, 89,102,253,101,224,235,159, 7, 42,235,103,180, 48, 44, 90,199,224,104,193, 96,168,197,112, 96, 57, 72, 4, 36,206,192, + 71,252,126,224,153, 96, 64, 70,195,159,110,171,128,144,203, 77,200, 96, 58, 50,131,129,184,101,160, 16, 7, 35, 55,228, 73, 26, +247,199,213,215,164,145,155,241,151,239,163,165,255,104,233, 79, 69, 0, 16, 64,163, 21, 0,168,205,254,127,149, 32, 21,141, 34, +166, 51, 33, 43,167,251,250,221,207,181, 91,110, 62,123,241,197,219, 77,185,178,208, 34, 35,209,224,252,229,151, 64, 17,160, 56, + 80, 22,143, 94, 43,251,212,195,103,249, 66,179, 25,206, 94, 97,152,221,206, 80,149,205,144, 30,197, 48,119, 21, 3, 80, 4, 40, + 14,148, 37,169, 64, 39,190,236,198, 53, 94, 68,211, 85, 64,248, 7,196,137, 81,128, 86,124,147,225, 78, 82, 53, 82,238,102, 92, +165,252,104,233, 79, 11, 48,146, 23,131, 2, 4, 16,225,101,160,196, 79,177, 18,179, 12,148,120,189,196,107,167,196, 94,172,190, + 35,207, 94,146,230,162, 89,217,184,149, 84, 44,222,189,190,115,239,193,243,227,103,158,192,207, 2, 18, 23,147, 34,120, 22,144, +160,136,154,119,112,247,185,227,211, 86,110,189,213, 54,149, 86,103, 1, 17,108, 14,211,161,244,103,160,227,186, 97, 50,156, 49, +200,221, 60, 10, 72,237, 7,140,192, 42, 1, 32,128, 88,168,149, 70,169,174,151,212, 53,218,131,193,205,164, 2, 96, 89, 15, 68, +234,100,233, 5,150,245, 68,238,246, 26, 45,215, 70, 75,225, 81, 48, 10,176, 2,128, 0, 26,189, 20,126, 20,140,130, 81, 48, 10, + 72, 6,195,227, 82,120,128, 0, 26,157, 3, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, + 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2, +104,244, 82,120,234,232,197,115, 70, 24, 77,245,222, 3,131,213,171, 87,147,161,247,254,253,251,119,239,222, 5,234,157, 53,107, + 22, 3,248,188,154,209,248, 29,213, 59, 18,244,142, 2, 56, 0, 8, 32,156, 71, 65, 16,121, 10, 38,213,245, 82, 29,164,133,126, +100, 96, 99,155,181,148, 19,143, 26,180,187, 91, 73,114, 51, 92, 47,214,155, 70,136,212,123,165,143, 79,167,232, 19,233, 55,173, +255,215,251, 62,229,255,175,191, 64, 22,176, 16, 79, 75, 75, 35, 37, 96,254,155, 50,175,248,253,251, 19, 39, 39,231,170, 85,171, + 18, 18, 18,254,254,253,251,235,215,175,127,255,254, 81, 61, 10,200,184,125,101,192,245, 14, 44, 96,100,100,100, 2, 3,200, 1, + 33,192,120, 97,102,102, 6, 70, 13,114, 37, 61, 10, 70, 1,229, 0, 32,128, 88,112,229, 88,172, 73, 13,126, 94, 13,254,172, 78, +158, 94, 98, 90,196,100,131,221,187,119, 51,112,104,226, 41,133,177, 94,216, 77,204,221, 79,144,203, 61,128, 42,209,110,125, 34, + 82,239,255, 11,181,140, 6,205,139, 14,130, 14,127, 6,178,161, 97,101, 64,248, 78, 34,222,107, 69,192, 96, 94,126, 20,164,209, +211,144, 85, 91,250, 42,164, 33, 79, 76, 53, 32, 39,116,242,254,229,151, 71,158,203,127,229,225,246,112,248, 32, 45,202,120,240, +192,238, 79,159,127,120,121,121,253,252,249,147, 22,165, 12, 77, 27, 13,120,244, 18,244, 11,241,201,146, 84, 0,140,223,174,174, +174,210,210, 82,101,101,101,146, 52, 2,203,122, 22, 48, 96, 6,157, 18,203, 4, 76, 36, 64, 67,128,213,243, 31, 48, 0, 50,104, +228,224,173, 91,183,226, 15, 28, 96,242, 32,104,200,182,109,219, 72, 82, 63, 10, 6, 22, 0, 4, 16, 11, 73,165,191,177,177,241, +217,179,103, 9,102, 66,172,153, 10,143, 94, 52,115,128,101, 49,100, 88,131,236, 3, 38,211,124,103, 49,112,170,205, 90,229, 0, +106, 26,175,230, 7,149,254,132, 74,112,204,227, 89, 32, 46,193,211, 51,128,235,101, 0, 31,251,238, 2, 6, 36,233,133,148,248, + 16,178,179,145, 1, 94,250,151,249,115,116,109,252,129,199,131,252, 55,139,181,229,152,191,254,248, 95,228,195,113,226,246,159, +239, 63,255,127,255,205,224, 40,125,245,202,163,191, 4,187, 2,143, 47,245,159,125,205,205,199,205, 40, 46, 38, 46, 38,173,242, +240,201, 79,117,181, 63,236,204,175, 54,111,121,179,124,249,242,160,160,160,209, 92, 65, 21, 0,140, 95, 95, 95, 95, 96, 29,128, +150,134,141,140,140, 26, 27, 27,129, 82,216, 51, 36, 11, 11, 27, 12, 60,126,252, 88, 85, 85, 21, 88, 13,240,242,242,222,185,115, +135,135,135,231,244,233,211,199,143, 31,207,206,206,198,153,242,193, 81, 15,207,191,240,156, 8, 17, 1,114, 33,173, 4,172, 96, +211,166, 77,152, 90,224, 34, 64, 46, 49, 5,250,198,141, 27, 73, 82, 79, 21,240,226,197, 11, 9, 9, 9, 10, 13,129,236, 7, 30, +105,251,162, 0, 2,136,133,164,210, 31,191, 89,196, 28,114, 75, 76,233,223,209,209, 81, 81, 81, 1, 23, 33,190, 14, 72, 51,158, +197, 32,172, 54,107,151, 3,188,213,239,234,234, 10,100, 64, 72,204,113, 64,228, 18, 28,171, 75,240,159, 52, 9,241, 20,188,230, + 67, 62,237,139, 72,189, 88, 91,250,192,210, 31,223,192,205,255,255, 34,183,139, 85,165,152, 57,217, 24, 21, 68,153, 94,127,250, +255,231, 47,243,155,207,255, 63,126,251,127,247,229, 63, 96,214, 19,249,119, 9,126, 2, 37,150,230,240,235, 53, 42,114, 74,175, + 95,191, 84,144, 17,213,213, 86, 98,225, 17, 84,146,249,240,253,239,199,231,207,255, 62,125,255,131,243,231,189,187,119,245,137, + 60, 95,147,138, 35, 66,228,221,210, 78,188, 94,204, 22, 9,173,199, 82,128, 81, 0,180, 84, 75, 75,107,243,230,205,200,209, 1, +204, 68,120, 74,127, 32, 96,101,101,229,224,224,120,243,230,141,154,154,154,161,161, 33,176, 62,152, 52,105, 18,176,213,175,171, +171,187,110,221, 58, 96, 5,112,233,210, 37, 96,149,128,171, 31,224,239,239, 15,241, 47,174, 92,140,167, 80, 6,150,221,144,144, +193,218,128, 3,138,191,124,249,146,152, 10,128, 36,245,144,226,123,255,254,253, 88,165, 28, 29, 29,137, 41,217,129,218,165,164, +164,212,213,213,201,168, 6, 70,212, 13,192,152, 0, 32,128, 88, 48,115, 23,174,246, 59,125, 28, 4,204, 45,192,210,159,248, 19, +190,176,143,246, 48,164, 1,201,213,179,204, 24,216,190,227, 25,253, 71, 43,193,209, 42, 51, 98,202, 65,120,233,179,103,207, 30, +228,230, 63, 49,122,151,230,241, 96, 94, 99, 28, 61,233, 43,126, 93,192,124,197,193,198,200,204,196,192,197,206,240,225,219,255, + 95,127,255,115,115, 48, 2,155,255,223,127,253,151, 22,100,250,247,143,225,214,243,191, 64,199, 96,237, 4,124,126,113,146,159, +149,155,149,245,127,106,168,217,223, 63,255, 95,188,255,245,232,254, 71, 38,134,199, 2, 2, 63, 95,189,124,192,198,252,241,218, +131, 15, 79,127,236, 33,113, 46,129,210, 17, 33,146, 14,164, 99, 64,189,250, 13,243,254, 78, 92,224,221, 59,196,117,140, 66, 66, +123,112, 21,145, 84,108,254,251,248,248, 64,146,193,213,171, 87, 33, 12, 72,219, 31, 40,142, 71, 35, 59, 59,251,215,175, 95, 53, + 53, 53,129,101, 95,113,113,113,114,114, 50, 80,240,247,239,223, 11, 22, 44, 0,118,160,207,157, 59,183,114,229,202,239,223,191, +227,154,170,241,246,246, 38,219,205,115,231,206,197, 95,137, 18,211,162,135, 27, 66,164,122, 32, 0,150,218,192,226,251,217,179, +103,104,226, 64, 65,226, 11,244,103, 96, 64,118, 53, 48, 98, 1, 64, 0,177, 16,211,138,167,164, 56, 38, 21, 32,183,163,137,106, +245,207, 74,103,144,100,152,229, 11, 42, 80,102,157, 77,131,143,246,128, 91,253, 31,145,251, 1,248, 75, 34,228,102, 26,145, 37, + 56, 49,109, 85, 32,137,187, 83,137,179, 0,130,140,255, 96,234, 5,150, 89,175, 15, 20, 73,200, 49,127,249, 14, 42,190,128, 53, +245,183, 95,255,191,255, 98,248,253, 7,100,212,159,127,255,255,129, 11,181,203, 23,207,130, 71,180,216,208,140,253,240,242, 42, +155,168,160,168,128,192,135,247,223, 63,124,124,127,226,234,203,167,239,255,115,113,125, 83,150,255,242,253,203, 27, 61,213,223, + 90, 10, 63,103, 45, 63,123,231,206, 29, 6, 6,142,209,188, 65, 97,243, 31, 8,128,205,127, 96,113,191,101,203, 22,109,109,237, +208,208, 80,130,165, 63,164, 2,120,253,250, 53, 23, 23,151,157,157, 93, 79, 79, 15,176, 67, 0, 76, 6, 11, 23, 46, 4,150,254, + 39, 78,156,216,187,119,239,229,203,151, 69, 68, 68,254,252,249,131,103, 20, 8,215, 16,208,236,217,179,241, 88, 77,149, 33, 32, +160, 33,100, 12, 1, 1, 75,109,204, 10, 0, 40, 72,106,200,147, 81, 13,192,179,216,200,236, 10, 0, 4,208,224,186, 16, 6,243, + 94, 17, 34, 7, 7, 64,237,253,138,251, 12,204,108,105,110, 10, 12, 2, 10,179, 86,129, 4,241,143,254, 83,101, 16, 3, 50,241, +139,245,178,111,200,172, 0,217, 39,149, 46,205,227,198,236, 13,240, 94, 43,190,255,243,255,139, 15,255, 24, 25,153,184,127,128, +186,234,127,254,254,255,241,155,225,199, 47,208, 53,241, 63,193,140,223,127, 96, 45, 80,212,202,131,231,106,209,211,103,114, 10, +114, 60, 76, 28,204,111,191,127,223,123,250,201,173,199, 79,223,190,251, 98,162,247,247,231,183, 63, 63,126,253,253,254,227,223, +195,199, 12,223,190, 51,116,119,119,143,158, 16, 69,121,243, 95, 75, 75, 11,216,140, 0, 86, 6,192, 10, 0,210, 9, 32, 88,250, + 67,134,128, 12, 12, 12, 56, 56, 56,128,133,126, 82, 82, 82,123,123, 59,176, 36, 61,121,242,228,193,131, 7, 47, 93,186,244,241, +227, 71, 85, 85,213, 79,159, 62, 49, 49,225,220,193, 19, 16, 16,128,217,185,129,244,120,240,247, 15, 6,106, 8, 8,107, 39,128, +164,230,255,104,111,128,108, 0, 16, 64,131,162, 2, 64, 30,112,199,122,239, 54,158,193,122,220,163, 64,160, 78, 0,120, 20,136, +109,214, 82, 90,213, 85,192, 34, 30, 82, 7, 96,237,202,224,234,205, 96, 45,220,137, 25, 11,138,155,242, 85, 74,136, 41,202,134, + 13, 88,214,243,113, 49, 50, 51,130,242,249,175,191,255,129,220,175, 63,255,127,253,241, 31,216, 33,248,251,143, 1,235,194, 22, +160, 94, 3,245,123,170, 42,239,118, 28,124,245,238,227, 15, 11,189, 79,102,252, 95, 88,217,126,126,251,241,239,201,115,160, 94, +198,191,127, 25, 69,132, 24, 25, 24,255,141,230, 10,170, 0, 72,122, 70,238, 74, 2,107, 2,228,162, 25,235, 76, 0,176,100, 47, + 43, 43, 99, 97, 97, 89,180,104,209,252,249,243, 19, 19, 19, 59, 58, 58,128, 37,242,131, 7, 15,190,127,255, 14,204, 38,192,182, +127, 70, 70, 6,158,197, 75,100, 79,189, 14,212, 16, 16,214, 78, 0, 25,205,255, 81, 64, 6, 0, 8,160,193,210, 3, 64, 30,182, +198, 44,232,113, 21,178,200, 96,214,217, 52, 88,209,127,123,245,164,251,224, 85, 64,136,250, 0,207, 40, 16, 37,157, 0,228,161, +127,100, 71, 2,217,192, 30, 0,100,127, 22,230,228, 51,193,210, 31,178, 10, 8, 83, 47,176,112,255,246, 19, 88,220,255,255,240, + 21,216,240,255,207, 10,142,189, 63,127, 65, 13,127, 96,209,255,246,243,255,215,159,254,159,127,240, 7, 88,200, 0,109,255,142, +106, 38, 80,239,227,231,191,238,220,121,127,236,220,123, 96, 35,239,198,157,127,145,126,127, 88,254,255,127,241,138, 97,215, 97, +134,207,223,254,255,251,199,224,100,193,200,201,206,224,229,237,255,151,198,209, 77,201, 13, 98, 36,221,187, 0, 7, 66, 66,123, +232,150,152,209, 18, 48,144,107,100,100,116,238,220,185,205,155, 55, 35,139,227,154, 10,238,237,237, 21, 16, 16,128, 52,162,231, +205,155, 7,236, 7, 0,107, 2, 72,205, 1,148,250,240,225, 3,176, 7,240,237,219, 55, 60, 14, 72, 77, 77, 69, 30,186,129, 52, +255,241,143,255, 12,236, 16, 16, 90, 39,128,146,230, 63, 68,251,104,219,159, 72, 0, 16, 64,131,165, 2, 56,123,246, 44,174,181, + 43, 64,113, 2,235, 71,217,185, 87, 43, 28, 98,248,115,150, 65,145, 59,173, 85,113,214, 1, 96, 71,123, 22,172, 50,112, 37,126, + 20, 8,121, 37, 40,254, 75,251, 32, 57, 28,210, 3, 64,171, 6, 32,109,127, 8, 23,107, 15, 0,174,151,188,146,229,246,237,219, +143,142, 78,250,255,255, 31,227, 55, 6, 54, 22,240, 46,161, 63,255,255,254, 7,149,224,192,126, 0,176, 50, 0, 34,191,128, 16, +160, 3,208, 42, 15,136,222, 7, 71, 39,106, 43,252, 59,116,254, 47, 19, 19,195,139,215,140,156, 28, 12, 59, 15, 51,124,251,198, +248,255, 31,131,145, 22,235,163,103,255,236,157,188,221,221,221,183, 29,123, 78,207,129, 62, 90,235,197, 53,172, 65, 31, 0, 89, +249,227,227,227, 3,137,122, 72,119, 22,216,204,199,170,248,223,191,127,231,207,159,183,181,181,133,139, 0,235, 0, 72, 89,252, +251,247,239,191,127,255, 2, 35, 81, 84, 84, 20,255,126,189,128,128, 0, 50,218,239, 3, 56, 4,132,214, 9, 32,187,249, 63, 90, +244,147, 10, 0, 2,136,180, 10, 0, 88, 16,211, 98,219, 36,164,177, 12,204, 21,144,113,115,180,182, 63,164, 24, 5, 74,145, 50, +254,131, 54, 27, 76,184,232, 71,171,123, 32, 92,200,216, 20,193,190, 11,188, 26, 96, 64,154, 15, 32, 70, 47, 46, 0,108,254,227, +210,171,162,162, 50,111,198,111,103, 29, 86, 96, 1,240,251,207, 63, 14, 86, 96,227,142,225,243,143,255, 63,255,128, 6,127,206, +222,253,251,231,223,127, 92, 59,143,128,122, 23,205,254, 99,111,192, 28,229, 3,154, 70,254,248,153,225,243, 87, 70, 21,249,255, +127,254, 0,115, 60,199,219, 15,255,158,190,248,229, 31,170,197,204,204, 76,231, 54, 50, 73, 53, 34,121,122, 7,106, 15, 45,176, +244,111,104,104, 64,110,236,119,117,117, 1,185,184,226,232,215,175, 95,192, 34,236,199,143, 31,192, 88,224,226,226, 2,138,172, + 93,187, 54, 56, 56,248,251,247,239, 64,193,159, 63,127,242,240,240, 0,171, 1,252,222, 33,111, 45,208,192, 14, 1,193, 59, 1, + 16,198,104,209, 79, 31, 0, 16, 64, 36, 84, 0, 20,150,254,120,180, 3, 11, 77, 72, 41, 15, 25, 55,135, 47, 57, 69,110,248, 99, +157,104,133, 2,102, 70, 6, 54, 38, 6, 78,102, 6, 30, 22,134,159,159, 87,183,179, 50,112,158, 74, 11, 81,100,224, 20,154,181, +152,168,134, 63,214,158, 7, 49, 91, 1,144, 75,127,228,249, 0, 98,244,226, 47,253,113,233, 5,230,171,246,222, 25,133,185, 25, +156,236,192,214, 34,131,142, 28, 51,176,240, 6,150, 6,144,162,255,239,127,230,160,160, 32, 60,122,155,187,102, 20, 23,100, 0, +171, 10, 80,191,225, 47, 3,176,165,231,229,200,240,241, 51,227,133,171,223,127,252,102,242,243, 11,162,245, 38,128, 17, 5, 48, +247,124,129, 86,118,129, 1, 46, 45,192, 10, 0, 88,214, 3,211,164,190,190,254,159, 63,127, 88, 89, 89,129,109,106, 96, 35, 6, + 88,250,127,251,246, 13,216,252, 23, 20, 20,196,179, 12, 20, 14,224, 3,170,196, 12,254, 12,134, 33, 32,120, 39,128,140,112, 38, +114,187,192, 40,192, 4, 0, 1, 68,108, 5, 64,163,182, 63,214,174, 61,230,128, 15,217, 86, 19, 28,253,167,164,244,103, 64,157, +233,133,215, 97, 12,196,109, 35,192, 53, 19, 64,140,222,254,201, 51,128, 46, 4,102,180, 35, 55,254, 64,214,131,130,179, 28,176, +159, 20,132,175,166, 4,131,142,238,201,121,121, 57, 16, 93, 64,242,208,105,134,175,223, 64,229,137,159,159,183,155,155,219,104, +150,160, 34, 64, 43,253, 51, 50, 50, 32, 69,255,230,205,155,129,165, 36,214,106, 0, 88, 1, 48, 49, 49, 1,219,179,159, 63,127, + 62,115,230,140,161,161, 33,176, 26,248,248,241,227,197,139, 23, 21, 21, 21,133,133,133,129,165, 63, 80,132, 96,135, 6,178, 35, +140,164, 14,193,128, 15, 1,145,215,246, 39, 91,215, 40, 0, 2,128, 0, 66,175, 0,112, 45,249, 39,166, 8,198,191, 93,128,160, + 9,144,243, 24,208, 12, 33, 88, 26,206, 74,155, 9, 26,237,185,197, 0, 66, 8,240, 17,140,238,147,237,102, 98, 74, 97,228, 99, +127,224, 35,251,164, 94,101, 12,212,178, 52,143, 27, 82, 31,144,122, 67, 47, 60,184, 32,179,190, 74, 96, 64, 80, 35,176, 81, 57, +121,242,212, 43, 87,174, 76,159, 62, 29,200,253,252, 5, 84, 64, 40, 43, 43, 3, 27, 95,180, 27, 40,167,100,214,151,162, 25,227, +129, 27,250,103, 64,157,230, 5, 70, 22,176, 76,220,178,101, 11,166, 20, 90, 5, 0, 84, 6,172,144,129, 12, 57, 57,185, 15, 31, + 62,212,214,214, 2, 43, 0,105,105,233, 47, 95,190, 0, 5, 33, 51, 1, 4,173, 38, 99, 20,232,197,139, 23,148,123,153, 42,134, +140, 2,186, 1,128, 0, 26, 20,151,194,195, 1,176,252, 34,195, 28,178, 87,248, 80,177, 79, 67, 73, 33, 69,112, 81, 16,158,224, + 34,106,136, 12, 51,214, 89, 88,244,245,245,225, 92, 96, 83, 20,178,113,137,118,221,187, 33,167,151, 66, 0, 63,206, 19,126,162, +167,166,166,230,188,121,243,254,129, 1,158,246, 59,164,117, 15, 84, 3, 44,232, 33,135,193, 49,128,103,134,233,112, 24,220, 40, + 24,129, 0, 32,128, 70, 47,133, 31, 5,163, 96, 20,140, 2,146,193,240,184, 20, 30, 32,128, 70,111, 4, 27, 5,163, 96, 20,140, +130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, + 2,104,180, 2, 24, 5,163, 96, 20,140,130, 17, 10, 0, 2, 8,203,165,240,104, 7, 35, 99, 61, 48,121, 24, 95, 42,141,188, 20, + 21,238,247,209, 11,184, 71,195,138, 18,189,184,214, 7,211, 90,239,112, 13,103,146, 52, 50,140, 94, 10,143, 27, 0, 4, 16,213, +206, 2, 34,229,228, 3, 54, 76,189,112, 54,218,105,160,104, 82, 52, 10, 5,248,181,192,176,101,245,208,251,243,232, 16, 1,183, +110,221,234,237,237,133,176,139,138,138, 6,255, 33,136,104, 97,117,253,250,117, 6,240, 26, 71,154, 90, 10, 76, 6,254, 1,233, + 27, 55,204, 68, 75, 6,219,182,159, 3, 10,226, 74, 24, 64, 93, 87,174, 92,209,211,213,249,247,159, 1,194, 0, 10, 94,186,140, + 34, 2,100, 16,147,174, 32,233,144,188, 20, 8,217, 31,142,118, 96, 20,241, 30,103, 32,241, 94,188, 81, 0, 1, 55,111,222, 28, + 61, 82,148, 32, 0, 8, 32,106, 30, 6, 71,228, 41, 2, 87,159, 98,169,141,209,202, 92,228,237,136,248,139, 99, 34, 23,224,227, +201, 63, 16, 19, 32, 37, 26,230, 2,109,136, 44,214,197,178,200, 86, 75, 43,202, 2,201,151, 63,126,252,249,254, 19,196,255,240, +137, 1,118, 37, 0,126,135,193, 75,127, 32,232,235,235, 35,230, 2,116, 38, 70, 6, 96,177, 5, 33,129, 0, 43, 99,250, 12,154, +148, 23,200, 97, 5, 41,250,137, 15, 43,178,139, 48, 72,233,239,229,105, 4,100, 2,139,123,146,140,130, 20,250, 64,160,163,163, + 3, 23,129,132, 30, 92,132,214,245, 37,124,139, 56,145, 59,245,208,194, 19,146, 23, 72,242, 53,166, 98,226,181,147,161,151,146, +218,145, 70,213, 27,176,244,239,239,239,159, 49, 99,198,104, 17,143, 31, 0, 4, 16,149, 79, 3, 37,175,153,131, 82, 19,144,161, +133,208,182,120, 60,109,121,248, 45,196, 64, 54,132, 68,147, 37,234, 32, 73, 1,190, 75,247, 86,112, 50,200,252,101, 56,250,106, +206,185,139,119,223, 6,117,204,167, 93,156,161,181, 97,129, 34,104,237,220,127,120,195, 3,255,141,143,120, 46, 13,135,132, 85, + 66, 66, 2,144, 13, 33,209, 75, 1,200,225, 18,216, 52, 58, 59,111, 79, 79,247, 36, 59,159, 3, 75,127,176,179,103,109,220,128, + 34, 14,233, 19,224, 1, 53, 53,245, 79,159,191,249,254,237,131,137,137,201,165, 75, 87, 22, 45,156,139, 38,178, 96,193, 92,154, +102, 48,228,173,230, 36,221,105, 1, 47,253,201,168, 3, 48,149, 17,111, 47, 25,122, 33,135, 57,226,113, 30,193, 98, 1,171, 94, +178, 11, 19, 72,233,255,239,223, 63, 96, 98, 94,186,116,105,116,116, 52,126,245,200,119,129,141,180,125, 81, 0, 1,196,132,220, + 84,129, 0, 34,217,120, 26, 59, 4,187,195, 88,203,104, 72, 57,203,136, 81,100, 19,179, 73,117, 22,110, 16, 22, 22,134, 39,217, + 1,211, 46,102,185, 95, 81, 81, 1,180, 17, 88,216, 17,172, 90, 64, 13,127, 1,190,117, 25,193,194,140,214,207,231, 76,230,121, +251,129,214,165, 63, 90,171, 22, 88,214, 3, 17,114,171,246, 31,101,167, 94,226,234, 81, 65,194, 10,179,220, 95,176, 96,129,166, +166,166,167,181, 33,136,195,203, 77, 35, 47,111,219,126, 14, 24,149, 64,146, 84,141,143,159, 60,127,248,224,238,245, 27,215,251, +250,122, 53, 52, 84,128,129,131, 38, 66,235, 12, 54,115, 38,116,132, 10,206, 32,181,244, 71,110,229, 16,217,223, 37,251, 30, 58, +242,244, 2,139,105,200, 97,189, 64,149,123,192, 0, 45,203,227, 47, 22,224,122, 49,117,145,177,193, 30, 94,250, 23, 23, 23, 3, + 75,255, 35, 71,142, 16, 95,250, 51,140,188,139, 33, 1, 2,136, 5,115, 0, 7,237,124, 52,172,226, 88,135,113, 32, 21, 3,230, + 49,106,200, 26,129,145,138, 89,199, 98, 94,160, 65, 70,203,133, 60,176,106,213, 42,180,162, 31,210,100,131,119, 11,128, 34,120, +180, 63,185,247,232,235,250, 58,158,164,137,192,154, 64, 92,152,243,222,250,123,160,210, 95,128, 15, 52, 4,196, 74,212,161,202, +192,100, 10, 31, 5, 2,178,137,209, 2, 44,197,228,184, 25,166,196, 48,164, 44, 96, 16,229, 98,184,254, 1, 93,228, 42, 17, 55, +166, 96,214,169, 4,107,187,166,166, 38,180,162, 31, 18, 86, 93, 9, 62,147,119,156,144, 80,146,124,241,240, 37,174,230, 63,144, +129,167, 19, 64,176,109, 11,110,233,167,163,181,247, 33,245, 1,126,141,156,156,172, 46, 46,206,255, 25, 88, 23, 46,152, 15, 57, +100, 16, 83,132,188,162,144,118, 41, 19,121,228, 7, 57,106, 8,246, 3, 32, 82,240,105, 3, 92,178,120,162,128, 60,189, 12,176, +147, 72,102,206, 4,166,188,247,233,233,130,196,151,254,112,189,144,226, 30,126,234, 59, 68, 23,169,129, 12, 44,253,251,250,250, + 32, 39,112,216,218,218, 30, 62,124,152,200,153,188,180,114, 80,102,159,213, 89, 49,210,134,128, 0, 2,136,154, 67, 64,192, 56, +131,140, 14,163, 85, 33,112, 46,254, 91, 86,112, 77, 5, 19, 76, 7,120,218,248,196, 3,120, 66,129, 23,253,200,221,118, 92,171, + 8,190, 51, 60,250, 18,104,254,159,183,132,193,165,246, 11,195,114,134, 57,160, 34,233,255,234, 18,214,184,201,127,254, 16,117, +183,162,154,154, 26,169,169,252,213, 60,134,198, 25, 12,178, 50, 12, 47,183,176, 45,156,251, 43, 97, 5, 22, 17,202,199,205,240, + 0,248,148,239,243, 13, 29,188,218, 28, 60,170, 5,171, 58, 82,244,117, 36,212,125, 90,240,132, 21,158,120,199, 63, 64, 4, 73, + 12,240,210, 31,200,133,204,253, 18, 99,120, 86, 86, 38,218,112, 25,166, 8, 45, 0,158, 75, 76,241, 31, 52,139,214,246, 71, 27, +129,196, 95, 7,192,187, 26,120,198,241,241, 4, 50, 92,239,255, 85,130, 40, 89, 35,236, 61,126,189,120, 58,250, 68,150,227,200, +245, 7, 3,236,250, 54, 82,243, 69,102,102, 38, 3,248,220,164,146,146,146, 9, 19, 38, 64, 74,127,200,137,135,248,155,255,144, +210, 31,194, 0,214, 1, 64,193,145, 51, 16, 4, 16, 64, 84,158, 3, 0, 38,107,200,128, 32,242, 69,137,144, 68, 64,204,112, 30, +230, 84, 48, 3, 17,171,113, 8, 54, 49, 8, 2, 72, 51, 31,173,232, 39,216,252, 7,130, 29,149, 13,190,237,125,127, 92,172,129, +225,200,115,252,206,238,187,111,129,130,127, 92,114,127, 95, 22, 97, 20,205, 34,163,187, 77, 76,162,127, 27,176, 60, 55,241,241, +173,140,178,175,123,127, 73,136, 96, 23, 33,163, 7, 64,100,173, 0,108,248,131,178,138,175,221,137,103,175,120,245,121,159,238, +188,203,192,193, 30,156, 27, 39, 36,227, 67,187,100,138,185,242,135,152,224, 2,202, 30, 61,122, 20, 50, 31,142,135, 65,140,165, + 36,205,115, 18,108,246, 98,189,251, 8,107,122,192,179,246, 97, 16, 22, 82,200,109,127,112,105, 14,204,155,100,118,149,200,104, +251, 3, 83,239,159, 63,127, 32, 92, 27, 27, 27, 96, 5,128,191,244, 31, 5, 64, 0, 16, 64, 44, 4, 71,250,176,138,227, 73,124, +144,166, 13,100, 2, 7, 50, 43, 0,233, 22, 0,197,241,247, 0, 40, 47, 26,200, 6,144,117,141,152,147, 1, 4,103,237,130,102, +172,253,239,167,248,210,210, 72,152,193,154, 51,120,242,159,231,175, 25, 4,248, 88,222, 46,223, 50,225, 44, 3, 17,247,106,145, +119,193,225,197,162, 72, 19, 3, 6,165,220, 43,218, 60,137, 55,229, 67, 25,166,148, 97,138,208,174, 7, 0, 12, 19, 91, 83,117, + 23,107, 53, 95,221,178,222, 9,211,175,157,125,154,225,100,242, 98,227,182,143,239, 63,145, 17, 23,104, 3, 68,184,210, 21,214, + 38, 63, 49, 43,166,168,181, 12,148,212, 1, 28,252,108, 6,216, 77, 18, 88,135, 67,225, 42,113,197, 17, 37,119,106,210, 14, 32, + 95,136, 4, 7,196, 95,228, 71,161, 46,200,104, 30, 11, 11, 75, 97, 97,225,153, 51,103, 8, 14,253,143, 2, 8, 0, 8, 32, 22, +204,236, 68,198, 70, 48,228,104, 67,238, 4, 64, 74,124,160, 8,124,217, 56,230,101,229,120,218, 59,196,140,223, 81,190, 12, 20, +210,204,199, 58, 21, 76,208,216,187,221,105,172,193,147,191, 63,187,197,114,124,242,239,181,185,140, 94, 61,155,178, 66, 30,110, +186,239,219,181, 8,152, 24,105, 20,103,101,171, 25,118,118,173,215,126,232,206,240,230,107,169,107, 25, 86, 17, 50,122, 0,196, + 55,255, 55,174,111, 96,150,214,226, 97, 80,123,116,112,214,103,198,255,167,110, 61,118,185,242, 20,111,200, 63,130, 13,214,205, +132,151,248, 64,176,119,175, 39,154, 44,214,116,133,107,192,135,152, 85, 49,244, 95, 6, 10,116, 18,188, 7,128,121, 99, 4, 60, +197, 66,122, 0,152,247, 54, 19,111,203,224,220,220, 4,105,248, 3,187, 2,200,189, 1,226, 59, 16,192,112, 35,163,244, 95,186, +116,233,161, 67,135,254,175, 18,100, 12,123,223,223,223, 15, 76,201, 76, 76, 76,163,107, 64,137, 1, 0, 1, 68,147,125, 0,144, + 43, 30, 33,217, 0,179, 86,192,149,112,241, 76, 5, 83,216,152,197, 95,145, 64,154,255,104, 69, 63,164,186, 34,232,134,139,119, +223,254,190,220,248,146,225,168,132, 87, 15,195,199, 79,119,103,149, 40,103,246,191,152, 95,194,192,202,194,192, 68,171, 99, 54, + 30,125,101,208, 20, 11,196, 47, 66,163, 30, 0, 48, 88,194, 93,204,249,255, 9,126, 99, 96, 93,219,159, 59,109,203,133, 82, 15, +155,132,190,101, 33,109,139,105, 52, 41, 10, 41, 46, 97,251, 0, 72,171,245, 25, 6,104, 25, 40, 48,145, 3, 19, 60,158,251,145, +136,191, 46, 20,109, 2, 96, 8,149, 44,164,174,224,132, 79, 5,147,170,119,217,178,165, 7, 14, 28, 96, 92, 35, 12,100,239,170, +225,117,107,249,108,103,103, 71,112,233,231, 40,128, 0,128, 0,162,213, 70, 48, 72,113,143, 44, 72,100,138, 71,203,219, 68, 22, + 43,120, 86,175,227, 90,120,138,181,249, 79,124,209, 15, 29, 2,234,152,191,142,129,193,163,221,251,255,234, 18,198,176, 94, 96, +125,192, 40, 36,120,231,201, 39, 80,243,159,102, 87,171, 99,174,250, 39,105, 31, 0,158, 74, 17,127, 17, 3,105,254,167, 56,232, + 21,244, 76,172,172, 42, 23,229, 19,187,122,237, 81,194,181,101,116,216,164,138, 92,250, 35,143,129, 16,236, 4, 60,126,242,252, +241,227, 71,111,223,189, 58,116,232, 96, 78, 78, 54,100, 25, 40,178, 8,141, 70, 26,241, 92,109, 68,114,112,185,128, 23,170,237, + 9, 35, 38,239, 80,101, 21, 16,176, 29, 77,146, 94,204, 86, 60,252, 90,111, 90, 3,232,148, 53,164,244,191,244,103,254,254, 95, + 64,198,104,233, 79, 60, 0, 8, 32, 68, 5,128, 60, 64, 79, 4,155,141,152,202, 0, 57,185, 64, 58, 1, 36, 53, 78,233,112, 24, + 3,188,249,143,188, 0, 20,232, 77,120,181, 65,176, 49, 2,169, 3, 2,219,231,253, 95,203, 32,146, 48,243, 64, 65,136, 77,231, + 82, 6, 86, 86,110, 14, 54, 26,185, 25, 62,118,129,198, 32,105, 88,131,140,230, 36,164,249, 95, 48,107,115, 85,178,155,148,132, + 3,124,208,143,248,176,130,149,221,158,206,206,219, 97,227, 63, 36,148,188,200,251, 0,224, 39, 67,224, 7,148, 44, 3,165, 98, + 15,134,129,226,237,178,196,215, 82,148,175, 2, 34, 85, 47,102, 43,158,164, 13,207,148,132,237,191,149,130,192,114, 31,212, 58, +217,255,107,197, 49,208,109,154,163,103,102,144, 4, 0, 2,136,154,251, 0,208, 42, 0,204,226,158, 70,201,130,242,101,160,144, +154, 6,114,203, 46,188,146, 35,126,227, 62,104,237, 63,108,243,151,125, 21,116,228,241, 43, 45, 51, 57,229,158, 37, 15, 0,155, +255,174,123, 78, 70,215, 47,130,140,116, 35,199, 44, 29,242, 60,114, 63,128,200, 77, 97, 20, 46, 3,197, 53,214, 68,124, 44,192, +103,191, 32,108,250,228,106, 58,239, 4, 30, 88,224,222,242,153,108,167,250,196,212,110, 89,210, 60,171,179, 2,121, 31,192,136, +218, 12, 12, 16, 64,212, 28, 2,194,204, 45, 88, 23,195, 17, 12, 95, 82, 75, 40, 10,151,129, 66,150,250, 32,239, 96, 36,178, 56, +131,244, 21,168, 27, 98,116, 56,246,139, 18,243, 93,107,102,147, 23, 86,152,157, 0,226,157,129,171,172, 7,118, 2,224,178,104, + 99, 68,112,139, 40, 89, 6, 74, 21, 0,159,253, 2,146,196, 7, 20, 74, 22,128, 13,254, 16,159, 47,232,124, 22,208, 0, 38, 78, +166,240,247,192, 96,241,243, 79, 67, 75, 42, 88,211, 3, 30, 48, 2,183,128, 65, 0, 64, 0,177,208, 63,230,240,175, 94, 32, 53, + 5, 80,126,105, 56,217,197, 25,229,205,222, 1,106, 91,253,135,157,184, 65,191,176,162,196,227,164,102,230, 65,213,223, 98,128, +173,137, 32,126, 98,147,114, 75, 7,182, 7, 64,223,218,130,156,196,140,217, 9, 32,190,121, 58,204, 0, 64, 0,141, 94, 10, 63, + 10, 70,193, 40, 24, 5, 36,131,225,113, 41, 60, 64, 0,141,222, 8, 54, 10, 70,193, 40, 24, 5, 35, 20, 0, 4,208,104, 5, 48, + 10, 70,193, 40, 24, 5, 35, 20, 0, 4, 24, 0, 37, 61, 34,224,253,165,111, 35, 0, 0, 0, 0, 73, 69, 78, 68,174, 66, 96,130, }; diff --git a/source/blender/src/butspace.c b/source/blender/src/butspace.c index 8a3ef7bb29c..443c8a88452 100644 --- a/source/blender/src/butspace.c +++ b/source/blender/src/butspace.c @@ -326,30 +326,30 @@ void do_butspace(unsigned short event) else if(event>REDRAWVIEW3D) allqueue(event, 0); } -void butspace_context_switch(SpaceButs *buts, Base *new) +static void butspace_context_switch(SpaceButs *buts, Object *new) { // change type automatically if(new) { int tab= buts->tab[CONTEXT_SHADING]; if(tab == TAB_SHADING_WORLD) { - if(new->object->type==OB_LAMP) { + if(new->type==OB_LAMP) { buts->tab[CONTEXT_SHADING]= TAB_SHADING_LAMP; } else buts->tab[CONTEXT_SHADING]= TAB_SHADING_MAT; } else if(tab == TAB_SHADING_TEX) { - if(new->object->type==OB_LAMP) buts->texfrom= 2; - else if(new->object->type==OB_CAMERA) buts->texfrom= 1; + if(new->type==OB_LAMP) buts->texfrom= 2; + else if(new->type==OB_CAMERA) buts->texfrom= 1; else buts->texfrom= 0; } else if(tab == TAB_SHADING_RAD) { } - else if(new->object->type==OB_CAMERA) { + else if(new->type==OB_CAMERA) { buts->tab[CONTEXT_SHADING]= TAB_SHADING_WORLD; } - else if(new->object->type==OB_LAMP) { + else if(new->type==OB_LAMP) { buts->tab[CONTEXT_SHADING]= TAB_SHADING_LAMP; } else { @@ -359,7 +359,7 @@ void butspace_context_switch(SpaceButs *buts, Base *new) } /* new active object */ -void redraw_test_buttons(Base *new) +void redraw_test_buttons(Object *new) { ScrArea *sa; SpaceButs *buts; diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index c2c738b836f..65da10808dd 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -440,11 +440,13 @@ void do_common_editbuts(unsigned short event) // old name, is a mix of object an new_material_to_objectdata((G.scene->basact) ? (G.scene->basact->object) : 0); scrarea_queue_winredraw(curarea); allqueue(REDRAWVIEW3D_Z, 0); + allqueue(REDRAWOOPS, 0); break; case B_MATDEL: delete_material_index(); scrarea_queue_winredraw(curarea); allqueue(REDRAWVIEW3D_Z, 0); + allqueue(REDRAWOOPS, 0); break; case B_MATASS: if(G.obedit && G.obedit->actcol>0) { diff --git a/source/blender/src/buttons_shading.c b/source/blender/src/buttons_shading.c index be1434eb27d..3903354f59b 100644 --- a/source/blender/src/buttons_shading.c +++ b/source/blender/src/buttons_shading.c @@ -2376,11 +2376,13 @@ void do_matbuts(unsigned short event) scrarea_queue_headredraw(curarea); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); break; case B_MATFROM: scrarea_queue_headredraw(curarea); allqueue(REDRAWBUTSSHADING, 0); + allqueue(REDRAWOOPS, 0); // BIF_previewdraw(); push/pop! break; case B_MATPRV: diff --git a/source/blender/src/drawipo.c b/source/blender/src/drawipo.c index 6dc8faa18a5..d7fb1195974 100644 --- a/source/blender/src/drawipo.c +++ b/source/blender/src/drawipo.c @@ -378,6 +378,10 @@ void test_view2d(View2D *v2d, int winx, int winy) rctf *cur, *tot; float dx, dy, temp, fac, zoom; + /* correct winx for scroll */ + if(v2d->scroll & L_SCROLL) winx-= SCROLLB; + if(v2d->scroll & B_SCROLL) winy-= SCROLLH; + cur= &v2d->cur; tot= &v2d->tot; @@ -689,7 +693,8 @@ void drawscroll(int disptype) val= ipogrid_startx; while(fac < hor.xmax) { - if(curarea->spacetype==SPACE_SEQ) { + if(curarea->spacetype==SPACE_OOPS); + else if(curarea->spacetype==SPACE_SEQ) { fac2= val/(float)G.scene->r.frs_sec; tim= floor(fac2); fac2= fac2-tim; @@ -748,7 +753,8 @@ void drawscroll(int disptype) dfac= (ipogrid_dy)/(G.v2d->cur.ymax-G.v2d->cur.ymin); dfac= dfac*(vert.ymax-vert.ymin-SCROLLH); - if(curarea->spacetype==SPACE_SEQ) { + if(curarea->spacetype==SPACE_OOPS); + else if(curarea->spacetype==SPACE_SEQ) { BIF_ThemeColor(TH_TEXT); val= ipogrid_starty; fac+= 0.5*dfac; @@ -1917,8 +1923,9 @@ int view2dmove(unsigned short event) else mousebut = L_MOUSE; if ( (G.qual & LR_CTRLKEY) || (event==WHEELUPMOUSE) || (event==WHEELDOWNMOUSE) ) { - /* patch for buttonswin, standard scroll no zoom */ - if(curarea->spacetype==SPACE_BUTS && (G.qual & LR_CTRLKEY)==0); + /* patch for oops & buttonswin, standard scroll no zoom */ + if(curarea->spacetype==SPACE_OOPS); + else if(curarea->spacetype==SPACE_BUTS && (G.qual & LR_CTRLKEY)==0); else if (view2dzoom(event)) { curarea->head_swap= 0; return 0; @@ -1958,6 +1965,8 @@ int view2dmove(unsigned short event) facy= (G.v2d->cur.ymax-G.v2d->cur.ymin)/(float)(curarea->winy); } + /* no x move in outliner */ + if(curarea->spacetype==SPACE_OOPS && G.v2d->scroll) facx= 0.0; /* no y move in audio */ if(curarea->spacetype==SPACE_SOUND) facy= 0.0; @@ -1978,7 +1987,6 @@ int view2dmove(unsigned short event) if(event==WHEELDOWNMOUSE) { facx= -facx; facy= -facy; } - switch (G.qual & (LR_CTRLKEY|LR_SHIFTKEY|LR_ALTKEY)) { case (LR_SHIFTKEY): dx = 0.0; @@ -1989,7 +1997,11 @@ int view2dmove(unsigned short event) dy = 0.0; break; default: - if(curarea->spacetype==SPACE_BUTS) { + if(curarea->spacetype==SPACE_OOPS) { + dx= 0.0; + dy= facy*20; + } + else if(curarea->spacetype==SPACE_BUTS) { if(G.buts->align==BUT_HORIZONTAL) { dx= facx*30; dy= 0.0; } else { diff --git a/source/blender/src/drawobject.c b/source/blender/src/drawobject.c index c4a0dc92f56..b3d20c11a8a 100644 --- a/source/blender/src/drawobject.c +++ b/source/blender/src/drawobject.c @@ -4269,7 +4269,7 @@ void draw_object(Base *base) if(ob->hooks.first && ob!=G.obedit) draw_hooks(ob); /* help lines and so */ - if(ob->parent && (ob->parent->lay & G.vd->lay)) { + if(ob!=G.obedit && ob->parent && (ob->parent->lay & G.vd->lay)) { setlinestyle(3); glBegin(GL_LINES); glVertex3fv(ob->obmat[3]); diff --git a/source/blender/src/drawoops.c b/source/blender/src/drawoops.c index dacbf86b60a..e2792737e76 100644 --- a/source/blender/src/drawoops.c +++ b/source/blender/src/drawoops.c @@ -58,13 +58,13 @@ #include "BKE_utildefines.h" #include "BKE_global.h" -#include "BIF_gl.h" #include "BIF_interface.h" +#include "BIF_gl.h" #include "BIF_glutil.h" -#include "BIF_resources.h" -#include "BIF_screen.h" #include "BIF_mywindow.h" +#include "BIF_outliner.h" #include "BIF_resources.h" +#include "BIF_screen.h" /* #include "BIF_drawoops.h" bad name :(*/ #include "BIF_oops.h" @@ -388,6 +388,7 @@ void draw_oops(Oops *oops) void drawoopsspace(ScrArea *sa, void *spacedata) { + SpaceOops *soops= spacedata; Oops *oops; float col[3]; int ofsx, ofsy; @@ -395,57 +396,60 @@ void drawoopsspace(ScrArea *sa, void *spacedata) BIF_GetThemeColor3fv(TH_BACK, col); glClearColor(col[0], col[1], col[2], 0.0); glClear(GL_COLOR_BUFFER_BIT); - if(G.soops==0) return; - - boundbox_oops(); - calc_scrollrcts(G.v2d, curarea->winx, curarea->winy); + if(soops==0) return; + + if(soops->type==SO_OUTLINER) draw_outliner(sa, soops); + else { + boundbox_oops(); + calc_scrollrcts(G.v2d, curarea->winx, curarea->winy); - if(curarea->winx>SCROLLB+10 && curarea->winy>SCROLLH+10) { - if(G.v2d->scroll) { - ofsx= curarea->winrct.xmin; /* because of mywin */ - ofsy= curarea->winrct.ymin; + if(curarea->winx>SCROLLB+10 && curarea->winy>SCROLLH+10) { + if(G.v2d->scroll) { + ofsx= curarea->winrct.xmin; /* because of mywin */ + ofsy= curarea->winrct.ymin; - glViewport(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); - glScissor(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); + glViewport(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); + glScissor(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); + } } - } - myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax); + myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax); - oopscalex= .14*((float)curarea->winx)/(G.v2d->cur.xmax-G.v2d->cur.xmin); - calc_ipogrid(); /* for scrollvariables */ - build_oops(); + oopscalex= .14*((float)curarea->winx)/(G.v2d->cur.xmax-G.v2d->cur.xmin); + calc_ipogrid(); /* for scrollvariables */ + build_oops(); - oops= G.soops->oops.first; - while(oops) { - if(oops->hide==0) { - draw_oopslink(oops); + oops= soops->oops.first; + while(oops) { + if(oops->hide==0) { + draw_oopslink(oops); + } + oops= oops->next; } - oops= oops->next; - } - oops= G.soops->oops.first; - while(oops) { - if(oops->hide==0) { - if(oops->flag & SELECT); else draw_oops(oops); + oops= soops->oops.first; + while(oops) { + if(oops->hide==0) { + if(oops->flag & SELECT); else draw_oops(oops); + } + oops= oops->next; } - oops= oops->next; - } - oops= G.soops->oops.first; - while(oops) { - if(oops->hide==0) { - if(oops->flag & SELECT) draw_oops(oops); + oops= soops->oops.first; + while(oops) { + if(oops->hide==0) { + if(oops->flag & SELECT) draw_oops(oops); + } + oops= oops->next; } - oops= oops->next; } /* restore viewport */ mywinset(curarea->win); - /* ortho at pixel level curarea */ myortho2(-0.375, sa->winx-0.375, -0.375, sa->winy-0.375); - if(G.v2d->scroll) { - drawscroll(0); + + if(sa->winx>SCROLLB+10 && sa->winy>SCROLLH+10) { + if(G.v2d->scroll) drawscroll(0); } draw_area_emboss(sa); diff --git a/source/blender/src/drawview.c b/source/blender/src/drawview.c index 1c1e83932a1..afdb700c928 100644 --- a/source/blender/src/drawview.c +++ b/source/blender/src/drawview.c @@ -831,13 +831,28 @@ static void drawviewborder(void) float x1, x2, y1, y2; float x3, y3, x4, y4; rcti viewborder; - + calc_viewborder(G.vd, &viewborder); x1= viewborder.xmin; y1= viewborder.ymin; x2= viewborder.xmax; y2= viewborder.ymax; + /* passepartout, in color of backdrop minus 50 */ + glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ); + glEnable(GL_BLEND); + glColor4ub(0, 0, 0, 50); + + if (x1 > 0.0) { + glRectf(0.0, (float)curarea->winy, x1, 0.0); + glRectf(x2, (float)curarea->winy, (float)curarea->winx, 0.0); + } + if (y1 > 0.0) { + glRectf(x1, (float)curarea->winy, x2, y2); + glRectf(x1, y1, x2, 0.0); + } + glDisable(GL_BLEND); + /* edge */ setlinestyle(3); cpack(0); diff --git a/source/blender/src/editaction.c b/source/blender/src/editaction.c index bcff58ae471..8a4bc9d7206 100644 --- a/source/blender/src/editaction.c +++ b/source/blender/src/editaction.c @@ -759,7 +759,7 @@ void borderselect_mesh(Key *key) } } - +/* used by ipo, outliner, buttons to find the active channel */ bActionChannel* get_hilighted_action_channel(bAction* action) { bActionChannel *chan; @@ -1601,7 +1601,8 @@ static void hilight_channel (bAction *act, bActionChannel *chan, short select) * = SELECT_INVERT */ -static int select_channel(bAction *act, bActionChannel *chan, +/* exported for outliner (ton) */ +int select_channel(bAction *act, bActionChannel *chan, int selectmode) { /* Select the channel based on the selection mode */ diff --git a/source/blender/src/editnla.c b/source/blender/src/editnla.c index 52fb920dbab..f0e725837f3 100644 --- a/source/blender/src/editnla.c +++ b/source/blender/src/editnla.c @@ -680,43 +680,6 @@ static void mouse_nlachannels(short mval[2]) } -void init_nlaspace(ScrArea *sa) -{ - SpaceNla *snla; - - snla= MEM_callocN(sizeof(SpaceNla), "initnlaspace"); - BLI_addhead(&sa->spacedata, snla); - - snla->spacetype= SPACE_NLA; - snla->blockscale= 0.7; - - snla->v2d.tot.xmin= 1.0; - snla->v2d.tot.ymin= 0.0; - snla->v2d.tot.xmax= 1000.0; - snla->v2d.tot.ymax= 1000.0; - - snla->v2d.cur.xmin= -5.0; - snla->v2d.cur.ymin= 0.0; - snla->v2d.cur.xmax= 65.0; - snla->v2d.cur.ymax= 1000.0; - - snla->v2d.min[0]= 0.0; - snla->v2d.min[1]= 0.0; - - snla->v2d.max[0]= 1000.0; - snla->v2d.max[1]= 1000.0; - - snla->v2d.minzoom= 0.1F; - snla->v2d.maxzoom= 50; - - snla->v2d.scroll= R_SCROLL+B_SCROLL; - snla->v2d.keepaspect= 0; - snla->v2d.keepzoom= V2D_LOCKZOOM_Y; - snla->v2d.keeptot= 0; - - snla->lock = 0; -} - void deselect_nlachannel_keys (int test) { Base *base; diff --git a/source/blender/src/editobject.c b/source/blender/src/editobject.c index 7617660ec15..c7a4896708c 100644 --- a/source/blender/src/editobject.c +++ b/source/blender/src/editobject.c @@ -202,7 +202,7 @@ void add_object_draw(int type) /* for toolbox */ allqueue(REDRAWVIEW3D, 0); } - redraw_test_buttons(BASACT); + redraw_test_buttons(OBACT); allqueue(REDRAWALL, 0); @@ -266,7 +266,7 @@ void delete_obj(int ok) test_scene_constraints(); allqueue(REDRAWVIEW3D, 0); - redraw_test_buttons(BASACT); + redraw_test_buttons(OBACT); allqueue (REDRAWACTION, 0); allqueue(REDRAWIPO, 0); allqueue(REDRAWDATASELECT, 0); @@ -1437,12 +1437,13 @@ void enter_editmode(void) make_editNurb(); } allqueue(REDRAWBUTSEDIT, 0); + allqueue(REDRAWOOPS, 0); countall(); if(ok) { setcursor_space(SPACE_VIEW3D, CURSOR_EDIT); - allqueue(REDRAWVIEW3D, 0); + allqueue(REDRAWVIEW3D, 1); } else G.obedit= 0; @@ -1542,9 +1543,10 @@ void exit_editmode(int freedata) /* freedata==0 at render, 1= freedata, 2= do un setcursor_space(SPACE_VIEW3D, CURSOR_STD); countall(); - allqueue(REDRAWVIEW3D, 0); + allqueue(REDRAWVIEW3D, 1); allqueue(REDRAWBUTSEDIT, 0); allqueue(REDRAWBUTSLOGIC, 0); + allqueue(REDRAWOOPS, 0); } scrarea_queue_headredraw(curarea); diff --git a/source/blender/src/editscreen.c b/source/blender/src/editscreen.c index 4fcba658015..346fdf658a6 100644 --- a/source/blender/src/editscreen.c +++ b/source/blender/src/editscreen.c @@ -1948,8 +1948,7 @@ void setscreen(bScreen *sc) /* patch for old files */ if(soops->v2d.cur.xmin==soops->v2d.cur.xmax) { - extern void init_v2d_oops(View2D*); - init_v2d_oops(&soops->v2d); + init_v2d_oops(sa, soops); } } else if(sl->spacetype==SPACE_BUTS) { diff --git a/source/blender/src/editview.c b/source/blender/src/editview.c index 888ca07d566..e76cd7f84b8 100644 --- a/source/blender/src/editview.c +++ b/source/blender/src/editview.c @@ -269,7 +269,6 @@ static void do_lasso_select_objects(short mcords[][2], short moves, short select } } } - allqueue(REDRAWVIEW3D, 0); } static void lasso_select_boundbox(rcti *rect, short mcords[][2], short moves) @@ -382,8 +381,6 @@ static void do_lasso_select_mesh(short mcords[][2], short moves, short select) EM_free_backbuf_border(); EM_selectmode_flush(); - allqueue(REDRAWVIEW3D, 0); - } static void do_lasso_select(short mcords[][2], short moves, short select) @@ -396,6 +393,8 @@ static void do_lasso_select(short mcords[][2], short moves, short select) BIF_undo_push("Lasso select"); + allqueue(REDRAWVIEW3D, 0); + countall(); } /* un-draws and draws again */ @@ -825,7 +824,7 @@ void set_active_base(Base *base) BASACT= base; /* signals to buttons */ - redraw_test_buttons(base); + redraw_test_buttons(base->object); set_active_group(); diff --git a/source/blender/src/header_info.c b/source/blender/src/header_info.c index f267a19f428..aaba982616f 100644 --- a/source/blender/src/header_info.c +++ b/source/blender/src/header_info.c @@ -430,8 +430,7 @@ void do_info_buttons(unsigned short event) case B_INFOSCE: /* menu select scene */ if( G.obedit) { - error("Unable to perform function in EditMode"); - return; + exit_editmode(2); } if( G.curscreen->scenenr== -2) { if(curarea->winy <50) { diff --git a/source/blender/src/header_oops.c b/source/blender/src/header_oops.c index 7a3a0894258..73a293cc4b6 100644 --- a/source/blender/src/header_oops.c +++ b/source/blender/src/header_oops.c @@ -58,14 +58,17 @@ #include "DNA_screen_types.h" #include "DNA_space_types.h" +#include "BKE_global.h" +#include "BKE_main.h" + #include "BIF_gl.h" #include "BIF_interface.h" #include "BIF_resources.h" #include "BIF_screen.h" #include "BIF_editoops.h" #include "BIF_oops.h" -#include "BKE_global.h" -#include "BKE_main.h" +#include "BIF_space.h" + #include "BSE_drawipo.h" #include "BSE_drawoops.h" #include "BSE_headerbuttons.h" @@ -118,25 +121,45 @@ static void do_oops_viewmenu(void *arg, int event) case 3: /* Maximize Window */ /* using event B_FULL */ break; + case 4: /* show outliner */ + { + SpaceOops *soops= curarea->spacedata.first; + if(soops->type==SO_OOPS) soops->type= SO_OUTLINER; + else soops->type= SO_OOPS; + init_v2d_oops(curarea, soops); + scrarea_queue_winredraw(curarea); + } + break; } } static uiBlock *oops_viewmenu(void *arg_unused) { -/* static short tog=0; */ + SpaceOops *soops= curarea->spacedata.first; uiBlock *block; short yco= 0, menuwidth=120; block= uiNewBlock(&curarea->uiblocks, "oops_viewmenu", UI_EMBOSSP, UI_HELV, curarea->headwin); uiBlockSetButmFunc(block, do_oops_viewmenu, NULL); - - uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Shuffle Selected Blocks|Shift S", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 0, ""); - uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Shrink Selected Blocks|Alt S", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 1, ""); + + if(soops->type==SO_OOPS) { + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Show Outliner", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 4, ""); + + uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); - uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Shuffle Selected Blocks|Shift S", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 0, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Shrink Selected Blocks|Alt S", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 1, ""); - uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "View All|Home", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 2, ""); + uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "View All|Home", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 2, ""); + } + else { + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Show Oops Schematic", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 4, ""); + uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + } + if(!curarea->full) uiDefIconTextBut(block, BUTM, B_FULL, ICON_BLANK1, "Maximize Window|Ctrl UpArrow", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 3, ""); else uiDefIconTextBut(block, BUTM, B_FULL, ICON_BLANK1, "Tile Window|Ctrl DownArrow", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 3, ""); @@ -282,66 +305,70 @@ void oops_buttons(void) xco+=XIC; if((curarea->flag & HEADER_NO_PULLDOWN)==0) { - /* pull down menus */ + /* pull down menus */ uiBlockSetEmboss(block, UI_EMBOSSP); xmax= GetButStringLength("View"); uiDefPulldownBut(block, oops_viewmenu, NULL, "View", xco, -2, xmax-3, 24, ""); xco+= xmax; - xmax= GetButStringLength("Select"); - uiDefPulldownBut(block, oops_selectmenu, NULL, "Select", xco, -2, xmax-3, 24, ""); - xco+= xmax; - - xmax= GetButStringLength("Block"); - uiDefPulldownBut(block, oops_blockmenu, NULL, "Block", xco, -2, xmax-3, 24, ""); - xco+= xmax; - + if(soops->type==SO_OOPS) { + xmax= GetButStringLength("Select"); + uiDefPulldownBut(block, oops_selectmenu, NULL, "Select", xco, -2, xmax-3, 24, ""); + xco+= xmax; + + xmax= GetButStringLength("Block"); + uiDefPulldownBut(block, oops_blockmenu, NULL, "Block", xco, -2, xmax-3, 24, ""); + xco+= xmax; + } } uiBlockSetEmboss(block, UI_EMBOSSX); - xco+= 8; - - /* ZOOM and BORDER */ - uiBlockBeginAlign(block); - uiDefIconButI(block, TOG, B_VIEW2DZOOM, ICON_VIEWZOOM, (short)(xco),0,XIC,YIC, &viewmovetemp, 0, 0, 0, 0, "Zooms view (Ctrl MiddleMouse)"); - uiDefIconBut(block, BUT, B_IPOBORDER, ICON_BORDERMOVE, (short)(xco+=XIC),0,XIC,YIC, 0, 0, 0, 0, 0, "Zooms view to area"); - uiBlockEndAlign(block); - - xco+= 8; - - /* VISIBLE */ - uiBlockBeginAlign(block); - uiDefButS(block, TOG|BIT|10,B_NEWOOPS, "Layer", (short)(xco+=XIC),0,XIC+20,YIC, &soops->visiflag, 0, 0, 0, 0, "Only show object datablocks on visible layers"); - xco+= 20; - uiDefIconButS(block, TOG|BIT|0, B_NEWOOPS, ICON_SCENE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Scene datablocks"); - uiDefIconButS(block, TOG|BIT|1, B_NEWOOPS, ICON_OBJECT_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Object datablocks"); - uiDefIconButS(block, TOG|BIT|2, B_NEWOOPS, ICON_MESH_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Mesh datablocks"); - uiDefIconButS(block, TOG|BIT|3, B_NEWOOPS, ICON_CURVE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Curve/Surface/Font datablocks"); - uiDefIconButS(block, TOG|BIT|4, B_NEWOOPS, ICON_MBALL_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Metaball datablocks"); - uiDefIconButS(block, TOG|BIT|5, B_NEWOOPS, ICON_LATTICE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Lattice datablocks"); - uiDefIconButS(block, TOG|BIT|6, B_NEWOOPS, ICON_LAMP_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Lamp datablocks"); - uiDefIconButS(block, TOG|BIT|7, B_NEWOOPS, ICON_MATERIAL_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Material datablocks"); - uiDefIconButS(block, TOG|BIT|8, B_NEWOOPS, ICON_TEXTURE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Texture datablocks"); - uiDefIconButS(block, TOG|BIT|9, B_NEWOOPS, ICON_IPO_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Ipo datablocks"); - uiDefIconButS(block, TOG|BIT|12, B_NEWOOPS, ICON_IMAGE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Image datablocks"); - uiDefIconButS(block, TOG|BIT|11, B_NEWOOPS, ICON_LIBRARY_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Library datablocks"); - - uiBlockEndAlign(block); - - /* name */ - if(G.soops->lockpoin) { - oops= G.soops->lockpoin; - if(oops->type==ID_LI) strcpy(naam, ((Library *)oops->id)->name); - else strcpy(naam, oops->id->name); + if(soops->type==SO_OOPS) { + /* ZOOM and BORDER */ + uiBlockBeginAlign(block); + uiDefIconButI(block, TOG, B_VIEW2DZOOM, ICON_VIEWZOOM, (short)(xco),0,XIC,YIC, &viewmovetemp, 0, 0, 0, 0, "Zooms view (Ctrl MiddleMouse)"); + uiDefIconBut(block, BUT, B_IPOBORDER, ICON_BORDERMOVE, (short)(xco+=XIC),0,XIC,YIC, 0, 0, 0, 0, 0, "Zooms view to area"); + uiBlockEndAlign(block); - cpack(0x0); - glRasterPos2i(xco+=XIC+10, 5); - BMF_DrawString(uiBlockGetCurFont(block), naam); - + xco+= 8; + + /* VISIBLE */ + uiBlockBeginAlign(block); + uiDefButS(block, TOG|BIT|10,B_NEWOOPS, "Layer", (short)(xco+=XIC),0,XIC+20,YIC, &soops->visiflag, 0, 0, 0, 0, "Only show object datablocks on visible layers"); + xco+= 20; + uiDefIconButS(block, TOG|BIT|0, B_NEWOOPS, ICON_SCENE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Scene datablocks"); + uiDefIconButS(block, TOG|BIT|1, B_NEWOOPS, ICON_OBJECT_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Object datablocks"); + uiDefIconButS(block, TOG|BIT|2, B_NEWOOPS, ICON_MESH_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Mesh datablocks"); + uiDefIconButS(block, TOG|BIT|3, B_NEWOOPS, ICON_CURVE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Curve/Surface/Font datablocks"); + uiDefIconButS(block, TOG|BIT|4, B_NEWOOPS, ICON_MBALL_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Metaball datablocks"); + uiDefIconButS(block, TOG|BIT|5, B_NEWOOPS, ICON_LATTICE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Lattice datablocks"); + uiDefIconButS(block, TOG|BIT|6, B_NEWOOPS, ICON_LAMP_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Lamp datablocks"); + uiDefIconButS(block, TOG|BIT|7, B_NEWOOPS, ICON_MATERIAL_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Material datablocks"); + uiDefIconButS(block, TOG|BIT|8, B_NEWOOPS, ICON_TEXTURE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Texture datablocks"); + uiDefIconButS(block, TOG|BIT|9, B_NEWOOPS, ICON_IPO_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Ipo datablocks"); + uiDefIconButS(block, TOG|BIT|12, B_NEWOOPS, ICON_IMAGE_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Image datablocks"); + uiDefIconButS(block, TOG|BIT|11, B_NEWOOPS, ICON_LIBRARY_HLT, (short)(xco+=XIC),0,XIC,YIC, &soops->visiflag, 0, 0, 0, 0, "Displays Library datablocks"); + + uiBlockEndAlign(block); + + /* name */ + if(G.soops->lockpoin) { + oops= G.soops->lockpoin; + if(oops->type==ID_LI) strcpy(naam, ((Library *)oops->id)->name); + else strcpy(naam, oops->id->name); + + cpack(0x0); + glRasterPos2i(xco+=XIC+10, 5); + BMF_DrawString(uiBlockGetCurFont(block), naam); + + } } - + else { + uiDefButS(block, MENU, B_REDR, "Outliner Display%t|All Scenes %x0|Current Scene %x1|Visible Layers %x2|Selected %x3|Active %x4", xco, 0, 100, 20, &soops->outlinevis, 0, 0, 0, 0, ""); + } + /* always do as last */ curarea->headbutlen= xco+2*XIC; diff --git a/source/blender/src/headerbuttons.c b/source/blender/src/headerbuttons.c index 96aa97f0a22..27cff208dbc 100644 --- a/source/blender/src/headerbuttons.c +++ b/source/blender/src/headerbuttons.c @@ -797,7 +797,6 @@ void do_global_buttons(unsigned short event) if(idtest!=id) { assign_material(ob, (Material *)idtest, ob->actcol); - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); BIF_preview_changed(G.buts); @@ -813,9 +812,9 @@ void do_global_buttons(unsigned short event) ma= give_current_material(ob, ob->actcol); if(ma) { assign_material(ob, 0, ob->actcol); - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } } @@ -922,9 +921,9 @@ void do_global_buttons(unsigned short event) id_us_plus(idtest); if(id) id->us--; - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } } @@ -1206,9 +1205,9 @@ void do_global_buttons(unsigned short event) id_us_plus(idtest); if(id) id->us--; - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } break; @@ -1271,9 +1270,9 @@ void do_global_buttons(unsigned short event) id_us_plus(idtest); if(id) id->us--; - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } } @@ -1309,10 +1308,10 @@ void do_global_buttons(unsigned short event) id_us_plus(idtest); if(id) id->us--; - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } break; @@ -1366,9 +1365,9 @@ void do_global_buttons(unsigned short event) id_us_plus(idtest); if(id) id->us--; - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWBUTSSHADING, 0); allqueue(REDRAWIPO, 0); + allqueue(REDRAWOOPS, 0); BIF_preview_changed(G.buts); } } @@ -1382,29 +1381,28 @@ void do_global_buttons(unsigned short event) case B_AUTOMATNAME: automatname(G.buts->lockpoin); - allqueue(REDRAWBUTSHEAD, 0); + allqueue(REDRAWBUTSSHADING, 0); + allqueue(REDRAWOOPS, 0); break; case B_AUTOTEXNAME: if(G.buts->mainb==CONTEXT_SHADING) { if(G.buts->tab[CONTEXT_SHADING]==TAB_SHADING_TEX) { autotexname(G.buts->lockpoin); - allqueue(REDRAWBUTSSHADING, 0); } else if(G.buts->tab[CONTEXT_SHADING]==TAB_SHADING_MAT) { ma= G.buts->lockpoin; if(ma->mtex[ ma->texact]) autotexname(ma->mtex[ma->texact]->tex); - allqueue(REDRAWBUTSSHADING, 0); } else if(G.buts->tab[CONTEXT_SHADING]==TAB_SHADING_WORLD) { wrld= G.buts->lockpoin; if(wrld->mtex[ wrld->texact]) autotexname(wrld->mtex[wrld->texact]->tex); - allqueue(REDRAWBUTSSHADING, 0); } else if(G.buts->tab[CONTEXT_SHADING]==TAB_SHADING_LAMP) { la= G.buts->lockpoin; if(la->mtex[ la->texact]) autotexname(la->mtex[la->texact]->tex); - allqueue(REDRAWBUTSSHADING, 0); } + allqueue(REDRAWBUTSSHADING, 0); + allqueue(REDRAWOOPS, 0); } break; @@ -1591,7 +1589,6 @@ void do_global_buttons(unsigned short event) /* redraw because name has changed: new pup */ scrarea_queue_headredraw(curarea); - allqueue(REDRAWBUTSHEAD, 0); allqueue(REDRAWINFO, 1); allqueue(REDRAWOOPS, 1); /* name scene also in set PUPmenu */ diff --git a/source/blender/src/interface_panel.c b/source/blender/src/interface_panel.c index 0617b222aa2..4847a63d56e 100644 --- a/source/blender/src/interface_panel.c +++ b/source/blender/src/interface_panel.c @@ -882,6 +882,11 @@ static void ui_draw_panel_header(uiBlock *block) if(panel->control & UI_PNL_CLOSE) pnl_icons+= PNL_ICON; if(nr==1) { + // full header + BIF_ThemeColorShade(TH_HEADER, -30); + uiSetRoundBox(3); + uiRoundBox(block->minx, block->maxy, block->maxx, block->maxy+PNL_HEADER, 8); + /* active tab */ /* draw text label */ BIF_ThemeColor(TH_TEXT_HI); @@ -890,6 +895,11 @@ static void ui_draw_panel_header(uiBlock *block) return; } + // tabbed, full header brighter + BIF_ThemeColorShade(TH_HEADER, 0); + uiSetRoundBox(3); + uiRoundBox(block->minx, block->maxy, block->maxx, block->maxy+PNL_HEADER, 8); + a= 0; width= (panel->sizex - 3 - pnl_icons - PNL_ICON)/nr; pa= curarea->panels.first; @@ -900,11 +910,11 @@ static void ui_draw_panel_header(uiBlock *block) /* draw the active tab */ uiSetRoundBox(3); - BIF_ThemeColorShade(TH_HEADER, -3); + BIF_ThemeColorShade(TH_HEADER, -30); uiRoundBox(2+pnl_icons+a*width, panel->sizey-1, pnl_icons+(a+1)*width, panel->sizey+PNL_HEADER-3, 8); /* draw the active text label */ - BIF_ThemeColor(TH_TEXT); + BIF_ThemeColor(TH_TEXT_HI); ui_rasterpos_safe(16+pnl_icons+a*width, panel->sizey+4, block->aspect); str= ui_block_cut_str(block, pa->panelname, (short)(width-10)); BIF_DrawString(block->curfont, str, (U.transopts & USER_TR_BUTTONS)); @@ -914,11 +924,11 @@ static void ui_draw_panel_header(uiBlock *block) else if(pa->paneltab==panel) { /* draw an inactive tab */ uiSetRoundBox(3); - BIF_ThemeColorShade(TH_HEADER, -60); + BIF_ThemeColorShade(TH_HEADER, -10); uiRoundBox(2+pnl_icons+a*width, panel->sizey, pnl_icons+(a+1)*width, panel->sizey+PNL_HEADER-3, 8); /* draw an inactive tab label */ - BIF_ThemeColorShade(TH_TEXT_HI, -40); + BIF_ThemeColor(TH_TEXT); ui_rasterpos_safe(16+pnl_icons+a*width, panel->sizey+4, block->aspect); str= ui_block_cut_str(block, pa->panelname, (short)(width-10)); BIF_DrawString(block->curfont, str, (U.transopts & USER_TR_BUTTONS)); @@ -1050,10 +1060,6 @@ void ui_draw_panel(uiBlock *block) } /* floating panel */ else if(panel->control & UI_PNL_TRANSP) { - BIF_ThemeColorShade(TH_HEADER, -30); - - uiSetRoundBox(3); - uiRoundBox(block->minx, block->maxy, block->maxx, block->maxy+PNL_HEADER, 8); glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ); glEnable(GL_BLEND); @@ -1375,9 +1381,12 @@ void uiDrawBlocksPanels(ScrArea *sa, int re_align) if(minx<0.0) dx= -minx; else if(maxx > (float)sa->winx) dx= sa->winx-maxx; + if( minx + dx < 0.0) dx= -minx; // when panel cant fit, put it fixed here + if(miny<0.0) dy= -miny; else if(maxy > (float)sa->winy) dy= sa->winy-maxy; - + if( miny + dy < 0.0) dy= -miny; // when panel cant fit, put it fixed here + block->panel->ofsx+= dx/sl->blockscale; block->panel->ofsy+= dy/sl->blockscale; diff --git a/source/blender/src/oops.c b/source/blender/src/oops.c index 1646b6c8166..95fdbc1bff1 100644 --- a/source/blender/src/oops.c +++ b/source/blender/src/oops.c @@ -61,6 +61,7 @@ #include "BIF_toolbox.h" #include "BIF_oops.h" #include "BIF_drawoops.h" +#include "BIF_outliner.h" #include "blendef.h" #include "mydevice.h" @@ -633,6 +634,12 @@ void free_oopspace(SpaceOops *so) BLI_remlink(&so->oops, oops); free_oops(oops); } + + outliner_free_tree(&so->tree); + if(so->treestore) { + if(so->treestore->data) MEM_freeN(so->treestore->data); + MEM_freeN(so->treestore); + } } void add_material_oopslinks(Material *ma, Oops *oops, short flag) diff --git a/source/blender/src/outliner.c b/source/blender/src/outliner.c new file mode 100644 index 00000000000..eb811c8f856 --- /dev/null +++ b/source/blender/src/outliner.c @@ -0,0 +1,1144 @@ +/** + * $Id: ooutliner.c + * + * ***** BEGIN GPL/BL DUAL LICENSE BLOCK ***** + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. The Blender + * Foundation also sells licenses for use in proprietary software under + * the Blender License. See http://www.blender.org/BL/ for information + * about this. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * The Original Code is Copyright (C) 2004 Blender Foundation. + * All rights reserved. + * + * The Original Code is: all of this file. + * + * Contributor(s): none yet. + * + * ***** END GPL/BL DUAL LICENSE BLOCK ***** + */ + +#include <string.h> + +#include "MEM_guardedalloc.h" + +#include "DNA_action_types.h" +#include "DNA_curve_types.h" +#include "DNA_camera_types.h" +#include "DNA_image_types.h" +#include "DNA_ipo_types.h" +#include "DNA_key_types.h" +#include "DNA_lamp_types.h" +#include "DNA_material_types.h" +#include "DNA_mesh_types.h" +#include "DNA_meta_types.h" +#include "DNA_nla_types.h" +#include "DNA_object_types.h" +#include "DNA_oops_types.h" +#include "DNA_scene_types.h" +#include "DNA_screen_types.h" +#include "DNA_space_types.h" +#include "DNA_texture_types.h" +#include "DNA_world_types.h" + +#include "BLI_blenlib.h" + +#include "BKE_global.h" +#include "BKE_main.h" +#include "BKE_material.h" +#include "BKE_screen.h" +#include "BKE_utildefines.h" + +#include "BIF_butspace.h" +#include "BIF_drawscene.h" +#include "BIF_editaction.h" +#include "BIF_editview.h" +#include "BIF_gl.h" +#include "BIF_interface.h" +#include "BIF_mywindow.h" +#include "BIF_outliner.h" +#include "BIF_language.h" +#include "BIF_mainqueue.h" +#include "BIF_previewrender.h" +#include "BIF_resources.h" +#include "BIF_screen.h" +#include "BIF_space.h" + +#include "FTF_Api.h" + +#include "BDR_editobject.h" +#include "BSE_drawipo.h" +#include "BSE_editaction.h" + +#include "blendef.h" +#include "mydevice.h" + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#define OL_H 19 +#define OL_X 18 + +#define TS_CHUNK 128 + +#define TREESTORE(a) soops->treestore->data+(a)->store_index + +/* fake ID to get NLA inside diagram */ +static ID nlaid= {NULL, NULL, NULL, NULL, "NLNLA", 0, 0, 0}; + +/* ******************** PERSISTANT DATA ***************** */ + +/* for now only called after reading file or undo step */ +static void outliner_storage_cleanup(SpaceOops *soops) +{ + TreeStore *ts= soops->treestore; + + if(ts && (soops->storeflag & SO_TREESTORE_CLEANUP)) { + TreeStoreElem *tselem= ts->data; + int a, unused= 0; + + for(a=0; a<ts->usedelem; a++, tselem++) { + if(tselem->id==NULL) unused++; + } + + if(unused) { + if(ts->usedelem == unused) { + MEM_freeN(ts->data); + ts->data= NULL; + ts->usedelem= ts->totelem= 0; + } + else { + TreeStoreElem *tsnewar, *tsnew; + + tsnew=tsnewar= MEM_mallocN((ts->usedelem-unused)*sizeof(TreeStoreElem), "new tselem"); + tselem= ts->data; + for(a=0; a<ts->usedelem; a++, tselem++) { + if(tselem->id) { + *tsnew= *tselem; + tsnew++; + } + } + MEM_freeN(ts->data); + ts->data= tsnewar; + ts->usedelem-= unused; + ts->totelem= ts->usedelem; + } + } + } +} + +static void check_persistant(SpaceOops *soops, TreeElement *te, ID *id, short type, short nr) +{ + TreeStore *ts; + TreeStoreElem *tselem; + int a; + + /* case 1; no TreeStore */ + if(soops->treestore==NULL) { + ts= soops->treestore= MEM_callocN(sizeof(TreeStore), "treestore"); + } + ts= soops->treestore; + + /* check if 'te' is in treestore */ + tselem= ts->data; + for(a=0; a<ts->usedelem; a++, tselem++) { + if(tselem->id==id) { + if(tselem->type==type && tselem->nr==nr) { + te->store_index= a; + return; + } + } + } + + /* add 1 element to treestore */ + if(ts->usedelem==ts->totelem) { + TreeStoreElem *tsnew; + + tsnew= MEM_mallocN((ts->totelem+TS_CHUNK)*sizeof(TreeStoreElem), "treestore data"); + if(ts->data) { + memcpy(tsnew, ts->data, ts->totelem*sizeof(TreeStoreElem)); + MEM_freeN(ts->data); + } + ts->data= tsnew; + ts->totelem+= TS_CHUNK; + } + + tselem= ts->data+ts->usedelem; + + tselem->type= type; + tselem->nr= nr; + tselem->id= id; + tselem->flag= 0; + te->store_index= ts->usedelem; + + ts->usedelem++; +} + +/* ******************** TREE MANAGEMENT ****************** */ + +void outliner_free_tree(ListBase *lb) +{ + + while(lb->first) { + TreeElement *te= lb->first; + + outliner_free_tree(&te->subtree); + BLI_remlink(lb, te); + MEM_freeN(te); + } +} + +static void outliner_height(SpaceOops *soops, ListBase *lb, int *h) +{ + TreeElement *te= lb->first; + while(te) { + TreeStoreElem *tselem= TREESTORE(te); + if((tselem->flag & TSE_CLOSED)==0) + outliner_height(soops, &te->subtree, h); + (*h)++; + te= te->next; + } +} + +static TreeElement *outliner_add_element(SpaceOops *soops, ListBase *lb, void *idv, TreeElement *parent, short index) +{ + TreeElement *te; + TreeStoreElem *tselem; + int a; + + if(idv==NULL) return NULL; + + te= MEM_callocN(sizeof(TreeElement), "tree elem"); + /* add to the visual tree */ + BLI_addtail(lb, te); + /* add to the storage */ + check_persistant(soops, te, idv, 0, 0); + tselem= TREESTORE(te); + + te->parent= parent; + te->index= index; // for (ID *) arays + + if(idv) { + ID *id= idv; + + /* tuck pointer back in object, to construct hierarchy */ + if(GS(id->name)==ID_OB) id->newid= (ID *)te; + + /* expand specific data always */ + switch(GS(id->name)) { + case ID_SCE: + { + Scene *sce= (Scene *)id; + outliner_add_element(soops, &te->subtree, sce->world, te, 0); + } + break; + case ID_OB: + { + Object *ob= (Object *)id; + outliner_add_element(soops, &te->subtree, ob->data, te, 0); + outliner_add_element(soops, &te->subtree, ob->ipo, te, 0); + outliner_add_element(soops, &te->subtree, ob->action, te, 0); + if(ob->nlastrips.first) { + //bActionStrip *strip; + //TreeElement *tenla= outliner_add_element(soops, &te->subtree, &nlaid, te, 0); + //for (strip=ob->nlastrips.first; strip; strip=strip->next) { + // outliner_add_element(soops, &tenla->subtree, strip->act, tenla, 0); + //} + } + for(a=0; a<ob->totcol; a++) + outliner_add_element(soops, &te->subtree, ob->mat[a], te, a); + } + break; + case ID_ME: + { + Mesh *me= (Mesh *)id; + outliner_add_element(soops, &te->subtree, me->ipo, te, 0); + outliner_add_element(soops, &te->subtree, me->key, te, 0); + for(a=0; a<me->totcol; a++) + outliner_add_element(soops, &te->subtree, me->mat[a], te, a); + } + break; + case ID_CU: + { + Curve *cu= (Curve *)id; + for(a=0; a<cu->totcol; a++) + outliner_add_element(soops, &te->subtree, cu->mat[a], te, a); + } + break; + case ID_MB: + { + MetaBall *mb= (MetaBall *)id; + for(a=0; a<mb->totcol; a++) + outliner_add_element(soops, &te->subtree, mb->mat[a], te, a); + } + break; + case ID_MA: + { + Material *ma= (Material *)id; + + outliner_add_element(soops, &te->subtree, ma->ipo, te, 0); + for(a=0; a<8; a++) { + if(ma->mtex[a]) outliner_add_element(soops, &te->subtree, ma->mtex[a]->tex, te, a); + } + } + break; + case ID_CA: + { + Camera *ca= (Camera *)id; + outliner_add_element(soops, &te->subtree, ca->ipo, te, 0); + } + break; + case ID_LA: + { + Lamp *la= (Lamp *)id; + outliner_add_element(soops, &te->subtree, la->ipo, te, 0); + for(a=0; a<6; a++) { + if(la->mtex[a]) outliner_add_element(soops, &te->subtree, la->mtex[a]->tex, te, a); + } + } + break; + case ID_WO: + { + World *wrld= (World *)id; + outliner_add_element(soops, &te->subtree, wrld->ipo, te, 0); + for(a=0; a<6; a++) { + if(wrld->mtex[a]) outliner_add_element(soops, &te->subtree, wrld->mtex[a]->tex, te, a); + } + } + case ID_KE: + { + Key *key= (Key *)id; + outliner_add_element(soops, &te->subtree, key->ipo, te, 0); + } + break; + case ID_AC: + { + bAction *act= (bAction *)id; + bActionChannel *chan; + int a= 0; + + tselem= TREESTORE(parent); + if(GS(tselem->id->name)!=ID_NLA) { // dont expand NLA + for (chan=act->chanbase.first; chan; chan=chan->next, a++) { + outliner_add_element(soops, &te->subtree, chan->ipo, te, a); + } + } + } + break; + } + } + return te; +} + +static void outliner_make_hierarchy(SpaceOops *soops, ListBase *lb) +{ + TreeElement *te, *ten, *tep; + TreeStoreElem *tselem; + + /* build hierarchy */ + te= lb->first; + while(te) { + ten= te->next; + tselem= TREESTORE(te); + + if(tselem->id && GS(tselem->id->name)==ID_OB) { + Object *ob= (Object *)tselem->id; + if(ob->parent && ob->parent->id.newid) { + BLI_remlink(lb, te); + tep= (TreeElement *)ob->parent->id.newid; + BLI_addtail(&tep->subtree, te); + } + } + te= ten; + } +} + +static void outliner_build_tree(SpaceOops *soops) +{ + Scene *sce; + Base *base; + Object *ob; + TreeElement *te; + TreeStoreElem *tselem; + + outliner_free_tree(&soops->tree); + outliner_storage_cleanup(soops); + + /* clear ob id.new flags */ + for(ob= G.main->object.first; ob; ob= ob->id.next) ob->id.newid= NULL; + + /* option 1: all scenes */ + if(soops->outlinevis == SO_ALL_SCENES) { + for(sce= G.main->scene.first; sce; sce= sce->id.next) { + te= outliner_add_element(soops, &soops->tree, sce, NULL, 0); + tselem= TREESTORE(te); + + if((tselem->flag & TSE_CLOSED)==0) { + for(base= sce->base.first; base; base= base->next) { + outliner_add_element(soops, &te->subtree, base->object, te, 0); + } + outliner_make_hierarchy(soops, &te->subtree); + } + } + } + else if(soops->outlinevis == SO_CUR_SCENE) { + outliner_add_element(soops, &soops->tree, G.scene->world, NULL, 0); + + for(base= G.scene->base.first; base; base= base->next) { + outliner_add_element(soops, &soops->tree, base->object, NULL, 0); + } + outliner_make_hierarchy(soops, &soops->tree); + } + else if(soops->outlinevis == SO_VISIBLE) { + for(base= G.scene->base.first; base; base= base->next) { + if(base->lay & G.scene->lay) + outliner_add_element(soops, &soops->tree, base->object, NULL, 0); + } + outliner_make_hierarchy(soops, &soops->tree); + } + else if(soops->outlinevis == SO_SELECTED) { + for(base= G.scene->base.first; base; base= base->next) { + if(base->lay & G.scene->lay) { + if(base==BASACT || (base->flag & SELECT)) + outliner_add_element(soops, &soops->tree, base->object, NULL, 0); + } + } + outliner_make_hierarchy(soops, &soops->tree); + } + else { + outliner_add_element(soops, &soops->tree, OBACT, NULL, 0); + } + +} + +/* **************** INTERACTIVE ************* */ + +static int outliner_has_one_closed(SpaceOops *soops, ListBase *lb) +{ + TreeElement *te; + TreeStoreElem *tselem; + + for(te= lb->first; te; te= te->next) { + tselem= TREESTORE(te); + if(tselem->flag & TSE_CLOSED) return 1; + + if(outliner_has_one_closed(soops, &te->subtree)) return 1; + } + return 0; +} + +static void outliner_open_close(SpaceOops *soops, ListBase *lb, int open) +{ + TreeElement *te; + TreeStoreElem *tselem; + + for(te= lb->first; te; te= te->next) { + tselem= TREESTORE(te); + if(open) tselem->flag &= ~TSE_CLOSED; + else tselem->flag |= TSE_CLOSED; + + outliner_open_close(soops, &te->subtree, open); + } +} + +void outliner_toggle_visible(struct ScrArea *sa) +{ + SpaceOops *soops= sa->spacedata.first; + + if( outliner_has_one_closed(soops, &soops->tree)) + outliner_open_close(soops, &soops->tree, 1); + else + outliner_open_close(soops, &soops->tree, 0); + + scrarea_queue_redraw(curarea); +} + +static void tree_element_active_object(SpaceOops *soops, TreeElement *te) +{ + TreeStoreElem *tselem= TREESTORE(te); + Base *base; + Object *ob= NULL; + + /* if id is not object, we search back */ + if(GS(tselem->id->name)==ID_OB) ob= (Object *)tselem->id; + else { + TreeElement *tes= te->parent; + TreeStoreElem *tselems=NULL; + + while(tes) { + tselems= TREESTORE(tes); + if(GS(tselems->id->name)==ID_OB) break; + tes= tes->parent; + } + if(tes) ob= (Object *)tselems->id; + + if(ob==OBACT) return; + } + if(ob==NULL) return; + + /* find associated base */ + for(base= FIRSTBASE; base; base= base->next) + if(base->object==ob) break; + if(base) { + if(G.qual & LR_SHIFTKEY) { + /* swap select */ + if(base->flag & SELECT) base->flag &= ~SELECT; + else base->flag |= SELECT; + base->object->flag= base->flag; + } + else { + Base *b; + /* deleselect all */ + for(b= FIRSTBASE; b; b= b->next) { + b->flag &= ~SELECT; + b->object->flag= b->flag; + } + base->flag |= SELECT; + base->object->flag |= SELECT; + } + set_active_base(base); /* editview.c */ + + allqueue(REDRAWVIEW3D, 1); + allqueue(REDRAWOOPS, 0); + allqueue(REDRAWINFO, 1); + } + + if(ob!=G.obedit) exit_editmode(2); +} + +static int tree_element_active_material(SpaceOops *soops, TreeElement *te, int set) +{ + TreeElement *tes= te->parent; + TreeStoreElem *tselems=NULL; + Object *ob=NULL; + + /* we search for the object parent */ + while(tes) { + tselems= TREESTORE(tes); + if(GS(tselems->id->name)==ID_OB) break; + tes= tes->parent; + } + if(tes) ob= (Object *)tselems->id; + if(ob!=OBACT) return 0; // just paranoia + + /* searching in ob mat array? */ + tes= te->parent; + tselems= TREESTORE(tes); + if(GS(tselems->id->name)==ID_OB) { + if(set) { + ob->actcol= te->index+1; + ob->colbits |= (1<<te->index); // make ob material active too + } + else { + if(ob->actcol == te->index+1) + if(ob->colbits & (1<<te->index)) return 1; + } + } + /* or we search for obdata material */ + else { + if(set) { + ob->actcol= te->index+1; + ob->colbits &= ~(1<<te->index); // make obdata material active too + } + else { + if(ob->actcol == te->index+1) + if( (ob->colbits & (1<<te->index))==0 ) return 1; + } + } + if(set) { + mainqenter(F5KEY, 1); // force shading buttons + BIF_all_preview_changed(); + allqueue(REDRAWBUTSSHADING, 1); + allqueue(REDRAWOOPS, 0); + allqueue(REDRAWIPO, 0); + } + return 0; +} + +static int tree_element_active_texture(SpaceOops *soops, TreeElement *te, int set) +{ + TreeElement *tep; + TreeStoreElem *tselem, *tselemp; + Object *ob=OBACT; + ScrArea *sa; + SpaceButs *sbuts=NULL; + + if(ob==NULL) return 0; // no active object + + tselem= TREESTORE(te); + + /* find buttons area (note, this is undefined really still, needs recode in blender) */ + sa= G.curscreen->areabase.first; + while(sa) { + if(sa->spacetype==SPACE_BUTS) break; + sa= sa->next; + } + if(sa) sbuts= sa->spacedata.first; + + /* where is texture linked to? */ + tep= te->parent; + tselemp= TREESTORE(tep); + + if(GS(tselemp->id->name)==ID_WO) { + World *wrld= (World *)tselemp->id; + + if(set) { + if(sbuts) { + sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c + sbuts->texfrom= 1; + } + mainqenter(F6KEY, 1); // force shading buttons texture + wrld->texact= te->index; + } + else if(tselemp->id == (ID *)(G.scene->world)) { + if(wrld->texact==te->index) return 1; + } + } + else if(GS(tselemp->id->name)==ID_LA) { + Lamp *la= (Lamp *)tselemp->id; + if(set) { + if(sbuts) { + sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c + sbuts->texfrom= 2; + } + mainqenter(F6KEY, 1); // force shading buttons texture + la->texact= te->index; + } + else { + if(tselemp->id == ob->data) { + if(la->texact==te->index) return 1; + } + } + } + else if(GS(tselemp->id->name)==ID_MA) { + Material *ma= (Material *)tselemp->id; + if(set) { + if(sbuts) { + //sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c + sbuts->texfrom= 0; + } + mainqenter(F6KEY, 1); // force shading buttons texture + ma->texact= te->index; + + /* also set active material */ + ob->actcol= tep->index+1; + } + else if(tep->flag & TE_ACTIVE) { // this is active material + if(ma->texact==te->index) return 1; + } + } + + return 0; +} + + +static int tree_element_active_lamp(SpaceOops *soops, TreeElement *te, int set) +{ + TreeElement *tes= te->parent; + TreeStoreElem *tselems=NULL; + Object *ob=NULL; + + /* we search for the object parent */ + while(tes) { + tselems= TREESTORE(tes); + if(GS(tselems->id->name)==ID_OB) break; + tes= tes->parent; + } + if(tes) ob= (Object *)tselems->id; + if(ob!=OBACT) return 0; // just paranoia + + if(set) { + mainqenter(F5KEY, 1); + BIF_all_preview_changed(); + allqueue(REDRAWBUTSSHADING, 1); + allqueue(REDRAWOOPS, 0); + allqueue(REDRAWIPO, 0); + } + else return 1; + + return 0; +} + +static int tree_element_active_world(SpaceOops *soops, TreeElement *te, int set) +{ + TreeElement *tep; + TreeStoreElem *tselem=NULL; + + tep= te->parent; + if(tep) tselem= TREESTORE(tep); + if(tep==NULL || tselem->id == (ID *)G.scene) { + if(set) { + mainqenter(F8KEY, 1); + } + else { + return 1; + } + } + return 0; +} + +static int tree_element_active_ipo(SpaceOops *soops, TreeElement *te, int set) +{ + TreeElement *tes= te->parent; + TreeStoreElem *tselems=NULL; + Object *ob=NULL; + + /* we search for the object parent */ + while(tes) { + tselems= TREESTORE(tes); + if(GS(tselems->id->name)==ID_OB) break; + tes= tes->parent; + } + if(tes) ob= (Object *)tselems->id; + if(ob!=OBACT) return 0; // just paranoia + + /* the parent of ipo */ + tes= te->parent; + tselems= TREESTORE(tes); + + if(set) { + ob->ipowin= GS(tselems->id->name); + if(ob->ipowin==ID_MA) tree_element_active_material(soops, tes, 1); + else if(ob->ipowin==ID_AC) { + bActionChannel *chan; + short a=0; + for(chan=ob->action->chanbase.first; chan; chan= chan->next) { + if(a==te->index) break; + if(chan->ipo) a++; + } + deselect_actionchannels(ob->action, 0); + select_channel(ob->action, chan, SELECT_ADD); + allqueue(REDRAWACTION, ob->ipowin); + } + + allqueue(REDRAWIPO, ob->ipowin); + } + else if(ob->ipowin==GS(tselems->id->name)) { + if(ob->ipowin==ID_MA) { + Material *ma= give_current_material(ob, ob->actcol); + if(ma==(Material *)tselems->id) return 1; + } + else if(ob->ipowin==ID_AC) { + bActionChannel *chan; + short a=0; + for(chan=ob->action->chanbase.first; chan; chan= chan->next) { + if(a==te->index) break; + if(chan->ipo) a++; + } + if(chan==get_hilighted_action_channel(ob->action)) return 1; + } + else return 1; + } + return 0; +} + +/* generic call to check or make active in UI */ +static int tree_element_active(SpaceOops *soops, TreeElement *te, int set) +{ + TreeStoreElem *tselem= TREESTORE(te); + + switch(GS(tselem->id->name)) { + case ID_MA: + return tree_element_active_material(soops, te, set); + case ID_WO: + return tree_element_active_world(soops, te, set); + case ID_LA: + return tree_element_active_lamp(soops, te, set); + case ID_IP: + return tree_element_active_ipo(soops, te, set); + case ID_TE: + return tree_element_active_texture(soops, te, set); + } + return 0; +} + +static int do_outliner_mouse_event(SpaceOops *soops, TreeElement *te, short event, float *mval) +{ + + if(mval[1]>te->ys && mval[1]<te->ys+OL_H) { + TreeStoreElem *tselem= TREESTORE(te); + + /* open close icon */ + if( (mval[0]>te->xs && mval[0]<te->xs+OL_X) || event==RETKEY || event==PADENTER) { + + if(tselem->flag & TSE_CLOSED) tselem->flag &= ~TSE_CLOSED; + else tselem->flag |= TSE_CLOSED; + + return 1; + } + /* name and first icon */ + else if(mval[0]>te->xs+OL_X) { + + /* always checks active object */ + tree_element_active_object(soops, te); + + /* editmode? */ + if(GS(tselem->id->name)==ID_SCE) { + if(G.scene!=(Scene *)tselem->id) { + if(G.obedit) exit_editmode(2); + set_scene((Scene *)tselem->id); + } + } + else if(ELEM5(GS(tselem->id->name), ID_ME, ID_CU, ID_MB, ID_LT, ID_AR)) { + if(G.obedit) exit_editmode(2); + else enter_editmode(); + } + else { // rest of types + tree_element_active(soops, te, 1); + } + return 1; + } + else return 0; + } + else { + for(te= te->subtree.first; te; te= te->next) { + if(do_outliner_mouse_event(soops, te, event, mval)) return 1; + } + } + return 0; +} + +/* event can enterkey, then it opens/closes */ +void outliner_mouse_event(ScrArea *sa, short event) +{ + SpaceOops *soops= curarea->spacedata.first; + TreeElement *te; + float fmval[2]; + short mval[2]; + + getmouseco_areawin(mval); + fmval[0]= mval[0]; + fmval[1]= mval[1]; + areamouseco_to_ipoco(&soops->v2d, mval, fmval, fmval+1); + + for(te= soops->tree.first; te; te= te->next) { + if(do_outliner_mouse_event(soops, te, event, fmval)) break; + } + + if(te) allqueue(REDRAWOOPS, 0); + +} + +static TreeElement *outliner_find_id(SpaceOops *soops, ListBase *lb, ID *id) +{ + TreeElement *te, *tes; + TreeStoreElem *tselem; + + for(te= lb->first; te; te= te->next) { + tselem= TREESTORE(te); + if(tselem->id==id) return te; + /* only deeper on scene or object */ + if( GS(tselem->id->name)==ID_OB || GS(tselem->id->name)==ID_SCE) { + tes= outliner_find_id(soops, &te->subtree, id); + if(tes) return tes; + } + } + return NULL; +} + +void outliner_show_active(struct ScrArea *sa) +{ + SpaceOops *so= sa->spacedata.first; + TreeElement *te; + int ytop; + + if(OBACT == NULL) return; + + te= outliner_find_id(so, &so->tree, (ID *)OBACT); + if(te) { + /* make te->ys center of view */ + ytop= te->ys + (so->v2d.mask.ymax-so->v2d.mask.ymin)/2; + if(ytop>0) ytop= 0; + so->v2d.cur.ymax= ytop; + so->v2d.cur.ymin= ytop-(so->v2d.mask.ymax-so->v2d.mask.ymin); + scrarea_queue_redraw(curarea); + } +} + +/* ***************** DRAW *************** */ + +static void draw_id_icon_type(ID *id) +{ + switch( GS(id->name)) { + case ID_SCE: + BIF_draw_icon(ICON_SCENE_DEHLT); break; + case ID_OB: + BIF_draw_icon(ICON_OBJECT); break; + case ID_ME: + BIF_draw_icon(ICON_MESH); break; + case ID_CU: + BIF_draw_icon(ICON_CURVE); break; + case ID_MB: + BIF_draw_icon(ICON_MBALL); break; + case ID_LT: + BIF_draw_icon(ICON_LATTICE); break; + case ID_LA: + BIF_draw_icon(ICON_LAMP_DEHLT); break; + case ID_MA: + BIF_draw_icon(ICON_MATERIAL_DEHLT); break; + case ID_TE: + BIF_draw_icon(ICON_TEXTURE_DEHLT); break; + case ID_IP: + BIF_draw_icon(ICON_IPO_DEHLT); break; + case ID_IM: + BIF_draw_icon(ICON_IMAGE_DEHLT); break; + case ID_SO: + BIF_draw_icon(ICON_SPEAKER); break; + case ID_AR: + BIF_draw_icon(ICON_WPAINT_DEHLT); break; + case ID_CA: + BIF_draw_icon(ICON_CAMERA_DEHLT); break; + case ID_KE: + BIF_draw_icon(ICON_EDIT); break; + case ID_WO: + BIF_draw_icon(ICON_WORLD); break; + case ID_AC: + BIF_draw_icon(ICON_ACTION); break; + case ID_NLA: + BIF_draw_icon(ICON_NLA); break; + } +} + +static void outliner_draw_iconrow(SpaceOops *soops, TreeElement *parent, ListBase *lb, int *offsx, int ys) +{ + TreeElement *te; + TreeStoreElem *tselem; + int active; + + for(te= lb->first; te; te= te->next) { + tselem= TREESTORE(te); + + /* if hierarchy, we draw all linked data to object, and only object icons for children trees */ + if(parent || GS(tselem->id->name)==ID_OB) { + + /* active blocks get white circle */ + active= 0; + if(GS(tselem->id->name)==ID_OB) active= (OBACT==(Object *)tselem->id); + else if(G.obedit && G.obedit->data==tselem->id) active= 1; + else active= tree_element_active(soops, te, 0); + + if(active) { + uiSetRoundBox(15); + glColor4ub(255, 255, 255, 100); + uiRoundBox( (float)*offsx-0.5, (float)ys-1.0, (float)*offsx+OL_H-3.0, (float)ys+OL_H-3.0, OL_H/2.0-2.0); + glEnable(GL_BLEND); + } + + glRasterPos2i(*offsx, ys); + draw_id_icon_type(tselem->id); + (*offsx) += OL_X; + } + + // if object subtree, don't draw all elements except parent icons + if(GS(tselem->id->name)==ID_OB) + outliner_draw_iconrow(soops, NULL, &te->subtree, offsx, ys); + else + outliner_draw_iconrow(soops, parent, &te->subtree, offsx, ys); + } + +} + +static void outliner_draw_tree_element(SpaceOops *soops, TreeElement *te, int startx, int *starty) +{ + TreeElement *ten; + TreeStoreElem *tselem; + int offsx= 0, active=0; // active=1 active obj, else active data + + tselem= TREESTORE(te); + + if(*starty >= soops->v2d.cur.ymin && *starty<= soops->v2d.cur.ymax) { + + glEnable(GL_BLEND); + + /* colors for active/selected data */ + if(GS(tselem->id->name)==ID_SCE) { + if(tselem->id == (ID *)G.scene) { + glColor4ub(255, 255, 255, 100); + active= 2; + } + } + else if(GS(tselem->id->name)==ID_OB) { + Object *ob= (Object *)tselem->id; + + if(ob==OBACT || (ob->flag & SELECT)) { + char col[4]; + + active= 2; + if(ob==OBACT) { + BIF_GetThemeColorType4ubv(TH_ACTIVE, SPACE_VIEW3D, col); + active= 1; + } + else BIF_GetThemeColorType4ubv(TH_SELECT, SPACE_VIEW3D, col); + col[3]= 100; + glColor4ubv(col); + //glRecti(0, *starty, soops->v2d.cur.xmax, *starty+OL_H); + } + } + else if(G.obedit && G.obedit->data==tselem->id) { + glColor4ub(255, 255, 255, 100); + active= 2; + //glRecti(0, *starty, soops->v2d.cur.xmax, *starty+OL_H); + } + else { + if(tree_element_active(soops, te, 0)) { + glColor4ub(220, 220, 255, 100); + active= 2; + //glRecti(0, *starty, soops->v2d.cur.xmax, *starty+OL_H); + } + } + + /* active circle */ + if(active) { + uiSetRoundBox(15); + uiRoundBox( (float)startx+OL_H-1.5, (float)*starty+2.0, (float)startx+2*OL_H-4.0, (float)*starty+OL_H-1.0, OL_H/2.0-2.0); + glEnable(GL_BLEND); + + te->flag |= TE_ACTIVE; // for lookup in display hierarchies + } + + /* open/close icon, only when sublevels, except for scene */ + if(te->subtree.first || GS(tselem->id->name)==ID_SCE) { + glRasterPos2i(startx, *starty+2); // icons a bit higher + if(tselem->flag & TSE_CLOSED) + BIF_draw_icon(ICON_TRIA_CLOSED); + else + BIF_draw_icon(ICON_TRIA_OPEN); + } + offsx+= OL_X; + + /* datatype icon */ + if(tselem->id) { + glRasterPos2i(startx+offsx, *starty+2); // icons a bit higher + draw_id_icon_type(tselem->id); + offsx+= OL_X; + } + glDisable(GL_BLEND); + + /* name */ + if(tselem->id) { + if(active==1) BIF_ThemeColor(TH_TEXT_HI); + else BIF_ThemeColor(TH_TEXT); + glRasterPos2i(startx+offsx, *starty+5); + BIF_DrawString(G.font, tselem->id->name+2, 0); + + offsx+= OL_X + BIF_GetStringWidth(G.font, tselem->id->name+2, 0); + } + + /* closed item, we draw the icons, not when it's a scene though */ + if(tselem->flag & TSE_CLOSED) { + if(te->subtree.first) { + if( GS(tselem->id->name)==ID_SCE); + else { + int tempx= startx+offsx; + // divider + BIF_ThemeColorShade(TH_BACK, -40); + glRecti(tempx -10, *starty+4, tempx -8, *starty+OL_H-4); + + glEnable(GL_BLEND); + glPixelTransferf(GL_ALPHA_SCALE, 0.5); + outliner_draw_iconrow(soops, te, &te->subtree, &tempx, *starty+2); + glPixelTransferf(GL_ALPHA_SCALE, 1.0); + glDisable(GL_BLEND); + } + } + } + } + /* store coord and continue */ + te->xs= startx; + te->ys= *starty; + + *starty-= OL_H; + + if((tselem->flag & TSE_CLOSED)==0) { + for(ten= te->subtree.first; ten; ten= ten->next) { + outliner_draw_tree_element(soops, ten, startx+OL_X, starty); + } + } +} + +static void outliner_draw_tree(SpaceOops *soops) +{ + TreeElement *te; + int starty= soops->v2d.tot.ymax-OL_H, startx= 0; + + FTF_SetFontSize('l'); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); // only once + + for(te= soops->tree.first; te; te= te->next) { + outliner_draw_tree_element(soops, te, startx, &starty); + } + +} + +static void outliner_back(SpaceOops *soops) +{ + int ystart; + + BIF_ThemeColorShade(TH_BACK, 6); + ystart= soops->v2d.tot.ymax; + ystart= OL_H*(ystart/(OL_H)); + + while(ystart > soops->v2d.cur.ymin) { + glRecti(0, ystart, (int)soops->v2d.mask.xmax, ystart+OL_H); + ystart-= 2*OL_H; + } +} + + +void draw_outliner(ScrArea *sa, SpaceOops *soops) +{ + int sizey; + short ofsx, ofsy; + + calc_scrollrcts(G.v2d, curarea->winx, curarea->winy); + + if(curarea->winx>SCROLLB+10 && curarea->winy>SCROLLH+10) { + if(G.v2d->scroll) { + ofsx= curarea->winrct.xmin; /* because mywin */ + ofsy= curarea->winrct.ymin; + glViewport(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); + glScissor(ofsx+G.v2d->mask.xmin, ofsy+G.v2d->mask.ymin, ( ofsx+G.v2d->mask.xmax-1)-(ofsx+G.v2d->mask.xmin)+1, ( ofsy+G.v2d->mask.ymax-1)-( ofsy+G.v2d->mask.ymin)+1); + } + } + + outliner_build_tree(soops); // always + sizey= 0; + outliner_height(soops, &soops->tree, &sizey); + + /* we init all tot rect vars, only really needed on window size change tho */ + G.v2d->tot.xmin= 0.0; + G.v2d->tot.xmax= (G.v2d->mask.xmax-G.v2d->mask.xmin); + G.v2d->tot.ymax= 0.0; + G.v2d->tot.ymin= -sizey*OL_H; + test_view2d(G.v2d, curarea->winx, curarea->winy); + + // align on top window if cur bigger than tot + if(G.v2d->cur.ymax-G.v2d->cur.ymin > sizey*OL_H) { + G.v2d->cur.ymax= 0.0; + G.v2d->cur.ymin= -(G.v2d->mask.ymax-G.v2d->mask.ymin); + } + + myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax); + + /* draw outliner stuff */ + outliner_back(soops); + outliner_draw_tree(soops); + + + /* drawoopsspace handles sliders and restores view */ +} + + diff --git a/source/blender/src/resources.c b/source/blender/src/resources.c index 80328c53eeb..4bef0da4d07 100644 --- a/source/blender/src/resources.c +++ b/source/blender/src/resources.c @@ -915,4 +915,13 @@ void BIF_GetThemeColor4ubv(int colorid, char *col) col[3]= cp[3]; } - +void BIF_GetThemeColorType4ubv(int colorid, int spacetype, char *col) +{ + char *cp; + + cp= BIF_ThemeGetColorPtr(theme_active, spacetype, colorid); + col[0]= cp[0]; + col[1]= cp[1]; + col[2]= cp[2]; + col[3]= cp[3]; +} diff --git a/source/blender/src/space.c b/source/blender/src/space.c index 161d6d727b7..82b4279718c 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -81,6 +81,8 @@ #include "BKE_scene.h" #include "BKE_utildefines.h" +#include "BIF_spacetypes.h" // first, nasty dependency with typedef + #include "BIF_butspace.h" #include "BIF_drawimage.h" #include "BIF_drawseq.h" @@ -93,6 +95,7 @@ #include "BIF_editlattice.h" #include "BIF_editmesh.h" #include "BIF_editmode_undo.h" +#include "BIF_editnla.h" #include "BIF_editoops.h" #include "BIF_editseq.h" #include "BIF_editsima.h" @@ -104,10 +107,10 @@ #include "BIF_meshtools.h" #include "BIF_mywindow.h" #include "BIF_oops.h" +#include "BIF_outliner.h" #include "BIF_resources.h" #include "BIF_screen.h" #include "BIF_space.h" -#include "BIF_spacetypes.h" #include "BIF_toets.h" #include "BIF_toolbox.h" #include "BIF_usiblender.h" @@ -713,7 +716,7 @@ void BIF_undo_menu(void) /* *************** */ -void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -1707,7 +1710,7 @@ void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt) } } -void initview3d(ScrArea *sa) +static void initview3d(ScrArea *sa) { View3D *vd; @@ -1750,7 +1753,7 @@ static void changeview2dspace(ScrArea *sa, void *spacedata) myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax); } -void winqreadipospace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadipospace(ScrArea *sa, void *spacedata, BWinEvent *evt) { extern void do_ipobuts(unsigned short event); // drawipo.c unsigned short event= evt->event; @@ -2781,7 +2784,7 @@ void drawinfospace(ScrArea *sa, void *spacedata) } -void winqreadinfospace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadinfospace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -2855,7 +2858,7 @@ void winqreadinfospace(ScrArea *sa, void *spacedata, BWinEvent *evt) } } -void init_infospace(ScrArea *sa) +static void init_infospace(ScrArea *sa) { SpaceInfo *sinfo; @@ -2877,7 +2880,7 @@ static void changebutspace(ScrArea *sa, void *spacedata) myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax); } -void winqreadbutspace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadbutspace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -3000,7 +3003,7 @@ void test_butspace(void) G.buts->v2d.tot.ymin= MIN2(0.0, blocksmin-10.0); } -void init_butspace(ScrArea *sa) +static void init_butspace(ScrArea *sa) { SpaceButs *buts; @@ -3020,7 +3023,7 @@ void extern_set_butspace(int fkey) ScrArea *sa; SpaceButs *sbuts; - /* when a f-key pressed: closest button window is initialized */ + /* when a f-key pressed: 'closest' button window is initialized */ if(curarea->spacetype==SPACE_BUTS) sa= curarea; else { /* find area */ @@ -3073,7 +3076,7 @@ void extern_set_butspace(int fkey) /* extern void drawseqspace(ScrArea *sa, void *spacedata); BIF_drawseq.h */ -void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -3283,7 +3286,7 @@ void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt) } -void init_seqspace(ScrArea *sa) +static void init_seqspace(ScrArea *sa) { SpaceSeq *sseq; @@ -3334,7 +3337,7 @@ static void changeactionspace(ScrArea *sa, void *spacedata) } -void init_actionspace(ScrArea *sa) +static void init_actionspace(ScrArea *sa) { SpaceAction *saction; @@ -3385,7 +3388,7 @@ void free_actionspace(SpaceAction *saction) /* ******************** SPACE: FILE ********************** */ -void init_filespace(ScrArea *sa) +static void init_filespace(ScrArea *sa) { SpaceFile *sfile; @@ -3398,7 +3401,7 @@ void init_filespace(ScrArea *sa) sfile->spacetype= SPACE_FILE; } -void init_textspace(ScrArea *sa) +static void init_textspace(ScrArea *sa) { SpaceText *st; @@ -3417,7 +3420,7 @@ void init_textspace(ScrArea *sa) st->top= 0; } -void init_scriptspace(ScrArea *sa) +static void init_scriptspace(ScrArea *sa) { SpaceScript *sc; @@ -3430,7 +3433,7 @@ void init_scriptspace(ScrArea *sa) sc->flags = 0; } -void init_imaselspace(ScrArea *sa) +static void init_imaselspace(ScrArea *sa) { SpaceImaSel *simasel; @@ -3469,7 +3472,7 @@ void init_imaselspace(ScrArea *sa) extern void drawsoundspace(ScrArea *sa, void *spacedata); extern void winqreadsoundspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt); -void init_soundspace(ScrArea *sa) +static void init_soundspace(ScrArea *sa) { SpaceSound *ssound; @@ -3517,7 +3520,7 @@ void free_soundspace(SpaceSound *ssound) /* extern void drawimagespace(ScrArea *sa, void *spacedata); BIF_drawimage.h */ -void winqreadimagespace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadimagespace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -3746,7 +3749,7 @@ void winqreadimagespace(ScrArea *sa, void *spacedata, BWinEvent *evt) } -void init_imagespace(ScrArea *sa) +static void init_imagespace(ScrArea *sa) { SpaceImage *sima; @@ -3772,7 +3775,7 @@ extern void winqreadimaselspace(struct ScrArea *sa, void *spacedata, struct BWin extern void drawoopsspace(ScrArea *sa, void *spacedata); -void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt) +static void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt) { unsigned short event= evt->event; short val= evt->val; @@ -3796,147 +3799,202 @@ void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt) if (U.flag & USER_NONUMPAD) { event= convert_for_nonumpad(event); } - - switch(event) { - case LEFTMOUSE: - gesture(); - break; - case MIDDLEMOUSE: - case WHEELUPMOUSE: - case WHEELDOWNMOUSE: - view2dmove(event); /* in drawipo.c */ - break; - case RIGHTMOUSE: - mouse_select_oops(); - break; - case PADPLUSKEY: - - dx= 0.1154*(v2d->cur.xmax-v2d->cur.xmin); - dy= 0.1154*(v2d->cur.ymax-v2d->cur.ymin); - v2d->cur.xmin+= dx; - v2d->cur.xmax-= dx; - v2d->cur.ymin+= dy; - v2d->cur.ymax-= dy; - test_view2d(G.v2d, curarea->winx, curarea->winy); - scrarea_queue_winredraw(curarea); - break; - case PADMINUS: - - dx= 0.15*(v2d->cur.xmax-v2d->cur.xmin); - dy= 0.15*(v2d->cur.ymax-v2d->cur.ymin); - v2d->cur.xmin-= dx; - v2d->cur.xmax+= dx; - v2d->cur.ymin-= dy; - v2d->cur.ymax+= dy; - test_view2d(G.v2d, curarea->winx, curarea->winy); - scrarea_queue_winredraw(curarea); - break; + if(soops->type==SO_OUTLINER) { + switch(event) { + case LEFTMOUSE: + outliner_mouse_event(sa, event); + break; + case MIDDLEMOUSE: + case WHEELUPMOUSE: + case WHEELDOWNMOUSE: + view2dmove(event); /* in drawipo.c */ + break; + + case AKEY: + outliner_toggle_visible(sa); + break; - case HOMEKEY: - if((G.qual==0)) - do_oops_buttons(B_OOPSHOME); - break; + case RETKEY: + case PADENTER: + outliner_mouse_event(sa, event); + break; + case PERIODKEY: + case PADPERIOD: + outliner_show_active(sa); + break; + } + } + else { + switch(event) { + case LEFTMOUSE: + gesture(); + break; + case MIDDLEMOUSE: + case WHEELUPMOUSE: + case WHEELDOWNMOUSE: + view2dmove(event); /* in drawipo.c */ + break; + case RIGHTMOUSE: + mouse_select_oops(); + break; + case PADPLUSKEY: - case AKEY: - if((G.qual==0)) { - swap_select_all_oops(); + dx= 0.1154*(v2d->cur.xmax-v2d->cur.xmin); + dy= 0.1154*(v2d->cur.ymax-v2d->cur.ymin); + v2d->cur.xmin+= dx; + v2d->cur.xmax-= dx; + v2d->cur.ymin+= dy; + v2d->cur.ymax-= dy; + test_view2d(G.v2d, curarea->winx, curarea->winy); scrarea_queue_winredraw(curarea); - } - break; - case BKEY: - if((G.qual==0)) - borderselect_oops(); - break; - case GKEY: - if((G.qual==0)) - transform_oops('g'); - break; - case LKEY: - if((G.qual==LR_SHIFTKEY)) - select_backlinked_oops(); - else if((G.qual==0)) - select_linked_oops(); - break; - case SKEY: - if((G.qual==LR_ALTKEY)) { - if (okee("Shrink blocks")) { - shrink_oops(); + break; + + case PADMINUS: + + dx= 0.15*(v2d->cur.xmax-v2d->cur.xmin); + dy= 0.15*(v2d->cur.ymax-v2d->cur.ymin); + v2d->cur.xmin-= dx; + v2d->cur.xmax+= dx; + v2d->cur.ymin-= dy; + v2d->cur.ymax+= dy; + test_view2d(G.v2d, curarea->winx, curarea->winy); + scrarea_queue_winredraw(curarea); + break; + + case HOMEKEY: + if((G.qual==0)) + do_oops_buttons(B_OOPSHOME); + break; + + case AKEY: + if((G.qual==0)) { + swap_select_all_oops(); + scrarea_queue_winredraw(curarea); } - } else if((G.qual==LR_SHIFTKEY)) { - if (okee("Shuffle blocks")) { - shuffle_oops(); + break; + case BKEY: + if((G.qual==0)) + borderselect_oops(); + break; + case GKEY: + if((G.qual==0)) + transform_oops('g'); + break; + case LKEY: + if((G.qual==LR_SHIFTKEY)) + select_backlinked_oops(); + else if((G.qual==0)) + select_linked_oops(); + break; + case SKEY: + if((G.qual==LR_ALTKEY)) { + if (okee("Shrink blocks")) { + shrink_oops(); + } + } else if((G.qual==LR_SHIFTKEY)) { + if (okee("Shuffle blocks")) { + shuffle_oops(); + } + } else if((G.qual==0)) { + transform_oops('s'); } - } else if((G.qual==0)) { - transform_oops('s'); - } - break; - case PKEY: - if((G.qual==LR_CTRLKEY)) { - make_parent(); - } else if((G.qual==LR_ALTKEY)) { - clear_parent(); - } - break; + break; + case PKEY: + if((G.qual==LR_CTRLKEY)) { + make_parent(); + } else if((G.qual==LR_ALTKEY)) { + clear_parent(); + } + break; - case ONEKEY: - do_layer_buttons(0); break; - case TWOKEY: - do_layer_buttons(1); break; - case THREEKEY: - do_layer_buttons(2); break; - case FOURKEY: - do_layer_buttons(3); break; - case FIVEKEY: - do_layer_buttons(4); break; - case SIXKEY: - do_layer_buttons(5); break; - case SEVENKEY: - do_layer_buttons(6); break; - case EIGHTKEY: - do_layer_buttons(7); break; - case NINEKEY: - do_layer_buttons(8); break; - case ZEROKEY: - do_layer_buttons(9); break; - case MINUSKEY: - do_layer_buttons(10); break; - case EQUALKEY: - do_layer_buttons(11); break; - case ACCENTGRAVEKEY: - do_layer_buttons(-1); break; - + case ONEKEY: + do_layer_buttons(0); break; + case TWOKEY: + do_layer_buttons(1); break; + case THREEKEY: + do_layer_buttons(2); break; + case FOURKEY: + do_layer_buttons(3); break; + case FIVEKEY: + do_layer_buttons(4); break; + case SIXKEY: + do_layer_buttons(5); break; + case SEVENKEY: + do_layer_buttons(6); break; + case EIGHTKEY: + do_layer_buttons(7); break; + case NINEKEY: + do_layer_buttons(8); break; + case ZEROKEY: + do_layer_buttons(9); break; + case MINUSKEY: + do_layer_buttons(10); break; + case EQUALKEY: + do_layer_buttons(11); break; + case ACCENTGRAVEKEY: + do_layer_buttons(-1); break; + + } } } -void init_v2d_oops(View2D *v2d) +void init_v2d_oops(ScrArea *sa, SpaceOops *soops) { - v2d->tot.xmin= -28.0; - v2d->tot.xmax= 28.0; - v2d->tot.ymin= -28.0; - v2d->tot.ymax= 28.0; + View2D *v2d= &soops->v2d; - v2d->cur= v2d->tot; + if(soops->type==SO_OUTLINER) { + /* outliner space is window size */ + calc_scrollrcts(v2d, sa->winx, sa->winy); + + v2d->tot.xmax= 0.0; + v2d->tot.ymax= 0.0; + v2d->tot.xmin= -(v2d->mask.xmax-v2d->mask.xmin); + v2d->tot.ymin= -(v2d->mask.ymax-v2d->mask.ymin); + + v2d->cur= v2d->tot; + + v2d->min[0]= v2d->tot.xmin; + v2d->min[1]= v2d->tot.ymin; + + v2d->max[0]= v2d->tot.xmax; + v2d->max[1]= v2d->tot.ymax; + + v2d->minzoom= 1.0; + v2d->maxzoom= 1.0; + + v2d->scroll= L_SCROLL; + v2d->keepaspect= 1; + v2d->keepzoom= 1; + v2d->keeptot= 1; + } + else { + v2d->tot.xmin= -28.0; + v2d->tot.xmax= 28.0; + v2d->tot.ymin= -28.0; + v2d->tot.ymax= 28.0; + + v2d->cur= v2d->tot; - v2d->min[0]= 10.0; - v2d->min[1]= 4.0; + v2d->min[0]= 10.0; + v2d->min[1]= 4.0; - v2d->max[0]= 320.0; - v2d->max[1]= 320.0; - - v2d->minzoom= 0.01f; - v2d->maxzoom= 2.0; - - /* v2d->scroll= L_SCROLL+B_SCROLL; */ - v2d->scroll= 0; - v2d->keepaspect= 1; - v2d->keepzoom= 0; - v2d->keeptot= 0; - + v2d->max[0]= 320.0; + v2d->max[1]= 320.0; + + v2d->minzoom= 0.01f; + v2d->maxzoom= 2.0; + + /* v2d->scroll= L_SCROLL+B_SCROLL; */ + v2d->scroll= 0; + v2d->keepaspect= 1; + v2d->keepzoom= 0; + v2d->keeptot= 0; + } } -void init_oopsspace(ScrArea *sa) +static void init_oopsspace(ScrArea *sa, int outliner) { SpaceOops *soops; @@ -3944,13 +4002,52 @@ void init_oopsspace(ScrArea *sa) BLI_addhead(&sa->spacedata, soops); soops->visiflag= OOPS_OB+OOPS_MA+OOPS_ME+OOPS_TE+OOPS_CU+OOPS_IP; + if(outliner) soops->type= SO_OUTLINER; soops->spacetype= SPACE_OOPS; soops->blockscale= 0.7; - init_v2d_oops(&soops->v2d); + init_v2d_oops(sa, soops); +} + +/* ******************** SPACE: NLA ********************** */ + +static void init_nlaspace(ScrArea *sa) +{ + SpaceNla *snla; + + snla= MEM_callocN(sizeof(SpaceNla), "initnlaspace"); + BLI_addhead(&sa->spacedata, snla); + + snla->spacetype= SPACE_NLA; + snla->blockscale= 0.7; + + snla->v2d.tot.xmin= 1.0; + snla->v2d.tot.ymin= 0.0; + snla->v2d.tot.xmax= 1000.0; + snla->v2d.tot.ymax= 1000.0; + + snla->v2d.cur.xmin= -5.0; + snla->v2d.cur.ymin= 0.0; + snla->v2d.cur.xmax= 65.0; + snla->v2d.cur.ymax= 1000.0; + + snla->v2d.min[0]= 0.0; + snla->v2d.min[1]= 0.0; + + snla->v2d.max[0]= 1000.0; + snla->v2d.max[1]= 1000.0; + + snla->v2d.minzoom= 0.1F; + snla->v2d.maxzoom= 50; + + snla->v2d.scroll= R_SCROLL+B_SCROLL; + snla->v2d.keepaspect= 0; + snla->v2d.keepzoom= V2D_LOCKZOOM_Y; + snla->v2d.keeptot= 0; + + snla->lock = 0; } -/* ******************** SPACE: PAINT ********************** */ /* ******************** SPACE: Text ********************** */ @@ -3967,6 +4064,10 @@ extern void winqreadscriptspace(struct ScrArea *sa, void *spacedata, struct BWin void newspace(ScrArea *sa, int type) { + int xtra= type & 256; // hack to enforce outliner with hotkey from toets.c + + type &= ~256; + if(type>=0) { if(sa->spacetype != type) { SpaceLink *sl; @@ -4012,7 +4113,7 @@ void newspace(ScrArea *sa, int type) else if(type==SPACE_IMASEL) init_imaselspace(sa); else if(type==SPACE_OOPS) - init_oopsspace(sa); + init_oopsspace(sa, xtra); else if(type==SPACE_ACTION) init_actionspace(sa); else if(type==SPACE_TEXT) @@ -4032,8 +4133,8 @@ void newspace(ScrArea *sa, int type) /* exception: filespace */ - if(curarea->spacetype==SPACE_FILE) { - SpaceFile *sfile= curarea->spacedata.first; + if(sa->spacetype==SPACE_FILE) { + SpaceFile *sfile= sa->spacedata.first; if(sfile->type==FILE_MAIN) { freefilelist(sfile); @@ -4046,11 +4147,20 @@ void newspace(ScrArea *sa, int type) if(sfile->filelist) test_flags_file(sfile); } /* exception: imasel space */ - else if(curarea->spacetype==SPACE_IMASEL) { - SpaceImaSel *simasel= curarea->spacedata.first; + else if(sa->spacetype==SPACE_IMASEL) { + SpaceImaSel *simasel= sa->spacedata.first; simasel->returnfunc= 0; simasel->title[0]= 0; } + else if(sa->spacetype==SPACE_OOPS) { + SpaceOops *so= sa->spacedata.first; + if(xtra && so->type!=SO_OUTLINER) { + so->type= SO_OUTLINER; + init_v2d_oops(sa, so); + scrarea_queue_winredraw(sa); + scrarea_queue_headredraw(sa); + } + } } void freespacelist(ListBase *lb) @@ -4127,7 +4237,9 @@ void duplicatespacelist(ScrArea *newarea, ListBase *lb1, ListBase *lb2) } else if(sl->spacetype==SPACE_OOPS) { SpaceOops *so= (SpaceOops *)sl; - so->oops.first= so->oops.last= 0; + so->oops.first= so->oops.last= NULL; + so->tree.first= so->tree.last= NULL; + so->treestore= NULL; } else if(sl->spacetype==SPACE_IMASEL) { check_imasel_copy((SpaceImaSel *) sl); diff --git a/source/blender/src/toets.c b/source/blender/src/toets.c index 6657214cb52..149c3d6d21d 100644 --- a/source/blender/src/toets.c +++ b/source/blender/src/toets.c @@ -638,6 +638,10 @@ int blenderqread(unsigned short event, short val) newspace(curarea, SPACE_OOPS); return 0; } + else if(G.qual==(LR_SHIFTKEY|LR_ALTKEY)) { + newspace(curarea, SPACE_OOPS+256); + return 0; + } else if(G.qual==0) { extern_set_butspace(event); } |