use ::codec::Decode;
pub const API_METADATA_BYTES: &'static [u8] = &[
25u8, 11u8, 0u8, 12u8, 28u8, 115u8, 112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 24u8, 99u8, 114u8,
121u8, 112u8, 116u8, 111u8, 44u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
51u8, 50u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 51u8, 50u8, 93u8,
0u8, 0u8, 4u8, 0u8, 0u8, 3u8, 32u8, 0u8, 0u8, 0u8, 8u8, 0u8, 8u8, 0u8, 0u8, 5u8, 3u8, 0u8, 12u8,
8u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8,
44u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 102u8, 111u8, 8u8, 20u8, 73u8,
110u8, 100u8, 101u8, 120u8, 1u8, 16u8, 44u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 68u8,
97u8, 116u8, 97u8, 1u8, 20u8, 0u8, 20u8, 1u8, 20u8, 110u8, 111u8, 110u8, 99u8, 101u8, 16u8, 1u8,
20u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 36u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8,
101u8, 114u8, 115u8, 16u8, 1u8, 32u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8,
1u8, 36u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 115u8, 16u8, 1u8, 32u8, 82u8,
101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 1u8, 44u8, 115u8, 117u8, 102u8, 102u8,
105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 115u8, 16u8, 1u8, 32u8, 82u8, 101u8, 102u8, 67u8, 111u8,
117u8, 110u8, 116u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8, 20u8, 1u8, 44u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 68u8, 97u8, 116u8, 97u8, 0u8, 0u8, 16u8, 0u8, 0u8, 5u8, 5u8, 0u8,
20u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8,
109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8,
24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
115u8, 44u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 68u8, 97u8, 116u8, 97u8, 0u8, 0u8,
16u8, 1u8, 16u8, 102u8, 114u8, 101u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 1u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 44u8, 109u8, 105u8, 115u8, 99u8,
95u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 1u8, 40u8, 102u8, 101u8, 101u8, 95u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8,
24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 24u8, 0u8, 0u8, 5u8, 7u8,
0u8, 28u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8,
114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 64u8, 80u8, 101u8, 114u8,
68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 4u8, 4u8,
84u8, 1u8, 32u8, 0u8, 12u8, 1u8, 24u8, 110u8, 111u8, 114u8, 109u8, 97u8, 108u8, 32u8, 1u8, 4u8,
84u8, 0u8, 1u8, 44u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8,
32u8, 1u8, 4u8, 84u8, 0u8, 1u8, 36u8, 109u8, 97u8, 110u8, 100u8, 97u8, 116u8, 111u8, 114u8,
121u8, 32u8, 1u8, 4u8, 84u8, 0u8, 0u8, 32u8, 0u8, 0u8, 5u8, 6u8, 0u8, 36u8, 8u8, 60u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 95u8, 116u8, 121u8, 112u8, 101u8, 115u8,
16u8, 72u8, 50u8, 53u8, 54u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 88u8, 91u8, 117u8, 56u8, 59u8, 32u8,
47u8, 42u8, 194u8, 171u8, 42u8, 47u8, 32u8, 51u8, 50u8, 32u8, 47u8, 42u8, 194u8, 187u8, 42u8,
47u8, 93u8, 0u8, 0u8, 40u8, 0u8, 0u8, 2u8, 8u8, 0u8, 44u8, 16u8, 40u8, 115u8, 112u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 28u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8, 99u8,
24u8, 100u8, 105u8, 103u8, 101u8, 115u8, 116u8, 24u8, 68u8, 105u8, 103u8, 101u8, 115u8, 116u8,
0u8, 0u8, 4u8, 1u8, 16u8, 108u8, 111u8, 103u8, 115u8, 48u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8,
68u8, 105u8, 103u8, 101u8, 115u8, 116u8, 73u8, 116u8, 101u8, 109u8, 62u8, 0u8, 0u8, 48u8, 0u8,
0u8, 2u8, 52u8, 0u8, 52u8, 16u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 28u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8, 99u8, 24u8, 100u8, 105u8, 103u8,
101u8, 115u8, 116u8, 40u8, 68u8, 105u8, 103u8, 101u8, 115u8, 116u8, 73u8, 116u8, 101u8, 109u8,
0u8, 1u8, 20u8, 40u8, 80u8, 114u8, 101u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 8u8,
0u8, 56u8, 1u8, 68u8, 67u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 69u8, 110u8,
103u8, 105u8, 110u8, 101u8, 73u8, 100u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8,
117u8, 56u8, 62u8, 0u8, 6u8, 0u8, 36u8, 67u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8,
115u8, 8u8, 0u8, 56u8, 1u8, 68u8, 67u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8,
69u8, 110u8, 103u8, 105u8, 110u8, 101u8, 73u8, 100u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 4u8, 0u8, 16u8, 83u8, 101u8, 97u8, 108u8, 8u8, 0u8, 56u8,
1u8, 68u8, 67u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 69u8, 110u8, 103u8,
105u8, 110u8, 101u8, 73u8, 100u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 5u8, 0u8, 20u8, 79u8, 116u8, 104u8, 101u8, 114u8, 4u8, 0u8, 40u8, 1u8, 28u8,
86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 0u8, 100u8, 82u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 69u8, 110u8, 118u8, 105u8, 114u8, 111u8, 110u8, 109u8, 101u8, 110u8, 116u8,
85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 0u8, 8u8, 0u8, 0u8, 56u8, 0u8, 0u8, 3u8, 4u8, 0u8,
0u8, 0u8, 8u8, 0u8, 60u8, 0u8, 0u8, 2u8, 64u8, 0u8, 64u8, 8u8, 48u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 44u8, 69u8, 118u8, 101u8, 110u8, 116u8,
82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 8u8, 4u8, 69u8, 1u8, 68u8, 4u8, 84u8, 1u8, 36u8, 0u8,
12u8, 1u8, 20u8, 112u8, 104u8, 97u8, 115u8, 101u8, 105u8, 4u8, 1u8, 20u8, 80u8, 104u8, 97u8,
115u8, 101u8, 0u8, 1u8, 20u8, 101u8, 118u8, 101u8, 110u8, 116u8, 68u8, 1u8, 4u8, 69u8, 0u8, 1u8,
24u8, 116u8, 111u8, 112u8, 105u8, 99u8, 115u8, 109u8, 4u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8,
84u8, 62u8, 0u8, 0u8, 68u8, 12u8, 96u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 95u8, 100u8, 101u8, 118u8, 101u8, 108u8,
111u8, 112u8, 28u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 20u8, 69u8, 118u8, 101u8,
110u8, 116u8, 0u8, 1u8, 168u8, 24u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 4u8, 0u8, 72u8,
1u8, 112u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8,
58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 62u8, 0u8, 0u8, 0u8, 28u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 4u8, 0u8, 108u8,
1u8, 120u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 110u8, 100u8, 105u8, 99u8,
101u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 62u8, 0u8, 3u8, 0u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
115u8, 4u8, 0u8, 112u8, 1u8, 124u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 5u8, 0u8, 32u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 4u8, 0u8, 136u8, 1u8, 124u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 58u8, 58u8, 69u8, 118u8, 101u8,
110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 7u8, 0u8, 76u8,
67u8, 100u8, 100u8, 83u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 80u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 114u8, 115u8, 4u8, 0u8, 25u8, 1u8, 1u8, 212u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 73u8, 110u8, 115u8,
116u8, 97u8, 110u8, 99u8, 101u8, 50u8, 62u8, 0u8, 8u8, 0u8, 68u8, 80u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 4u8,
0u8, 37u8, 1u8, 1u8, 244u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8,
82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 73u8,
110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 49u8, 62u8, 0u8, 9u8, 0u8, 76u8, 67u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
104u8, 105u8, 112u8, 4u8, 0u8, 57u8, 1u8, 1u8, 212u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8,
82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8,
110u8, 99u8, 101u8, 49u8, 62u8, 0u8, 10u8, 0u8, 72u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8,
99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 65u8,
1u8, 1u8, 244u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 73u8, 110u8, 115u8,
116u8, 97u8, 110u8, 99u8, 101u8, 51u8, 62u8, 0u8, 11u8, 0u8, 112u8, 84u8, 101u8, 99u8, 104u8,
110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 4u8, 0u8, 73u8, 1u8, 1u8,
212u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 58u8,
58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8,
58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 51u8, 62u8, 0u8, 12u8, 0u8,
64u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 4u8, 0u8, 81u8, 1u8, 1u8, 244u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 69u8, 118u8,
101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8,
101u8, 58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 52u8, 62u8, 0u8, 13u8,
0u8, 104u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8,
4u8, 0u8, 89u8, 1u8, 1u8, 212u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8,
111u8, 117u8, 112u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8,
114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8,
52u8, 62u8, 0u8, 14u8, 0u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 4u8, 0u8,
97u8, 1u8, 1u8, 124u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 15u8, 0u8, 24u8, 66u8, 114u8, 105u8, 100u8, 103u8,
101u8, 4u8, 0u8, 109u8, 1u8, 1u8, 116u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8,
114u8, 105u8, 100u8, 103u8, 101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 16u8, 0u8, 28u8, 83u8, 116u8, 97u8, 107u8,
105u8, 110u8, 103u8, 4u8, 0u8, 129u8, 1u8, 1u8, 120u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 17u8, 0u8, 32u8, 79u8,
102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 115u8, 4u8, 0u8, 145u8, 1u8, 1u8, 88u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 115u8, 58u8,
58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 18u8, 0u8, 28u8, 83u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 4u8, 0u8, 153u8, 1u8, 1u8, 84u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8,
0u8, 19u8, 0u8, 28u8, 71u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 4u8, 0u8, 157u8, 1u8, 1u8,
84u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8,
97u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 21u8, 0u8, 32u8, 73u8, 109u8, 79u8,
110u8, 108u8, 105u8, 110u8, 101u8, 4u8, 0u8, 177u8, 1u8, 1u8, 128u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 58u8, 58u8,
69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8,
0u8, 23u8, 0u8, 16u8, 83u8, 117u8, 100u8, 111u8, 4u8, 0u8, 213u8, 1u8, 1u8, 108u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 117u8, 100u8, 111u8, 58u8, 58u8, 69u8, 118u8, 101u8,
110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 25u8, 0u8, 20u8,
65u8, 115u8, 115u8, 101u8, 116u8, 4u8, 0u8, 217u8, 1u8, 1u8, 112u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 26u8, 0u8, 76u8, 67u8,
97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 101u8, 2u8, 1u8, 136u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 95u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 0u8, 27u8, 0u8, 40u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
4u8, 0u8, 125u8, 2u8, 1u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 0u8, 28u8, 0u8, 68u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8,
77u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 4u8, 0u8, 157u8, 2u8, 1u8, 128u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8,
101u8, 95u8, 109u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 58u8, 58u8, 69u8, 118u8, 101u8,
110u8, 116u8, 0u8, 29u8, 0u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8,
65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 209u8, 2u8, 1u8, 124u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8,
30u8, 0u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 4u8, 0u8, 5u8, 3u8, 1u8, 120u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 31u8, 0u8, 16u8, 80u8,
105u8, 112u8, 115u8, 4u8, 0u8, 61u8, 3u8, 1u8, 108u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 112u8, 105u8, 112u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 33u8, 0u8, 36u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 4u8, 0u8, 125u8, 3u8, 1u8, 92u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 58u8, 58u8,
69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 34u8, 0u8, 44u8, 80u8, 114u8, 111u8, 116u8, 111u8, 99u8,
111u8, 108u8, 70u8, 101u8, 101u8, 4u8, 0u8, 141u8, 3u8, 1u8, 140u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 95u8, 102u8, 101u8,
101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 35u8, 0u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8,
114u8, 4u8, 0u8, 149u8, 3u8, 1u8, 128u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8,
116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 36u8, 0u8, 40u8, 83u8,
101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 4u8, 0u8, 161u8, 3u8, 1u8, 132u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8,
101u8, 110u8, 116u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 37u8, 0u8, 40u8, 83u8, 116u8, 97u8, 116u8, 105u8, 115u8,
116u8, 105u8, 99u8, 115u8, 4u8, 0u8, 205u8, 3u8, 1u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 58u8, 58u8,
69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 38u8, 0u8, 12u8, 83u8, 116u8, 111u8, 4u8, 0u8, 17u8, 4u8,
1u8, 104u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 58u8, 58u8, 69u8,
118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8,
39u8, 0u8, 32u8, 84u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 4u8, 0u8, 45u8, 4u8, 1u8,
124u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8,
114u8, 121u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 62u8, 0u8, 40u8, 0u8, 28u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8,
4u8, 0u8, 49u8, 4u8, 1u8, 84u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 121u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 41u8, 0u8,
16u8, 66u8, 97u8, 115u8, 101u8, 4u8, 0u8, 65u8, 4u8, 1u8, 72u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 98u8, 97u8, 115u8, 101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 42u8,
0u8, 56u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 65u8, 103u8, 101u8, 110u8,
116u8, 115u8, 4u8, 0u8, 73u8, 4u8, 1u8, 116u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 95u8, 97u8, 103u8, 101u8, 110u8, 116u8,
115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 43u8, 0u8, 28u8, 82u8, 101u8, 108u8,
97u8, 121u8, 101u8, 114u8, 4u8, 0u8, 77u8, 4u8, 1u8, 120u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 114u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 58u8, 58u8, 69u8, 118u8, 101u8,
110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 44u8, 0u8, 28u8,
82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 4u8, 0u8, 81u8, 4u8, 1u8, 120u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 58u8, 58u8,
69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8,
0u8, 45u8, 0u8, 36u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 4u8, 0u8, 85u8,
4u8, 1u8, 128u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 46u8, 0u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 4u8, 0u8, 89u8, 4u8,
1u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 47u8,
0u8, 32u8, 80u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 4u8, 0u8, 93u8, 4u8, 1u8, 124u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8,
101u8, 58u8, 58u8, 69u8, 118u8, 101u8, 110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 48u8, 0u8, 36u8, 84u8, 101u8, 115u8, 116u8, 85u8, 116u8, 105u8, 108u8,
115u8, 4u8, 0u8, 97u8, 4u8, 1u8, 132u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 116u8,
101u8, 115u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 115u8, 58u8, 58u8, 69u8, 118u8, 101u8,
110u8, 116u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 50u8, 0u8, 0u8,
72u8, 12u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8,
109u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8,
4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 64u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 83u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 4u8, 1u8, 52u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 95u8, 105u8, 110u8, 102u8, 111u8, 76u8, 1u8, 48u8, 68u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 73u8, 110u8, 102u8, 111u8, 0u8, 0u8, 4u8, 144u8, 65u8, 110u8,
32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8,
102u8, 117u8, 108u8, 108u8, 121u8, 46u8, 60u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 8u8, 1u8, 56u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 95u8, 101u8, 114u8, 114u8, 111u8, 114u8, 88u8, 1u8, 52u8, 68u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 1u8, 52u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 95u8, 105u8, 110u8, 102u8, 111u8, 76u8, 1u8, 48u8,
68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 73u8, 110u8, 102u8, 111u8, 0u8, 1u8, 4u8,
80u8, 65u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8,
102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 46u8, 44u8, 67u8, 111u8, 100u8, 101u8, 85u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 0u8, 2u8, 4u8, 80u8, 96u8, 58u8, 99u8, 111u8, 100u8, 101u8,
96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 40u8,
78u8, 101u8, 119u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 4u8, 1u8, 28u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 3u8, 4u8, 104u8, 65u8, 32u8, 110u8, 101u8, 119u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8,
97u8, 116u8, 101u8, 100u8, 46u8, 52u8, 75u8, 105u8, 108u8, 108u8, 101u8, 100u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 4u8, 1u8, 28u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 4u8,
4u8, 88u8, 65u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8, 97u8,
115u8, 32u8, 114u8, 101u8, 97u8, 112u8, 101u8, 100u8, 46u8, 32u8, 82u8, 101u8, 109u8, 97u8,
114u8, 107u8, 101u8, 100u8, 8u8, 1u8, 24u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 0u8, 1u8,
48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8,
0u8, 5u8, 4u8, 112u8, 79u8, 110u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8,
32u8, 114u8, 101u8, 109u8, 97u8, 114u8, 107u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8,
101u8, 100u8, 46u8, 4u8, 112u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 46u8, 76u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8,
115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
115u8, 48u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 73u8, 110u8, 102u8, 111u8, 0u8,
0u8, 12u8, 1u8, 24u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 1u8, 24u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 20u8, 99u8, 108u8, 97u8, 115u8, 115u8, 80u8, 1u8, 52u8,
68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 0u8, 1u8,
32u8, 112u8, 97u8, 121u8, 115u8, 95u8, 102u8, 101u8, 101u8, 84u8, 1u8, 16u8, 80u8, 97u8, 121u8,
115u8, 0u8, 0u8, 80u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8,
112u8, 111u8, 114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 52u8, 68u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 0u8, 1u8, 12u8,
24u8, 78u8, 111u8, 114u8, 109u8, 97u8, 108u8, 0u8, 0u8, 0u8, 44u8, 79u8, 112u8, 101u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 0u8, 1u8, 0u8, 36u8, 77u8, 97u8, 110u8, 100u8,
97u8, 116u8, 111u8, 114u8, 121u8, 0u8, 2u8, 0u8, 0u8, 84u8, 12u8, 52u8, 102u8, 114u8, 97u8,
109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 115u8, 16u8, 80u8, 97u8, 121u8, 115u8, 0u8, 1u8, 8u8, 12u8, 89u8, 101u8,
115u8, 0u8, 0u8, 0u8, 8u8, 78u8, 111u8, 0u8, 1u8, 0u8, 0u8, 88u8, 8u8, 40u8, 115u8, 112u8, 95u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 52u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 1u8, 40u8, 20u8, 79u8, 116u8, 104u8, 101u8,
114u8, 0u8, 0u8, 0u8, 48u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 76u8, 111u8, 111u8, 107u8,
117u8, 112u8, 0u8, 1u8, 0u8, 36u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8,
0u8, 2u8, 0u8, 24u8, 77u8, 111u8, 100u8, 117u8, 108u8, 101u8, 4u8, 0u8, 92u8, 1u8, 44u8, 77u8,
111u8, 100u8, 117u8, 108u8, 101u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 3u8, 0u8, 68u8, 67u8,
111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 114u8, 82u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8,
110u8, 103u8, 0u8, 4u8, 0u8, 44u8, 78u8, 111u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
114u8, 115u8, 0u8, 5u8, 0u8, 64u8, 84u8, 111u8, 111u8, 77u8, 97u8, 110u8, 121u8, 67u8, 111u8,
110u8, 115u8, 117u8, 109u8, 101u8, 114u8, 115u8, 0u8, 6u8, 0u8, 20u8, 84u8, 111u8, 107u8, 101u8,
110u8, 4u8, 0u8, 96u8, 1u8, 40u8, 84u8, 111u8, 107u8, 101u8, 110u8, 69u8, 114u8, 114u8, 111u8,
114u8, 0u8, 7u8, 0u8, 40u8, 65u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8,
4u8, 0u8, 100u8, 1u8, 60u8, 65u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8,
69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 8u8, 0u8, 52u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 4u8, 0u8, 104u8, 1u8, 72u8, 84u8, 114u8, 97u8,
110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 69u8, 114u8, 114u8, 111u8,
114u8, 0u8, 9u8, 0u8, 0u8, 92u8, 8u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 44u8, 77u8, 111u8, 100u8, 117u8, 108u8, 101u8, 69u8, 114u8, 114u8, 111u8,
114u8, 0u8, 0u8, 8u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 8u8, 1u8, 8u8, 117u8, 56u8,
0u8, 1u8, 20u8, 101u8, 114u8, 114u8, 111u8, 114u8, 56u8, 1u8, 140u8, 91u8, 117u8, 56u8, 59u8,
32u8, 77u8, 65u8, 88u8, 95u8, 77u8, 79u8, 68u8, 85u8, 76u8, 69u8, 95u8, 69u8, 82u8, 82u8, 79u8,
82u8, 95u8, 69u8, 78u8, 67u8, 79u8, 68u8, 69u8, 68u8, 95u8, 83u8, 73u8, 90u8, 69u8, 93u8, 0u8,
0u8, 96u8, 8u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 40u8,
84u8, 111u8, 107u8, 101u8, 110u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 1u8, 28u8, 28u8, 78u8,
111u8, 70u8, 117u8, 110u8, 100u8, 115u8, 0u8, 0u8, 0u8, 32u8, 87u8, 111u8, 117u8, 108u8, 100u8,
68u8, 105u8, 101u8, 0u8, 1u8, 0u8, 48u8, 66u8, 101u8, 108u8, 111u8, 119u8, 77u8, 105u8, 110u8,
105u8, 109u8, 117u8, 109u8, 0u8, 2u8, 0u8, 48u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 67u8,
114u8, 101u8, 97u8, 116u8, 101u8, 0u8, 3u8, 0u8, 48u8, 85u8, 110u8, 107u8, 110u8, 111u8, 119u8,
110u8, 65u8, 115u8, 115u8, 101u8, 116u8, 0u8, 4u8, 0u8, 24u8, 70u8, 114u8, 111u8, 122u8, 101u8,
110u8, 0u8, 5u8, 0u8, 44u8, 85u8, 110u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 101u8,
100u8, 0u8, 6u8, 0u8, 0u8, 100u8, 8u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 60u8, 65u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8,
69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 1u8, 12u8, 36u8, 85u8, 110u8, 100u8, 101u8, 114u8, 102u8,
108u8, 111u8, 119u8, 0u8, 0u8, 0u8, 32u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8,
0u8, 1u8, 0u8, 56u8, 68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 111u8, 110u8, 66u8, 121u8, 90u8,
101u8, 114u8, 111u8, 0u8, 2u8, 0u8, 0u8, 104u8, 8u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 72u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 97u8, 108u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 1u8, 8u8, 48u8, 76u8,
105u8, 109u8, 105u8, 116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 0u8, 0u8, 0u8, 28u8,
78u8, 111u8, 76u8, 97u8, 121u8, 101u8, 114u8, 0u8, 1u8, 0u8, 0u8, 108u8, 12u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 24u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 4u8, 84u8, 0u8,
1u8, 12u8, 52u8, 73u8, 110u8, 100u8, 101u8, 120u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 8u8, 1u8, 12u8, 119u8, 104u8, 111u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8,
16u8, 1u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 0u8, 4u8, 116u8, 65u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 115u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 40u8, 73u8, 110u8, 100u8, 101u8, 120u8, 70u8,
114u8, 101u8, 101u8, 100u8, 4u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 60u8,
84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8,
0u8, 1u8, 4u8, 188u8, 65u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8,
110u8, 100u8, 101u8, 120u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
102u8, 114u8, 101u8, 101u8, 100u8, 32u8, 117u8, 112u8, 32u8, 40u8, 117u8, 110u8, 97u8, 115u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 41u8, 46u8, 44u8, 73u8, 110u8, 100u8, 101u8, 120u8,
70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 8u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8,
1u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8,
101u8, 120u8, 0u8, 1u8, 12u8, 119u8, 104u8, 111u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 2u8, 4u8, 232u8, 65u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 32u8,
116u8, 111u8, 32u8, 105u8, 116u8, 115u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 73u8, 68u8, 46u8, 4u8, 153u8, 1u8,
10u8, 9u8, 9u8, 9u8, 84u8, 104u8, 101u8, 32u8, 91u8, 101u8, 118u8, 101u8, 110u8, 116u8, 93u8,
40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8,
115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8,
51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8,
116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8,
32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 10u8, 9u8, 9u8, 9u8, 98u8, 121u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8,
9u8, 112u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8,
111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8,
115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 115u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 28u8, 28u8, 69u8, 110u8, 100u8,
111u8, 119u8, 101u8, 100u8, 12u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 0u8,
1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 4u8, 49u8, 1u8, 65u8, 110u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8,
116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8,
102u8, 114u8, 101u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 32u8, 92u8,
91u8, 100u8, 105u8, 100u8, 44u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8,
102u8, 114u8, 101u8, 101u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 93u8, 32u8, 84u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 24u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
62u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 124u8, 1u8, 48u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8,
101u8, 109u8, 111u8, 62u8, 0u8, 1u8, 4u8, 244u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 40u8, 102u8,
114u8, 111u8, 109u8, 95u8, 100u8, 105u8, 100u8, 44u8, 32u8, 102u8, 114u8, 111u8, 109u8, 44u8,
32u8, 116u8, 111u8, 95u8, 100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 111u8, 44u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 44u8, 32u8, 109u8, 101u8, 109u8, 111u8, 41u8, 46u8, 40u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 83u8, 101u8, 116u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
2u8, 4u8, 212u8, 65u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 119u8, 97u8,
115u8, 32u8, 115u8, 101u8, 116u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 32u8,
40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 119u8, 104u8, 111u8, 44u8, 32u8, 102u8, 114u8, 101u8,
101u8, 44u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 41u8, 46u8, 80u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 66u8,
117u8, 114u8, 110u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 3u8, 8u8, 61u8, 1u8, 84u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8,
32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
119u8, 97u8, 115u8, 32u8, 98u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8, 140u8, 40u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 73u8, 100u8, 44u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 41u8, 32u8, 82u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 8u8, 0u8, 0u8,
1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 4u8, 4u8, 25u8, 1u8, 83u8, 111u8, 109u8, 101u8,
32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8,
115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 40u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 102u8, 114u8, 101u8, 101u8, 32u8, 116u8, 111u8, 32u8, 114u8,
101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 41u8, 46u8, 32u8, 92u8, 91u8, 119u8, 104u8,
111u8, 44u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 93u8, 40u8, 85u8, 110u8, 114u8, 101u8,
115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 8u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 5u8, 4u8, 33u8, 1u8, 83u8, 111u8, 109u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 110u8, 114u8, 101u8, 115u8, 101u8,
114u8, 118u8, 101u8, 100u8, 32u8, 40u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 102u8, 114u8, 101u8, 101u8, 41u8, 46u8, 32u8, 92u8, 91u8, 119u8, 104u8, 111u8, 44u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 93u8, 72u8, 82u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8,
82u8, 101u8, 112u8, 97u8, 116u8, 114u8, 105u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8, 0u8, 1u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 132u8, 1u8, 24u8, 83u8, 116u8, 97u8, 116u8, 117u8,
115u8, 0u8, 6u8, 12u8, 77u8, 1u8, 83u8, 111u8, 109u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8,
118u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8, 115u8,
116u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 46u8, 216u8, 70u8, 105u8, 110u8, 97u8, 108u8, 32u8, 97u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 110u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 121u8,
112u8, 101u8, 46u8, 160u8, 92u8, 91u8, 102u8, 114u8, 111u8, 109u8, 44u8, 32u8, 116u8, 111u8,
44u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 100u8, 101u8, 115u8, 116u8,
105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
93u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 116u8, 4u8, 24u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 120u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 120u8, 0u8, 0u8, 1u8,
0u8, 0u8, 120u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 44u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 95u8, 105u8, 100u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 56u8, 91u8, 117u8, 56u8, 59u8, 32u8,
85u8, 85u8, 73u8, 68u8, 95u8, 76u8, 69u8, 78u8, 93u8, 0u8, 0u8, 124u8, 4u8, 24u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 128u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8,
101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 128u8, 0u8, 0u8, 1u8, 0u8, 0u8,
128u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8,
109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8,
24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
115u8, 16u8, 77u8, 101u8, 109u8, 111u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8, 56u8,
59u8, 32u8, 51u8, 50u8, 93u8, 0u8, 0u8, 132u8, 20u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8,
95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8,
115u8, 24u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 16u8, 109u8, 105u8, 115u8, 99u8, 52u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8,
8u8, 16u8, 70u8, 114u8, 101u8, 101u8, 0u8, 0u8, 0u8, 32u8, 82u8, 101u8, 115u8, 101u8, 114u8,
118u8, 101u8, 100u8, 0u8, 1u8, 0u8, 0u8, 136u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8,
108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8,
101u8, 110u8, 116u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8,
0u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 1u8, 32u8, 1u8, 72u8, 40u8, 68u8, 105u8,
100u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 140u8, 1u8, 112u8, 86u8, 101u8, 99u8,
60u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 60u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 0u8, 12u8, 68u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8,
100u8, 46u8, 0u8, 136u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8,
114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 44u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 41u8, 72u8, 83u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 65u8, 100u8, 100u8, 101u8, 100u8,
8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 140u8, 1u8, 112u8, 86u8, 101u8, 99u8, 60u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 62u8, 0u8, 1u8, 12u8, 132u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 60u8, 40u8, 68u8,
73u8, 68u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 107u8, 101u8, 121u8, 115u8, 41u8, 80u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 232u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 2u8, 12u8, 148u8, 83u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 128u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8,
116u8, 104u8, 101u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
103u8, 111u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 41u8, 96u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 76u8, 101u8, 102u8,
116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 3u8, 12u8, 144u8, 65u8, 32u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 108u8,
101u8, 102u8, 116u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 80u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 41u8, 120u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 80u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
0u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 0u8, 0u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 0u8, 4u8, 12u8, 136u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8,
32u8, 107u8, 101u8, 121u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 13u8, 1u8, 40u8,
68u8, 73u8, 68u8, 44u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 44u8, 32u8, 112u8,
114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 41u8, 68u8, 80u8, 114u8, 105u8, 109u8,
97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 5u8, 12u8, 128u8, 80u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8,
101u8, 100u8, 46u8, 0u8, 164u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8, 32u8,
112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 73u8, 68u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 73u8,
68u8, 41u8, 40u8, 67u8, 108u8, 97u8, 105u8, 109u8, 65u8, 100u8, 100u8, 101u8, 100u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
236u8, 1u8, 52u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 67u8, 108u8, 97u8,
105u8, 109u8, 0u8, 6u8, 12u8, 96u8, 67u8, 108u8, 97u8, 105u8, 109u8, 32u8, 97u8, 100u8, 100u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 0u8, 48u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 41u8, 48u8,
67u8, 108u8, 97u8, 105u8, 109u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 8u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 236u8,
1u8, 52u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 67u8, 108u8, 97u8, 105u8,
109u8, 0u8, 7u8, 12u8, 112u8, 67u8, 108u8, 97u8, 105u8, 109u8, 32u8, 114u8, 101u8, 118u8, 111u8,
107u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 46u8, 0u8, 48u8, 40u8, 68u8, 73u8, 68u8, 44u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 41u8, 72u8, 65u8, 115u8, 115u8, 101u8, 116u8, 68u8, 105u8, 100u8, 82u8, 101u8,
103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 8u8, 12u8, 112u8, 65u8, 115u8, 115u8, 101u8, 116u8, 39u8, 115u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 114u8, 101u8, 103u8, 105u8,
115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 46u8, 0u8, 76u8, 40u8, 65u8, 115u8, 115u8, 101u8,
116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 72u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 65u8,
100u8, 100u8, 101u8, 100u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 5u8,
1u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 9u8,
1u8, 1u8, 112u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 68u8, 97u8, 116u8, 97u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 0u8, 0u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8,
111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 9u8, 12u8, 96u8, 78u8, 101u8, 119u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
100u8, 100u8, 101u8, 100u8, 46u8, 0u8, 49u8, 1u8, 40u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 115u8, 101u8, 100u8, 95u8, 98u8, 121u8, 44u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 95u8, 100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8,
107u8, 101u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 44u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 100u8,
97u8, 116u8, 97u8, 44u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 41u8, 80u8, 65u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 82u8, 101u8, 118u8,
111u8, 107u8, 101u8, 100u8, 12u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 5u8,
1u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 10u8, 12u8,
160u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 114u8, 46u8, 0u8,
184u8, 40u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 107u8, 101u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 41u8, 84u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 12u8,
0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 5u8, 1u8, 1u8, 68u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8,
0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 11u8, 12u8, 216u8, 65u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 106u8, 101u8,
99u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8,
101u8, 114u8, 32u8, 119u8, 104u8, 111u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 46u8, 0u8, 184u8, 40u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
95u8, 107u8, 101u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 41u8, 84u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 67u8,
111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 100u8, 12u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
62u8, 0u8, 0u8, 5u8, 1u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8,
52u8, 0u8, 12u8, 12u8, 92u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 100u8, 46u8, 0u8,
184u8, 40u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 107u8, 101u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 41u8, 120u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 82u8, 101u8, 116u8, 114u8, 121u8, 76u8, 105u8, 109u8, 105u8,
116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 12u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 62u8, 0u8, 0u8, 5u8, 1u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8,
54u8, 52u8, 0u8, 13u8, 12u8, 176u8, 65u8, 99u8, 99u8, 101u8, 112u8, 116u8, 105u8, 110u8, 103u8,
32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 114u8, 101u8, 116u8, 114u8, 121u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 114u8,
101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 0u8, 184u8, 40u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 107u8,
101u8, 121u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 41u8, 136u8, 67u8,
100u8, 100u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 70u8,
111u8, 114u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 85u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 4u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
14u8, 12u8, 196u8, 67u8, 68u8, 68u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
109u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8,
105u8, 110u8, 103u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 0u8, 68u8, 40u8, 110u8, 101u8,
119u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 41u8,
80u8, 67u8, 100u8, 100u8, 67u8, 108u8, 97u8, 105u8, 109u8, 115u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8,
101u8, 110u8, 116u8, 0u8, 15u8, 16u8, 65u8, 1u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 115u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 96u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
96u8, 32u8, 40u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8,
101u8, 114u8, 41u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 36u8, 96u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 96u8, 46u8, 0u8, 148u8, 40u8,
67u8, 68u8, 68u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 100u8, 97u8, 116u8, 101u8, 41u8, 76u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 4u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 16u8,
12u8, 196u8, 65u8, 108u8, 108u8, 32u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 73u8, 68u8, 32u8, 97u8, 114u8,
101u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 0u8, 20u8, 40u8, 68u8, 73u8, 68u8,
41u8, 84u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8,
115u8, 85u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 4u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 17u8, 12u8, 204u8, 65u8,
108u8, 108u8, 32u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8,
101u8, 121u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 73u8, 68u8, 32u8, 97u8, 114u8, 101u8, 32u8, 117u8,
110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 0u8, 20u8, 40u8, 68u8, 73u8, 68u8, 41u8,
8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 140u8, 0u8, 0u8,
2u8, 144u8, 0u8, 144u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 48u8, 83u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 8u8, 1u8, 12u8, 107u8, 101u8, 121u8, 0u8, 1u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 148u8, 1u8, 44u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 0u8, 148u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 95u8, 107u8, 101u8, 121u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 0u8, 0u8, 12u8, 1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 152u8, 1u8,
64u8, 65u8, 115u8, 115u8, 101u8, 116u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 0u8, 1u8, 36u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 172u8, 1u8, 80u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 36u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 208u8, 1u8, 80u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 0u8, 0u8, 152u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 24u8, 115u8,
117u8, 98u8, 115u8, 101u8, 116u8, 68u8, 83u8, 117u8, 98u8, 115u8, 101u8, 116u8, 82u8, 101u8,
115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 65u8, 1u8, 156u8, 1u8,
12u8, 20u8, 87u8, 104u8, 111u8, 108u8, 101u8, 0u8, 0u8, 0u8, 20u8, 84u8, 104u8, 101u8, 115u8,
101u8, 4u8, 0u8, 164u8, 1u8, 44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8,
65u8, 62u8, 0u8, 1u8, 0u8, 24u8, 69u8, 120u8, 99u8, 101u8, 112u8, 116u8, 4u8, 0u8, 164u8, 1u8,
44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8, 0u8, 2u8, 0u8, 0u8,
156u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8,
105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 4u8, 0u8, 160u8, 1u8, 64u8, 91u8,
117u8, 56u8, 59u8, 32u8, 84u8, 73u8, 67u8, 75u8, 69u8, 82u8, 95u8, 76u8, 69u8, 78u8, 93u8, 0u8,
0u8, 160u8, 0u8, 0u8, 3u8, 12u8, 0u8, 0u8, 0u8, 8u8, 0u8, 164u8, 4u8, 32u8, 66u8, 84u8, 114u8,
101u8, 101u8, 83u8, 101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 156u8, 0u8, 4u8, 0u8, 168u8, 0u8, 0u8,
0u8, 168u8, 0u8, 0u8, 2u8, 156u8, 0u8, 172u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8,
24u8, 115u8, 117u8, 98u8, 115u8, 101u8, 116u8, 68u8, 83u8, 117u8, 98u8, 115u8, 101u8, 116u8,
82u8, 101u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 65u8, 1u8,
176u8, 1u8, 12u8, 20u8, 87u8, 104u8, 111u8, 108u8, 101u8, 0u8, 0u8, 0u8, 20u8, 84u8, 104u8,
101u8, 115u8, 101u8, 4u8, 0u8, 200u8, 1u8, 44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8,
116u8, 60u8, 65u8, 62u8, 0u8, 1u8, 0u8, 24u8, 69u8, 120u8, 99u8, 101u8, 112u8, 116u8, 4u8, 0u8,
200u8, 1u8, 44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8, 0u8,
2u8, 0u8, 0u8, 176u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 68u8, 80u8, 97u8, 108u8,
108u8, 101u8, 116u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
0u8, 0u8, 8u8, 1u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 110u8, 97u8, 109u8,
101u8, 180u8, 1u8, 40u8, 80u8, 97u8, 108u8, 108u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8,
1u8, 72u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 95u8,
110u8, 97u8, 109u8, 101u8, 115u8, 184u8, 1u8, 68u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 78u8, 97u8, 109u8, 101u8, 115u8, 0u8, 0u8, 180u8, 8u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 80u8, 97u8, 108u8, 108u8, 101u8, 116u8, 78u8, 97u8,
109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8,
0u8, 0u8, 184u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 24u8, 115u8, 117u8, 98u8, 115u8,
101u8, 116u8, 68u8, 83u8, 117u8, 98u8, 115u8, 101u8, 116u8, 82u8, 101u8, 115u8, 116u8, 114u8,
105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 65u8, 1u8, 188u8, 1u8, 12u8, 20u8, 87u8,
104u8, 111u8, 108u8, 101u8, 0u8, 0u8, 0u8, 20u8, 84u8, 104u8, 101u8, 115u8, 101u8, 4u8, 0u8,
192u8, 1u8, 44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8, 0u8,
1u8, 0u8, 24u8, 69u8, 120u8, 99u8, 101u8, 112u8, 116u8, 4u8, 0u8, 192u8, 1u8, 44u8, 66u8, 84u8,
114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8, 0u8, 2u8, 0u8, 0u8, 188u8, 8u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 64u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
97u8, 98u8, 108u8, 101u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8,
101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 192u8, 4u8, 32u8, 66u8, 84u8, 114u8, 101u8,
101u8, 83u8, 101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 188u8, 0u8, 4u8, 0u8, 196u8, 0u8, 0u8, 0u8,
196u8, 0u8, 0u8, 2u8, 188u8, 0u8, 200u8, 4u8, 32u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8,
116u8, 4u8, 4u8, 84u8, 1u8, 176u8, 0u8, 4u8, 0u8, 204u8, 0u8, 0u8, 0u8, 204u8, 0u8, 0u8, 2u8,
176u8, 0u8, 208u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 24u8, 115u8, 117u8, 98u8,
115u8, 101u8, 116u8, 68u8, 83u8, 117u8, 98u8, 115u8, 101u8, 116u8, 82u8, 101u8, 115u8, 116u8,
114u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 65u8, 1u8, 212u8, 1u8, 12u8, 20u8,
87u8, 104u8, 111u8, 108u8, 101u8, 0u8, 0u8, 0u8, 20u8, 84u8, 104u8, 101u8, 115u8, 101u8, 4u8,
0u8, 224u8, 1u8, 44u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8,
0u8, 1u8, 0u8, 24u8, 69u8, 120u8, 99u8, 101u8, 112u8, 116u8, 4u8, 0u8, 224u8, 1u8, 44u8, 66u8,
84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 65u8, 62u8, 0u8, 2u8, 0u8, 0u8, 212u8, 12u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 95u8, 105u8, 100u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
73u8, 100u8, 0u8, 0u8, 8u8, 1u8, 12u8, 100u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 16u8, 107u8, 105u8, 110u8, 100u8,
216u8, 1u8, 52u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 75u8, 105u8,
110u8, 100u8, 0u8, 0u8, 216u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 44u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 105u8, 100u8, 52u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 8u8, 28u8, 68u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 0u8, 0u8, 0u8, 16u8, 85u8, 115u8, 101u8, 114u8, 4u8,
0u8, 220u8, 1u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 0u8, 0u8, 220u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 105u8, 100u8, 60u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 224u8, 4u8, 32u8, 66u8,
84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 212u8, 0u8, 4u8, 0u8, 228u8,
0u8, 0u8, 0u8, 228u8, 0u8, 0u8, 2u8, 212u8, 0u8, 232u8, 0u8, 0u8, 2u8, 0u8, 0u8, 236u8, 12u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 52u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 0u8, 20u8, 1u8, 48u8, 99u8, 108u8, 97u8,
105u8, 109u8, 95u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 52u8, 105u8, 115u8, 115u8,
117u8, 97u8, 110u8, 99u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 64u8, 108u8, 97u8, 115u8, 116u8, 95u8, 117u8, 112u8, 100u8,
97u8, 116u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 56u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8,
20u8, 99u8, 108u8, 97u8, 105u8, 109u8, 244u8, 1u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8,
0u8, 240u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 32u8, 1u8,
8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8,
32u8, 0u8, 0u8, 1u8, 0u8, 0u8, 244u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8,
20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 1u8, 48u8, 40u8, 65u8, 99u8, 99u8, 114u8, 101u8,
100u8, 105u8, 116u8, 101u8, 100u8, 4u8, 0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8,
0u8, 0u8, 0u8, 36u8, 65u8, 102u8, 102u8, 105u8, 108u8, 105u8, 97u8, 116u8, 101u8, 4u8, 0u8,
248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 0u8, 36u8, 66u8, 117u8, 121u8, 76u8,
111u8, 99u8, 107u8, 117u8, 112u8, 4u8, 0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8,
0u8, 2u8, 0u8, 40u8, 83u8, 101u8, 108u8, 108u8, 76u8, 111u8, 99u8, 107u8, 117u8, 112u8, 4u8, 0u8,
248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 3u8, 0u8, 80u8, 67u8, 117u8, 115u8,
116u8, 111u8, 109u8, 101u8, 114u8, 68u8, 117u8, 101u8, 68u8, 105u8, 108u8, 105u8, 103u8, 101u8,
110u8, 99u8, 101u8, 4u8, 0u8, 252u8, 1u8, 20u8, 67u8, 100u8, 100u8, 73u8, 100u8, 0u8, 4u8, 0u8,
64u8, 75u8, 110u8, 111u8, 119u8, 89u8, 111u8, 117u8, 114u8, 67u8, 117u8, 115u8, 116u8, 111u8,
109u8, 101u8, 114u8, 4u8, 0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 5u8, 0u8,
48u8, 74u8, 117u8, 114u8, 105u8, 115u8, 100u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 8u8, 0u8,
1u8, 1u8, 1u8, 44u8, 67u8, 111u8, 117u8, 110u8, 116u8, 114u8, 121u8, 67u8, 111u8, 100u8, 101u8,
0u8, 0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 6u8, 0u8, 32u8, 69u8, 120u8,
101u8, 109u8, 112u8, 116u8, 101u8, 100u8, 4u8, 0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8,
101u8, 0u8, 7u8, 0u8, 28u8, 66u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 4u8, 0u8, 248u8, 1u8,
20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 8u8, 0u8, 72u8, 73u8, 110u8, 118u8, 101u8, 115u8,
116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 12u8,
0u8, 248u8, 1u8, 20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 0u8, 120u8, 1u8, 28u8, 83u8, 99u8,
111u8, 112u8, 101u8, 73u8, 100u8, 0u8, 0u8, 252u8, 1u8, 20u8, 67u8, 100u8, 100u8, 73u8, 100u8,
0u8, 9u8, 0u8, 24u8, 78u8, 111u8, 68u8, 97u8, 116u8, 97u8, 0u8, 10u8, 0u8, 80u8, 73u8, 110u8,
118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8,
115u8, 115u8, 86u8, 50u8, 4u8, 0u8, 252u8, 1u8, 20u8, 67u8, 100u8, 100u8, 73u8, 100u8, 0u8, 11u8,
0u8, 0u8, 248u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 20u8, 83u8, 99u8, 111u8,
112u8, 101u8, 0u8, 1u8, 12u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 4u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 0u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 4u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 0u8, 24u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 4u8,
0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 2u8, 0u8, 0u8, 252u8,
12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8,
109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 24u8, 99u8, 100u8, 100u8, 95u8, 105u8, 100u8,
20u8, 67u8, 100u8, 100u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8, 56u8,
59u8, 32u8, 51u8, 50u8, 93u8, 0u8, 0u8, 1u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8,
48u8, 106u8, 117u8, 114u8, 105u8, 115u8, 100u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 44u8,
67u8, 111u8, 117u8, 110u8, 116u8, 114u8, 121u8, 67u8, 111u8, 100u8, 101u8, 0u8, 1u8, 233u8, 3u8,
8u8, 65u8, 70u8, 0u8, 0u8, 0u8, 8u8, 65u8, 88u8, 0u8, 1u8, 0u8, 8u8, 65u8, 76u8, 0u8, 2u8, 0u8,
8u8, 68u8, 90u8, 0u8, 3u8, 0u8, 8u8, 65u8, 83u8, 0u8, 4u8, 0u8, 8u8, 65u8, 68u8, 0u8, 5u8, 0u8,
8u8, 65u8, 79u8, 0u8, 6u8, 0u8, 8u8, 65u8, 73u8, 0u8, 7u8, 0u8, 8u8, 65u8, 81u8, 0u8, 8u8, 0u8,
8u8, 65u8, 71u8, 0u8, 9u8, 0u8, 8u8, 65u8, 82u8, 0u8, 10u8, 0u8, 8u8, 65u8, 77u8, 0u8, 11u8, 0u8,
8u8, 65u8, 87u8, 0u8, 12u8, 0u8, 8u8, 65u8, 85u8, 0u8, 13u8, 0u8, 8u8, 65u8, 84u8, 0u8, 14u8,
0u8, 8u8, 65u8, 90u8, 0u8, 15u8, 0u8, 8u8, 66u8, 83u8, 0u8, 16u8, 0u8, 8u8, 66u8, 72u8, 0u8,
17u8, 0u8, 8u8, 66u8, 68u8, 0u8, 18u8, 0u8, 8u8, 66u8, 66u8, 0u8, 19u8, 0u8, 8u8, 66u8, 89u8,
0u8, 20u8, 0u8, 8u8, 66u8, 69u8, 0u8, 21u8, 0u8, 8u8, 66u8, 90u8, 0u8, 22u8, 0u8, 8u8, 66u8,
74u8, 0u8, 23u8, 0u8, 8u8, 66u8, 77u8, 0u8, 24u8, 0u8, 8u8, 66u8, 84u8, 0u8, 25u8, 0u8, 8u8,
66u8, 79u8, 0u8, 26u8, 0u8, 8u8, 66u8, 65u8, 0u8, 27u8, 0u8, 8u8, 66u8, 87u8, 0u8, 28u8, 0u8,
8u8, 66u8, 86u8, 0u8, 29u8, 0u8, 8u8, 66u8, 82u8, 0u8, 30u8, 0u8, 8u8, 86u8, 71u8, 0u8, 31u8,
0u8, 8u8, 73u8, 79u8, 0u8, 32u8, 0u8, 8u8, 66u8, 78u8, 0u8, 33u8, 0u8, 8u8, 66u8, 71u8, 0u8,
34u8, 0u8, 8u8, 66u8, 70u8, 0u8, 35u8, 0u8, 8u8, 66u8, 73u8, 0u8, 36u8, 0u8, 8u8, 75u8, 72u8,
0u8, 37u8, 0u8, 8u8, 67u8, 77u8, 0u8, 38u8, 0u8, 8u8, 67u8, 65u8, 0u8, 39u8, 0u8, 8u8, 67u8,
86u8, 0u8, 40u8, 0u8, 8u8, 75u8, 89u8, 0u8, 41u8, 0u8, 8u8, 67u8, 70u8, 0u8, 42u8, 0u8, 8u8,
84u8, 68u8, 0u8, 43u8, 0u8, 8u8, 67u8, 76u8, 0u8, 44u8, 0u8, 8u8, 67u8, 78u8, 0u8, 45u8, 0u8,
8u8, 72u8, 75u8, 0u8, 46u8, 0u8, 8u8, 77u8, 79u8, 0u8, 47u8, 0u8, 8u8, 67u8, 88u8, 0u8, 48u8,
0u8, 8u8, 67u8, 67u8, 0u8, 49u8, 0u8, 8u8, 67u8, 79u8, 0u8, 50u8, 0u8, 8u8, 75u8, 77u8, 0u8,
51u8, 0u8, 8u8, 67u8, 71u8, 0u8, 52u8, 0u8, 8u8, 67u8, 68u8, 0u8, 53u8, 0u8, 8u8, 67u8, 75u8,
0u8, 54u8, 0u8, 8u8, 67u8, 82u8, 0u8, 55u8, 0u8, 8u8, 67u8, 73u8, 0u8, 56u8, 0u8, 8u8, 72u8,
82u8, 0u8, 57u8, 0u8, 8u8, 67u8, 85u8, 0u8, 58u8, 0u8, 8u8, 67u8, 89u8, 0u8, 59u8, 0u8, 8u8,
67u8, 90u8, 0u8, 60u8, 0u8, 8u8, 68u8, 75u8, 0u8, 61u8, 0u8, 8u8, 68u8, 74u8, 0u8, 62u8, 0u8,
8u8, 68u8, 77u8, 0u8, 63u8, 0u8, 8u8, 68u8, 79u8, 0u8, 64u8, 0u8, 8u8, 69u8, 67u8, 0u8, 65u8,
0u8, 8u8, 69u8, 71u8, 0u8, 66u8, 0u8, 8u8, 83u8, 86u8, 0u8, 67u8, 0u8, 8u8, 71u8, 81u8, 0u8,
68u8, 0u8, 8u8, 69u8, 82u8, 0u8, 69u8, 0u8, 8u8, 69u8, 69u8, 0u8, 70u8, 0u8, 8u8, 69u8, 84u8,
0u8, 71u8, 0u8, 8u8, 70u8, 75u8, 0u8, 72u8, 0u8, 8u8, 70u8, 79u8, 0u8, 73u8, 0u8, 8u8, 70u8,
74u8, 0u8, 74u8, 0u8, 8u8, 70u8, 73u8, 0u8, 75u8, 0u8, 8u8, 70u8, 82u8, 0u8, 76u8, 0u8, 8u8,
71u8, 70u8, 0u8, 77u8, 0u8, 8u8, 80u8, 70u8, 0u8, 78u8, 0u8, 8u8, 84u8, 70u8, 0u8, 79u8, 0u8,
8u8, 71u8, 65u8, 0u8, 80u8, 0u8, 8u8, 71u8, 77u8, 0u8, 81u8, 0u8, 8u8, 71u8, 69u8, 0u8, 82u8,
0u8, 8u8, 68u8, 69u8, 0u8, 83u8, 0u8, 8u8, 71u8, 72u8, 0u8, 84u8, 0u8, 8u8, 71u8, 73u8, 0u8,
85u8, 0u8, 8u8, 71u8, 82u8, 0u8, 86u8, 0u8, 8u8, 71u8, 76u8, 0u8, 87u8, 0u8, 8u8, 71u8, 68u8,
0u8, 88u8, 0u8, 8u8, 71u8, 80u8, 0u8, 89u8, 0u8, 8u8, 71u8, 85u8, 0u8, 90u8, 0u8, 8u8, 71u8,
84u8, 0u8, 91u8, 0u8, 8u8, 71u8, 71u8, 0u8, 92u8, 0u8, 8u8, 71u8, 78u8, 0u8, 93u8, 0u8, 8u8,
71u8, 87u8, 0u8, 94u8, 0u8, 8u8, 71u8, 89u8, 0u8, 95u8, 0u8, 8u8, 72u8, 84u8, 0u8, 96u8, 0u8,
8u8, 72u8, 77u8, 0u8, 97u8, 0u8, 8u8, 86u8, 65u8, 0u8, 98u8, 0u8, 8u8, 72u8, 78u8, 0u8, 99u8,
0u8, 8u8, 72u8, 85u8, 0u8, 100u8, 0u8, 8u8, 73u8, 83u8, 0u8, 101u8, 0u8, 8u8, 73u8, 78u8, 0u8,
102u8, 0u8, 8u8, 73u8, 68u8, 0u8, 103u8, 0u8, 8u8, 73u8, 82u8, 0u8, 104u8, 0u8, 8u8, 73u8, 81u8,
0u8, 105u8, 0u8, 8u8, 73u8, 69u8, 0u8, 106u8, 0u8, 8u8, 73u8, 77u8, 0u8, 107u8, 0u8, 8u8, 73u8,
76u8, 0u8, 108u8, 0u8, 8u8, 73u8, 84u8, 0u8, 109u8, 0u8, 8u8, 74u8, 77u8, 0u8, 110u8, 0u8, 8u8,
74u8, 80u8, 0u8, 111u8, 0u8, 8u8, 74u8, 69u8, 0u8, 112u8, 0u8, 8u8, 74u8, 79u8, 0u8, 113u8, 0u8,
8u8, 75u8, 90u8, 0u8, 114u8, 0u8, 8u8, 75u8, 69u8, 0u8, 115u8, 0u8, 8u8, 75u8, 73u8, 0u8, 116u8,
0u8, 8u8, 75u8, 80u8, 0u8, 117u8, 0u8, 8u8, 75u8, 82u8, 0u8, 118u8, 0u8, 8u8, 75u8, 87u8, 0u8,
119u8, 0u8, 8u8, 75u8, 71u8, 0u8, 120u8, 0u8, 8u8, 76u8, 65u8, 0u8, 121u8, 0u8, 8u8, 76u8, 86u8,
0u8, 122u8, 0u8, 8u8, 76u8, 66u8, 0u8, 123u8, 0u8, 8u8, 76u8, 83u8, 0u8, 124u8, 0u8, 8u8, 76u8,
82u8, 0u8, 125u8, 0u8, 8u8, 76u8, 89u8, 0u8, 126u8, 0u8, 8u8, 76u8, 73u8, 0u8, 127u8, 0u8, 8u8,
76u8, 84u8, 0u8, 128u8, 0u8, 8u8, 76u8, 85u8, 0u8, 129u8, 0u8, 8u8, 77u8, 75u8, 0u8, 130u8, 0u8,
8u8, 77u8, 71u8, 0u8, 131u8, 0u8, 8u8, 77u8, 87u8, 0u8, 132u8, 0u8, 8u8, 77u8, 89u8, 0u8, 133u8,
0u8, 8u8, 77u8, 86u8, 0u8, 134u8, 0u8, 8u8, 77u8, 76u8, 0u8, 135u8, 0u8, 8u8, 77u8, 84u8, 0u8,
136u8, 0u8, 8u8, 77u8, 72u8, 0u8, 137u8, 0u8, 8u8, 77u8, 81u8, 0u8, 138u8, 0u8, 8u8, 77u8, 82u8,
0u8, 139u8, 0u8, 8u8, 77u8, 85u8, 0u8, 140u8, 0u8, 8u8, 89u8, 84u8, 0u8, 141u8, 0u8, 8u8, 77u8,
88u8, 0u8, 142u8, 0u8, 8u8, 70u8, 77u8, 0u8, 143u8, 0u8, 8u8, 77u8, 68u8, 0u8, 144u8, 0u8, 8u8,
77u8, 67u8, 0u8, 145u8, 0u8, 8u8, 77u8, 78u8, 0u8, 146u8, 0u8, 8u8, 77u8, 69u8, 0u8, 147u8, 0u8,
8u8, 77u8, 83u8, 0u8, 148u8, 0u8, 8u8, 77u8, 65u8, 0u8, 149u8, 0u8, 8u8, 77u8, 90u8, 0u8, 150u8,
0u8, 8u8, 77u8, 77u8, 0u8, 151u8, 0u8, 8u8, 78u8, 65u8, 0u8, 152u8, 0u8, 8u8, 78u8, 82u8, 0u8,
153u8, 0u8, 8u8, 78u8, 80u8, 0u8, 154u8, 0u8, 8u8, 78u8, 76u8, 0u8, 155u8, 0u8, 8u8, 65u8, 78u8,
0u8, 156u8, 0u8, 8u8, 78u8, 67u8, 0u8, 157u8, 0u8, 8u8, 78u8, 90u8, 0u8, 158u8, 0u8, 8u8, 78u8,
73u8, 0u8, 159u8, 0u8, 8u8, 78u8, 69u8, 0u8, 160u8, 0u8, 8u8, 78u8, 71u8, 0u8, 161u8, 0u8, 8u8,
78u8, 85u8, 0u8, 162u8, 0u8, 8u8, 78u8, 70u8, 0u8, 163u8, 0u8, 8u8, 77u8, 80u8, 0u8, 164u8, 0u8,
8u8, 78u8, 79u8, 0u8, 165u8, 0u8, 8u8, 79u8, 77u8, 0u8, 166u8, 0u8, 8u8, 80u8, 75u8, 0u8, 167u8,
0u8, 8u8, 80u8, 87u8, 0u8, 168u8, 0u8, 8u8, 80u8, 83u8, 0u8, 169u8, 0u8, 8u8, 80u8, 65u8, 0u8,
170u8, 0u8, 8u8, 80u8, 71u8, 0u8, 171u8, 0u8, 8u8, 80u8, 89u8, 0u8, 172u8, 0u8, 8u8, 80u8, 69u8,
0u8, 173u8, 0u8, 8u8, 80u8, 72u8, 0u8, 174u8, 0u8, 8u8, 80u8, 78u8, 0u8, 175u8, 0u8, 8u8, 80u8,
76u8, 0u8, 176u8, 0u8, 8u8, 80u8, 84u8, 0u8, 177u8, 0u8, 8u8, 80u8, 82u8, 0u8, 178u8, 0u8, 8u8,
81u8, 65u8, 0u8, 179u8, 0u8, 8u8, 82u8, 69u8, 0u8, 180u8, 0u8, 8u8, 82u8, 79u8, 0u8, 181u8, 0u8,
8u8, 82u8, 85u8, 0u8, 182u8, 0u8, 8u8, 82u8, 87u8, 0u8, 183u8, 0u8, 8u8, 66u8, 76u8, 0u8, 184u8,
0u8, 8u8, 83u8, 72u8, 0u8, 185u8, 0u8, 8u8, 75u8, 78u8, 0u8, 186u8, 0u8, 8u8, 76u8, 67u8, 0u8,
187u8, 0u8, 8u8, 77u8, 70u8, 0u8, 188u8, 0u8, 8u8, 80u8, 77u8, 0u8, 189u8, 0u8, 8u8, 86u8, 67u8,
0u8, 190u8, 0u8, 8u8, 87u8, 83u8, 0u8, 191u8, 0u8, 8u8, 83u8, 77u8, 0u8, 192u8, 0u8, 8u8, 83u8,
84u8, 0u8, 193u8, 0u8, 8u8, 83u8, 65u8, 0u8, 194u8, 0u8, 8u8, 83u8, 78u8, 0u8, 195u8, 0u8, 8u8,
82u8, 83u8, 0u8, 196u8, 0u8, 8u8, 83u8, 67u8, 0u8, 197u8, 0u8, 8u8, 83u8, 76u8, 0u8, 198u8, 0u8,
8u8, 83u8, 71u8, 0u8, 199u8, 0u8, 8u8, 83u8, 75u8, 0u8, 200u8, 0u8, 8u8, 83u8, 73u8, 0u8, 201u8,
0u8, 8u8, 83u8, 66u8, 0u8, 202u8, 0u8, 8u8, 83u8, 79u8, 0u8, 203u8, 0u8, 8u8, 90u8, 65u8, 0u8,
204u8, 0u8, 8u8, 71u8, 83u8, 0u8, 205u8, 0u8, 8u8, 83u8, 83u8, 0u8, 206u8, 0u8, 8u8, 69u8, 83u8,
0u8, 207u8, 0u8, 8u8, 76u8, 75u8, 0u8, 208u8, 0u8, 8u8, 83u8, 68u8, 0u8, 209u8, 0u8, 8u8, 83u8,
82u8, 0u8, 210u8, 0u8, 8u8, 83u8, 74u8, 0u8, 211u8, 0u8, 8u8, 83u8, 90u8, 0u8, 212u8, 0u8, 8u8,
83u8, 69u8, 0u8, 213u8, 0u8, 8u8, 67u8, 72u8, 0u8, 214u8, 0u8, 8u8, 83u8, 89u8, 0u8, 215u8, 0u8,
8u8, 84u8, 87u8, 0u8, 216u8, 0u8, 8u8, 84u8, 74u8, 0u8, 217u8, 0u8, 8u8, 84u8, 90u8, 0u8, 218u8,
0u8, 8u8, 84u8, 72u8, 0u8, 219u8, 0u8, 8u8, 84u8, 76u8, 0u8, 220u8, 0u8, 8u8, 84u8, 71u8, 0u8,
221u8, 0u8, 8u8, 84u8, 75u8, 0u8, 222u8, 0u8, 8u8, 84u8, 79u8, 0u8, 223u8, 0u8, 8u8, 84u8, 84u8,
0u8, 224u8, 0u8, 8u8, 84u8, 78u8, 0u8, 225u8, 0u8, 8u8, 84u8, 82u8, 0u8, 226u8, 0u8, 8u8, 84u8,
77u8, 0u8, 227u8, 0u8, 8u8, 84u8, 67u8, 0u8, 228u8, 0u8, 8u8, 84u8, 86u8, 0u8, 229u8, 0u8, 8u8,
85u8, 71u8, 0u8, 230u8, 0u8, 8u8, 85u8, 65u8, 0u8, 231u8, 0u8, 8u8, 65u8, 69u8, 0u8, 232u8, 0u8,
8u8, 71u8, 66u8, 0u8, 233u8, 0u8, 8u8, 85u8, 83u8, 0u8, 234u8, 0u8, 8u8, 85u8, 77u8, 0u8, 235u8,
0u8, 8u8, 85u8, 89u8, 0u8, 236u8, 0u8, 8u8, 85u8, 90u8, 0u8, 237u8, 0u8, 8u8, 86u8, 85u8, 0u8,
238u8, 0u8, 8u8, 86u8, 69u8, 0u8, 239u8, 0u8, 8u8, 86u8, 78u8, 0u8, 240u8, 0u8, 8u8, 86u8, 73u8,
0u8, 241u8, 0u8, 8u8, 87u8, 70u8, 0u8, 242u8, 0u8, 8u8, 69u8, 72u8, 0u8, 243u8, 0u8, 8u8, 89u8,
69u8, 0u8, 244u8, 0u8, 8u8, 90u8, 77u8, 0u8, 245u8, 0u8, 8u8, 90u8, 87u8, 0u8, 246u8, 0u8, 8u8,
66u8, 81u8, 0u8, 247u8, 0u8, 8u8, 67u8, 87u8, 0u8, 248u8, 0u8, 8u8, 83u8, 88u8, 0u8, 249u8, 0u8,
0u8, 5u8, 1u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 0u8, 1u8,
8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8,
0u8, 0u8, 0u8, 1u8, 0u8, 0u8, 9u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 68u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 68u8,
97u8, 116u8, 97u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8,
0u8, 1u8, 40u8, 96u8, 65u8, 116u8, 116u8, 101u8, 115u8, 116u8, 80u8, 114u8, 105u8, 109u8, 97u8,
114u8, 121u8, 75u8, 101u8, 121u8, 82u8, 111u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
0u8, 64u8, 82u8, 111u8, 116u8, 97u8, 116u8, 101u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8,
75u8, 101u8, 121u8, 0u8, 1u8, 0u8, 56u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 4u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 0u8, 2u8, 0u8, 68u8, 65u8, 100u8, 100u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8,
105u8, 103u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 3u8, 0u8, 88u8, 84u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 65u8, 115u8, 115u8, 101u8, 116u8, 79u8, 119u8, 110u8, 101u8, 114u8,
115u8, 104u8, 105u8, 112u8, 4u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 4u8, 0u8, 48u8, 74u8, 111u8, 105u8, 110u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 4u8, 0u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 0u8, 5u8, 0u8, 64u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
67u8, 117u8, 115u8, 116u8, 111u8, 100u8, 121u8, 4u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 6u8, 0u8, 44u8, 66u8, 101u8, 99u8,
111u8, 109u8, 101u8, 65u8, 103u8, 101u8, 110u8, 116u8, 8u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 13u8, 1u8, 1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8,
71u8, 114u8, 111u8, 117u8, 112u8, 0u8, 7u8, 0u8, 76u8, 65u8, 100u8, 100u8, 82u8, 101u8, 108u8,
97u8, 121u8, 101u8, 114u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 12u8, 0u8,
0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 8u8, 0u8, 108u8, 82u8, 111u8, 116u8, 97u8, 116u8,
101u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 84u8, 111u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 4u8, 0u8, 148u8, 1u8, 44u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 9u8, 0u8, 0u8, 13u8, 1u8,
12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8,
109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 20u8, 97u8, 103u8, 101u8, 110u8, 116u8, 40u8,
65u8, 103u8, 101u8, 110u8, 116u8, 71u8, 114u8, 111u8, 117u8, 112u8, 0u8, 1u8, 20u8, 16u8, 70u8,
117u8, 108u8, 108u8, 0u8, 0u8, 0u8, 24u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 4u8, 0u8,
17u8, 1u8, 1u8, 16u8, 65u8, 71u8, 73u8, 100u8, 0u8, 1u8, 0u8, 40u8, 69u8, 120u8, 99u8, 101u8,
112u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 2u8, 0u8, 52u8, 80u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 86u8, 49u8, 67u8, 65u8, 65u8, 0u8, 3u8, 0u8, 52u8, 80u8, 111u8, 108u8,
121u8, 109u8, 101u8, 115u8, 104u8, 86u8, 49u8, 80u8, 73u8, 65u8, 0u8, 4u8, 0u8, 0u8, 17u8, 1u8,
12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8,
109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 20u8, 97u8, 103u8, 101u8, 110u8, 116u8, 16u8,
65u8, 71u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 21u8,
1u8, 0u8, 0u8, 5u8, 0u8, 0u8, 25u8, 1u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8,
105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 20u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 12u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 20u8, 69u8, 118u8,
101u8, 110u8, 116u8, 1u8, 68u8, 4u8, 73u8, 1u8, 29u8, 1u8, 1u8, 28u8, 44u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 65u8, 100u8, 100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 8u8, 224u8, 84u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
119u8, 97u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 108u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 46u8, 52u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 8u8, 232u8, 84u8, 104u8,
101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 59u8, 32u8,
115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8,
160u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8,
101u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 52u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 8u8, 228u8,
84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8,
118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8,
102u8, 105u8, 99u8, 32u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8,
46u8, 160u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
103u8, 101u8, 116u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 46u8, 56u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 83u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 12u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
3u8, 8u8, 216u8, 84u8, 119u8, 111u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8,
119u8, 101u8, 114u8, 101u8, 32u8, 115u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 59u8, 32u8,
115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8,
148u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8,
97u8, 100u8, 100u8, 32u8, 68u8, 73u8, 68u8, 46u8, 48u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 82u8, 101u8, 115u8, 101u8, 116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 4u8, 8u8, 21u8,
1u8, 84u8, 104u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8,
112u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 115u8, 101u8, 116u8, 59u8, 32u8, 115u8,
101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 115u8, 46u8,
128u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 76u8, 105u8,
115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 46u8, 72u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 76u8, 105u8, 109u8,
105u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 5u8, 4u8, 45u8,
1u8, 84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8,
104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8,
101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8,
101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 100u8, 46u8, 20u8, 68u8, 117u8, 109u8, 109u8, 121u8, 0u8, 6u8, 4u8, 108u8,
80u8, 104u8, 97u8, 110u8, 116u8, 111u8, 109u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
44u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 8u8, 92u8,
69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 29u8, 1u8, 8u8, 48u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 36u8, 73u8, 110u8,
115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 50u8, 0u8, 0u8, 0u8, 0u8, 33u8, 1u8, 0u8, 0u8, 2u8,
120u8, 0u8, 37u8, 1u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8,
110u8, 116u8, 12u8, 16u8, 72u8, 97u8, 115u8, 104u8, 1u8, 36u8, 44u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 4u8, 73u8, 1u8, 41u8, 1u8, 1u8, 40u8,
32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8,
1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 8u8, 137u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8,
105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8,
104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 40u8, 98u8, 121u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 97u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8,
32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 216u8, 80u8, 97u8, 114u8, 97u8, 109u8,
101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8,
110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 20u8, 86u8, 111u8, 116u8, 101u8, 100u8, 28u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8,
1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8,
120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8,
111u8, 111u8, 108u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8,
111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 1u8, 12u8, 5u8, 1u8, 65u8, 32u8, 109u8, 111u8,
116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8,
115u8, 104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 118u8,
111u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 98u8, 121u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 108u8, 101u8, 97u8,
118u8, 105u8, 110u8, 103u8, 73u8, 1u8, 97u8, 32u8, 116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8,
121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8,
118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8,
108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8,
115u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8,
96u8, 41u8, 46u8, 149u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 110u8, 100u8,
101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8,
97u8, 115u8, 104u8, 44u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 118u8,
111u8, 116u8, 101u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8,
99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8,
101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8,
32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 52u8, 86u8, 111u8, 116u8, 101u8, 82u8, 101u8,
116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8,
72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 2u8,
8u8, 204u8, 65u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 109u8,
111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8,
97u8, 115u8, 104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8,
101u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 46u8, 5u8, 1u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 116u8, 114u8, 97u8,
99u8, 116u8, 101u8, 100u8, 40u8, 70u8, 105u8, 110u8, 97u8, 108u8, 86u8, 111u8, 116u8, 101u8,
115u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8,
110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 33u8,
1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 62u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 3u8, 8u8, 144u8, 70u8, 105u8, 110u8,
97u8, 108u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8,
109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
104u8, 97u8, 115u8, 104u8, 41u8, 248u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8,
101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8,
97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8,
115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 32u8, 65u8, 112u8,
112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8,
0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8,
116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8,
117u8, 110u8, 116u8, 0u8, 4u8, 12u8, 9u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8,
110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 100u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8,
105u8, 110u8, 103u8, 65u8, 1u8, 116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8,
115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8,
116u8, 101u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8,
115u8, 101u8, 97u8, 116u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8,
115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8,
96u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8,
77u8, 1u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8,
121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8,
116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8,
104u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8,
117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8,
111u8, 117u8, 110u8, 116u8, 0u8, 5u8, 12u8, 9u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8,
111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 100u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8,
119u8, 105u8, 110u8, 103u8, 65u8, 1u8, 116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8,
101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8,
111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8,
32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8,
101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8,
32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8,
46u8, 77u8, 1u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 97u8,
121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8,
110u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8,
44u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8,
69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8,
115u8, 104u8, 0u8, 0u8, 45u8, 1u8, 1u8, 56u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 0u8, 6u8, 8u8, 57u8, 1u8, 65u8, 32u8, 109u8,
111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8,
117u8, 116u8, 101u8, 100u8, 59u8, 32u8, 96u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 96u8, 79u8,
107u8, 40u8, 40u8, 41u8, 41u8, 96u8, 32u8, 105u8, 102u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8,
110u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 101u8, 114u8,
114u8, 111u8, 114u8, 46u8, 13u8, 1u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8,
115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8,
32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
46u8, 100u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8, 114u8, 100u8,
105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
116u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 7u8, 8u8, 148u8, 82u8, 101u8, 108u8, 101u8,
97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8,
97u8, 116u8, 101u8, 100u8, 46u8, 220u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8,
114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 68u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8,
101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 46u8, 76u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 65u8, 102u8, 116u8,
101u8, 114u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 53u8, 1u8, 1u8, 92u8,
77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 8u8, 8u8, 152u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8,
105u8, 109u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8,
112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 196u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8,
116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8,
116u8, 105u8, 109u8, 101u8, 32u8, 40u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 41u8, 46u8, 80u8,
86u8, 111u8, 116u8, 101u8, 84u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 85u8,
112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8,
16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 9u8, 8u8, 132u8, 86u8, 111u8, 116u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8,
184u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 117u8, 109u8, 101u8,
114u8, 97u8, 116u8, 111u8, 114u8, 44u8, 32u8, 100u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8,
97u8, 116u8, 111u8, 114u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8,
46u8, 0u8, 41u8, 1u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 36u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8,
99u8, 101u8, 49u8, 0u8, 0u8, 0u8, 0u8, 45u8, 1u8, 4u8, 24u8, 82u8, 101u8, 115u8, 117u8, 108u8,
116u8, 8u8, 4u8, 84u8, 1u8, 49u8, 1u8, 4u8, 69u8, 1u8, 88u8, 1u8, 8u8, 8u8, 79u8, 107u8, 4u8,
0u8, 49u8, 1u8, 0u8, 0u8, 0u8, 0u8, 12u8, 69u8, 114u8, 114u8, 4u8, 0u8, 88u8, 0u8, 0u8, 1u8, 0u8,
0u8, 49u8, 1u8, 0u8, 0u8, 4u8, 0u8, 0u8, 53u8, 1u8, 8u8, 100u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 40u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8,
108u8, 111u8, 99u8, 107u8, 4u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 1u8, 16u8, 1u8, 8u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 16u8, 1u8, 44u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 0u8, 0u8, 16u8,
78u8, 111u8, 110u8, 101u8, 0u8, 1u8, 0u8, 0u8, 57u8, 1u8, 16u8, 100u8, 112u8, 111u8, 108u8,
121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8,
116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8,
115u8, 20u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8,
110u8, 116u8, 12u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8,
20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 1u8, 68u8, 4u8, 73u8, 1u8, 61u8, 1u8, 1u8, 28u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 65u8, 100u8, 100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 8u8, 224u8,
84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 59u8, 32u8,
115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8,
108u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8,
119u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 46u8, 52u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8,
8u8, 232u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
119u8, 104u8, 111u8, 46u8, 160u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
46u8, 52u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8,
100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 2u8, 8u8, 228u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8,
116u8, 97u8, 109u8, 112u8, 46u8, 160u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8,
100u8, 46u8, 56u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 83u8, 119u8, 97u8, 112u8,
112u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 3u8, 8u8, 216u8, 84u8, 119u8, 111u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8, 115u8, 119u8, 97u8, 112u8, 112u8,
101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
119u8, 104u8, 111u8, 46u8, 148u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
78u8, 101u8, 119u8, 32u8, 97u8, 100u8, 100u8, 32u8, 68u8, 73u8, 68u8, 46u8, 48u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 82u8, 101u8, 115u8, 101u8, 116u8, 8u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 33u8, 1u8, 1u8,
60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 62u8, 0u8, 4u8, 8u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 115u8,
101u8, 116u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
119u8, 104u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8,
116u8, 32u8, 105u8, 115u8, 46u8, 128u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 76u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 110u8, 101u8, 119u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 46u8, 72u8, 65u8, 99u8, 116u8, 105u8, 118u8,
101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8,
0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8,
116u8, 0u8, 5u8, 4u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8,
104u8, 101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 20u8, 68u8, 117u8, 109u8, 109u8, 121u8, 0u8,
6u8, 4u8, 108u8, 80u8, 104u8, 97u8, 110u8, 116u8, 111u8, 109u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 44u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8,
46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 61u8, 1u8, 8u8,
48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 36u8,
73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 49u8, 0u8, 0u8, 0u8, 0u8, 65u8, 1u8, 8u8,
64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 12u8, 16u8, 72u8,
97u8, 115u8, 104u8, 1u8, 36u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 1u8, 16u8, 4u8, 73u8, 1u8, 69u8, 1u8, 1u8, 40u8, 32u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8,
104u8, 0u8, 0u8, 8u8, 137u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8,
40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
101u8, 100u8, 32u8, 40u8, 98u8, 121u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8,
116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 40u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8,
116u8, 96u8, 41u8, 46u8, 216u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8,
115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8,
104u8, 46u8, 20u8, 86u8, 111u8, 116u8, 101u8, 100u8, 28u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8,
16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8,
0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8,
116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 0u8, 1u8, 12u8, 5u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8,
32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8,
104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8,
32u8, 111u8, 110u8, 32u8, 98u8, 121u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 108u8, 101u8, 97u8, 118u8, 105u8, 110u8, 103u8,
73u8, 1u8, 97u8, 32u8, 116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8,
118u8, 111u8, 116u8, 101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8,
115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8,
97u8, 116u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8,
101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 149u8, 1u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 44u8, 32u8,
121u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8,
44u8, 32u8, 110u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8,
110u8, 116u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8,
115u8, 46u8, 52u8, 86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 116u8, 114u8, 97u8, 99u8, 116u8,
101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8,
21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 2u8, 8u8, 204u8, 65u8, 32u8, 118u8, 111u8,
116u8, 101u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8,
32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8,
104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 116u8, 114u8, 97u8,
99u8, 116u8, 101u8, 100u8, 46u8, 5u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8,
101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8,
97u8, 115u8, 104u8, 44u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8,
40u8, 70u8, 105u8, 110u8, 97u8, 108u8, 86u8, 111u8, 116u8, 101u8, 115u8, 20u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8,
52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8,
0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8,
99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8,
33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 62u8, 0u8, 3u8, 8u8, 144u8, 70u8, 105u8, 110u8, 97u8, 108u8, 32u8, 118u8,
111u8, 116u8, 101u8, 115u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8,
111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8,
41u8, 248u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8,
32u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 115u8, 44u8, 32u8, 110u8,
111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 32u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8,
101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8,
44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8,
1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 4u8,
12u8, 9u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8,
32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 104u8,
114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8, 105u8, 110u8, 103u8, 65u8, 1u8,
116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8,
101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8,
110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8,
105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 77u8, 1u8, 80u8, 97u8, 114u8,
97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8,
101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8, 121u8, 32u8, 118u8,
111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 111u8, 116u8,
97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8, 82u8, 101u8, 106u8, 101u8, 99u8,
116u8, 101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 16u8, 1u8,
44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8,
1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8,
16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8,
5u8, 12u8, 9u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8,
115u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8,
104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
116u8, 104u8, 101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8, 105u8, 110u8, 103u8, 65u8,
1u8, 116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8,
116u8, 101u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8,
97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8,
115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8,
116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 77u8, 1u8, 80u8, 97u8,
114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8, 118u8, 111u8,
116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8, 121u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 111u8,
116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8, 69u8, 120u8, 101u8, 99u8,
117u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 45u8,
1u8, 1u8, 56u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8,
108u8, 116u8, 0u8, 6u8, 8u8, 57u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8,
32u8, 119u8, 97u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 59u8,
32u8, 96u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8,
108u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 96u8, 79u8, 107u8, 40u8, 40u8, 41u8, 41u8, 96u8,
32u8, 105u8, 102u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 32u8, 119u8,
105u8, 116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 13u8,
1u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 114u8, 101u8, 115u8,
117u8, 108u8, 116u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 46u8, 100u8, 82u8, 101u8,
108u8, 101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 116u8, 1u8, 72u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 62u8, 0u8, 7u8, 8u8, 148u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8,
46u8, 220u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 68u8, 73u8, 68u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8,
32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 76u8,
69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 65u8, 102u8, 116u8, 101u8, 114u8, 85u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 53u8, 1u8, 1u8, 92u8, 77u8, 97u8, 121u8, 98u8, 101u8,
66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 62u8, 0u8, 8u8, 8u8, 152u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 46u8, 196u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 101u8,
119u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8,
40u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 41u8, 46u8, 80u8, 86u8, 111u8, 116u8, 101u8, 84u8,
104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 9u8, 8u8, 132u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 114u8,
101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 184u8, 80u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8,
44u8, 32u8, 100u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 8u8,
92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 69u8, 1u8, 8u8, 64u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 36u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 51u8, 0u8, 0u8, 0u8,
0u8, 73u8, 1u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8,
111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8,
115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 20u8, 103u8, 114u8, 111u8, 117u8, 112u8,
32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 12u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 1u8, 68u8,
4u8, 73u8, 1u8, 77u8, 1u8, 1u8, 28u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 65u8, 100u8,
100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 8u8, 224u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8,
100u8, 100u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8,
114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 108u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 46u8, 52u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 8u8, 232u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 160u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 52u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 82u8,
101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 8u8, 228u8, 84u8, 104u8, 101u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8,
32u8, 97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 116u8,
105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 46u8, 160u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8,
101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 46u8, 56u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 83u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 3u8, 8u8, 216u8, 84u8, 119u8, 111u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8,
115u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 148u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 97u8, 100u8, 100u8, 32u8, 68u8,
73u8, 68u8, 46u8, 48u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 82u8, 101u8, 115u8, 101u8,
116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 4u8, 8u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 119u8, 97u8, 115u8,
32u8, 114u8, 101u8, 115u8, 101u8, 116u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 115u8, 46u8, 128u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 76u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8,
32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 46u8, 72u8,
65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 5u8, 4u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8,
97u8, 110u8, 121u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
108u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8,
46u8, 20u8, 68u8, 117u8, 109u8, 109u8, 121u8, 0u8, 6u8, 4u8, 108u8, 80u8, 104u8, 97u8, 110u8,
116u8, 111u8, 109u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 44u8, 32u8, 110u8, 101u8,
118u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8,
110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 77u8, 1u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 36u8, 73u8, 110u8, 115u8, 116u8, 97u8,
110u8, 99u8, 101u8, 51u8, 0u8, 0u8, 0u8, 0u8, 81u8, 1u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 82u8,
97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 12u8, 16u8, 72u8, 97u8, 115u8, 104u8, 1u8, 36u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 4u8,
73u8, 1u8, 85u8, 1u8, 1u8, 40u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 8u8, 137u8,
1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 40u8, 98u8,
121u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 41u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 116u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8,
216u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 20u8, 86u8,
111u8, 116u8, 101u8, 100u8, 28u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8,
104u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8,
44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8,
1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 1u8,
12u8, 5u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 98u8,
121u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 44u8, 32u8, 108u8, 101u8, 97u8, 118u8, 105u8, 110u8, 103u8, 73u8, 1u8, 97u8, 32u8, 116u8,
97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8,
115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8,
118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 149u8, 1u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8,
121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8,
116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 52u8, 86u8,
111u8, 116u8, 101u8, 82u8, 101u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 16u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8,
120u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8,
111u8, 111u8, 108u8, 0u8, 2u8, 8u8, 204u8, 65u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 111u8,
110u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 46u8,
5u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8,
32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8,
32u8, 114u8, 101u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 40u8, 70u8, 105u8, 110u8,
97u8, 108u8, 86u8, 111u8, 116u8, 101u8, 115u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 36u8, 1u8, 16u8,
72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8,
86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
62u8, 0u8, 3u8, 8u8, 144u8, 70u8, 105u8, 110u8, 97u8, 108u8, 32u8, 118u8, 111u8, 116u8, 101u8,
115u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8,
40u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 41u8, 248u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 101u8,
115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8,
111u8, 116u8, 101u8, 114u8, 32u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 20u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 4u8, 12u8, 9u8, 1u8,
65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8,
112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8,
32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8, 105u8, 110u8, 103u8, 65u8, 1u8, 116u8, 97u8,
108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8,
44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 110u8, 100u8,
32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8,
101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8,
111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 77u8, 1u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8,
116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 104u8, 97u8,
115u8, 104u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8,
111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8,
32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8,
115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8,
100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8,
44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 5u8, 12u8,
9u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8,
114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 104u8, 114u8,
101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8, 105u8, 110u8, 103u8, 65u8, 1u8, 116u8,
97u8, 108u8, 108u8, 121u8, 32u8, 40u8, 121u8, 101u8, 115u8, 32u8, 118u8, 111u8, 116u8, 101u8,
115u8, 44u8, 32u8, 110u8, 111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8,
118u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 77u8, 1u8, 80u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 121u8, 97u8, 121u8, 32u8, 118u8, 111u8, 116u8, 101u8,
32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 110u8, 97u8, 121u8, 32u8, 118u8, 111u8,
116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8,
108u8, 32u8, 115u8, 101u8, 97u8, 116u8, 115u8, 46u8, 32u8, 69u8, 120u8, 101u8, 99u8, 117u8,
116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 0u8, 45u8, 1u8,
1u8, 56u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8, 108u8,
116u8, 0u8, 6u8, 8u8, 57u8, 1u8, 65u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8,
119u8, 97u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 59u8, 32u8,
96u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8, 108u8,
116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 96u8, 79u8, 107u8, 40u8, 40u8, 41u8, 41u8, 96u8, 32u8,
105u8, 102u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 32u8, 119u8, 105u8,
116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 13u8, 1u8,
80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8, 114u8, 101u8, 115u8, 117u8,
108u8, 116u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 46u8, 100u8, 82u8, 101u8, 108u8,
101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 62u8, 0u8, 7u8, 8u8, 148u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8,
111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 104u8, 97u8, 115u8,
32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8,
220u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 68u8, 73u8, 68u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 76u8, 69u8,
120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 65u8, 102u8, 116u8, 101u8, 114u8, 85u8, 112u8, 100u8,
97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 53u8, 1u8, 1u8, 92u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8,
108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 62u8, 0u8, 8u8, 8u8, 152u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 46u8, 196u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 101u8,
119u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8,
40u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 41u8, 46u8, 80u8, 86u8, 111u8, 116u8, 101u8, 84u8,
104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 9u8, 8u8, 132u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 114u8,
101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 184u8, 80u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8,
44u8, 32u8, 100u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 8u8,
92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 85u8, 1u8, 8u8, 64u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 36u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 52u8, 0u8, 0u8, 0u8,
0u8, 89u8, 1u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8,
111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8,
115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 20u8, 103u8, 114u8, 111u8, 117u8, 112u8,
32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 12u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 1u8, 68u8,
4u8, 73u8, 1u8, 93u8, 1u8, 1u8, 28u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 65u8, 100u8,
100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 8u8, 224u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8,
100u8, 100u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8,
114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 108u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 46u8, 52u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 8u8, 232u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 160u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 52u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 82u8,
101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 8u8, 228u8, 84u8, 104u8, 101u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8,
32u8, 97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 116u8,
105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 46u8, 160u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 114u8,
101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 46u8, 56u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 83u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 3u8, 8u8, 216u8, 84u8, 119u8, 111u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8,
115u8, 119u8, 97u8, 112u8, 112u8, 101u8, 100u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 148u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 97u8, 100u8, 100u8, 32u8, 68u8,
73u8, 68u8, 46u8, 48u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 82u8, 101u8, 115u8, 101u8,
116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 4u8, 8u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 119u8, 97u8, 115u8,
32u8, 114u8, 101u8, 115u8, 101u8, 116u8, 59u8, 32u8, 115u8, 101u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 115u8, 46u8, 128u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 76u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8,
32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 46u8, 72u8,
65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 5u8, 4u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8,
97u8, 110u8, 121u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
108u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8,
46u8, 20u8, 68u8, 117u8, 109u8, 109u8, 121u8, 0u8, 6u8, 4u8, 108u8, 80u8, 104u8, 97u8, 110u8,
116u8, 111u8, 109u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 44u8, 32u8, 110u8, 101u8,
118u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8,
110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 93u8, 1u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 36u8, 73u8, 110u8, 115u8, 116u8, 97u8,
110u8, 99u8, 101u8, 52u8, 0u8, 0u8, 0u8, 0u8, 97u8, 1u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 82u8, 97u8,
119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 1u8, 0u8, 1u8, 48u8, 60u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8,
67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 101u8, 1u8, 1u8, 100u8, 86u8, 101u8, 99u8, 60u8,
83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8,
0u8, 8u8, 172u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8,
101u8, 100u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 46u8, 101u8, 1u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8,
115u8, 115u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 32u8, 40u8, 112u8,
101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 97u8,
108u8, 41u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8,
32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 46u8, 52u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 65u8, 100u8, 100u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8,
54u8, 52u8, 0u8, 1u8, 8u8, 152u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 97u8, 100u8, 100u8,
105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
46u8, 180u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 73u8, 68u8, 46u8, 64u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 21u8,
1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 2u8, 8u8, 168u8, 69u8, 118u8, 101u8, 110u8,
116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 115u8,
32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 212u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 73u8, 68u8, 44u8, 32u8, 114u8,
101u8, 115u8, 117u8, 108u8, 116u8, 46u8, 76u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8,
103u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 65u8, 100u8, 100u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 105u8, 1u8,
1u8, 80u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 3u8, 8u8, 160u8, 69u8, 118u8, 101u8, 110u8,
116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 32u8, 105u8,
115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 46u8, 184u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 97u8,
100u8, 100u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 96u8, 77u8,
117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 105u8, 1u8, 1u8, 80u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 4u8, 8u8, 9u8, 1u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8,
101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8,
32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 115u8, 105u8, 103u8, 110u8,
97u8, 116u8, 111u8, 114u8, 121u8, 32u8, 105u8, 115u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8,
100u8, 101u8, 100u8, 46u8, 204u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 84u8,
77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8,
82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 105u8, 1u8, 1u8, 80u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 62u8, 0u8, 5u8, 8u8, 204u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8,
105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8,
111u8, 114u8, 121u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
46u8, 192u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 132u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8,
105u8, 103u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8, 82u8, 101u8,
113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 6u8, 8u8, 1u8, 1u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8,
101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 115u8, 32u8, 105u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
100u8, 46u8, 228u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8,
101u8, 115u8, 46u8, 64u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 65u8, 112u8,
112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 105u8, 1u8, 1u8, 80u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 7u8, 8u8, 180u8, 69u8, 118u8,
101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 103u8, 101u8, 116u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8,
46u8, 1u8, 1u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 44u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 46u8, 84u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 86u8,
111u8, 116u8, 101u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 0u8, 0u8, 105u8, 1u8, 1u8, 80u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8,
121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 8u8, 8u8, 13u8, 1u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8,
101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8,
32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 115u8, 116u8, 32u8,
105u8, 110u8, 32u8, 102u8, 97u8, 118u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8,
106u8, 101u8, 99u8, 116u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 46u8, 1u8, 1u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 44u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 46u8, 64u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 9u8, 8u8, 168u8, 69u8, 118u8, 101u8, 110u8,
116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 115u8,
32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 46u8, 180u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 73u8, 68u8, 46u8, 92u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 4u8, 0u8, 88u8, 1u8, 52u8, 68u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 10u8, 4u8, 228u8,
69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 97u8,
110u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 105u8, 110u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8,
110u8, 64u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 70u8, 97u8,
105u8, 108u8, 101u8, 100u8, 4u8, 0u8, 88u8, 1u8, 52u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 11u8, 4u8, 116u8, 83u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 102u8, 97u8, 105u8, 108u8, 115u8, 46u8, 8u8, 92u8, 69u8, 118u8,
101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 101u8, 1u8, 0u8, 0u8, 2u8, 105u8, 1u8, 0u8,
105u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 36u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 111u8, 114u8, 121u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 1u8, 0u8, 1u8, 8u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 4u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
0u8, 28u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 0u8, 0u8, 109u8, 1u8, 8u8, 52u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 82u8,
97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 1u8, 0u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 1u8, 16u8, 1u8, 64u8, 68u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8,
101u8, 114u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 4u8, 144u8, 67u8, 111u8, 110u8,
102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 115u8, 101u8, 116u8, 32u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 46u8, 48u8, 65u8, 100u8, 109u8, 105u8, 110u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 1u8, 4u8, 116u8, 67u8, 111u8, 110u8, 102u8, 105u8, 114u8, 109u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 65u8, 100u8, 109u8, 105u8, 110u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 60u8, 84u8, 105u8, 109u8, 101u8, 108u8, 111u8,
99u8, 107u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8,
108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 2u8, 4u8, 160u8, 67u8,
111u8, 110u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8,
32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8,
111u8, 99u8, 107u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 28u8, 66u8, 114u8, 105u8,
100u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8, 76u8, 66u8, 114u8, 105u8, 100u8, 103u8,
101u8, 84u8, 120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8,
3u8, 4u8, 29u8, 1u8, 67u8, 111u8, 110u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 117u8, 112u8, 103u8, 114u8,
97u8, 100u8, 101u8, 32u8, 111u8, 110u8, 32u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 80u8, 79u8, 76u8, 89u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 115u8, 32u8, 111u8, 110u8, 32u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8,
109u8, 46u8, 24u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 4u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 4u8, 4u8, 144u8, 78u8, 111u8,
116u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8,
102u8, 114u8, 101u8, 101u8, 122u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8,
114u8, 105u8, 100u8, 103u8, 101u8, 46u8, 32u8, 85u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8,
110u8, 4u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 5u8, 4u8, 152u8, 78u8, 111u8, 116u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 117u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 105u8,
110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 46u8,
32u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 84u8, 120u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8, 76u8,
66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 6u8, 4u8, 156u8, 78u8, 111u8, 116u8, 105u8, 102u8, 105u8,
99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 102u8, 114u8, 101u8, 101u8,
122u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 40u8, 85u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8,
84u8, 120u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8, 76u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8,
120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 7u8, 4u8,
164u8, 78u8, 111u8, 116u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
111u8, 102u8, 32u8, 117u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 105u8, 110u8, 103u8, 32u8,
97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 60u8,
69u8, 120u8, 101u8, 109u8, 112u8, 116u8, 101u8, 100u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 8u8, 4u8, 196u8, 69u8,
120u8, 101u8, 109u8, 112u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8,
115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 72u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 76u8,
105u8, 109u8, 105u8, 116u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 9u8, 4u8, 120u8, 66u8, 114u8, 105u8,
100u8, 103u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 40u8,
84u8, 120u8, 115u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 4u8, 0u8, 117u8, 1u8, 1u8,
152u8, 86u8, 101u8, 99u8, 60u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
44u8, 32u8, 117u8, 51u8, 50u8, 44u8, 32u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 84u8,
120u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 62u8, 0u8, 10u8, 8u8, 97u8, 1u8, 65u8,
110u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8,
100u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8,
111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 105u8, 115u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8,
100u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8,
101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8,
32u8, 111u8, 102u8, 81u8, 1u8, 116u8, 117u8, 112u8, 108u8, 101u8, 115u8, 32u8, 111u8, 102u8,
32u8, 114u8, 101u8, 99u8, 105u8, 112u8, 105u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 105u8, 116u8, 115u8, 32u8, 110u8, 111u8, 110u8, 99u8,
101u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8,
116u8, 117u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8,
99u8, 101u8, 115u8, 115u8, 101u8, 100u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 68u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8,
83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8, 76u8,
66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8,
78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 11u8, 4u8, 80u8, 66u8, 114u8, 105u8, 100u8, 103u8,
101u8, 32u8, 84u8, 120u8, 32u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8,
46u8, 88u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 83u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8,
76u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 0u8, 12u8, 4u8, 116u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 66u8, 114u8, 105u8, 100u8, 103u8,
101u8, 32u8, 84u8, 120u8, 46u8, 64u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 65u8, 100u8,
109u8, 105u8, 110u8, 65u8, 100u8, 100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 13u8, 4u8, 136u8, 65u8, 32u8, 110u8, 101u8,
119u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 97u8, 100u8, 109u8, 105u8, 110u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 100u8, 100u8, 101u8,
100u8, 46u8, 72u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 65u8, 100u8, 109u8, 105u8, 110u8,
82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 14u8, 4u8, 128u8, 65u8, 32u8, 102u8, 114u8, 101u8,
101u8, 122u8, 101u8, 32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 36u8,
84u8, 120u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 113u8, 1u8, 1u8, 76u8,
66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 15u8, 4u8, 156u8, 78u8, 111u8, 116u8, 105u8, 102u8, 105u8,
99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 113u8, 1u8, 8u8, 52u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8,
114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8,
4u8, 28u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 0u8, 16u8, 1u8, 20u8, 110u8,
111u8, 110u8, 99u8, 101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 36u8, 114u8, 101u8,
99u8, 105u8, 112u8, 105u8, 101u8, 110u8, 116u8, 0u8, 1u8, 28u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 28u8, 116u8, 120u8, 95u8, 104u8, 97u8, 115u8,
104u8, 36u8, 1u8, 16u8, 72u8, 50u8, 53u8, 54u8, 0u8, 0u8, 117u8, 1u8, 0u8, 0u8, 2u8, 121u8, 1u8,
0u8, 121u8, 1u8, 0u8, 0u8, 4u8, 12u8, 0u8, 16u8, 125u8, 1u8, 0u8, 125u8, 1u8, 8u8, 52u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 60u8, 72u8,
97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 84u8, 120u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8,
0u8, 1u8, 8u8, 28u8, 83u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 0u8, 0u8, 0u8, 20u8, 69u8,
114u8, 114u8, 111u8, 114u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 0u8, 1u8, 0u8, 0u8, 129u8, 1u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8,
110u8, 116u8, 8u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 68u8, 36u8, 69u8, 114u8,
97u8, 80u8, 97u8, 121u8, 111u8, 117u8, 116u8, 12u8, 0u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8,
73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8,
12u8, 85u8, 1u8, 84u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 112u8, 97u8, 121u8, 111u8,
117u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 101u8,
116u8, 59u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 45u8, 112u8, 97u8, 121u8, 111u8,
117u8, 116u8, 59u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8,
32u8, 105u8, 115u8, 192u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8,
100u8, 101u8, 114u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8,
97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 168u8, 92u8, 91u8, 101u8,
114u8, 97u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 44u8, 32u8,
114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 100u8, 101u8, 114u8, 92u8, 93u8, 24u8, 82u8, 101u8,
119u8, 97u8, 114u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
1u8, 4u8, 57u8, 1u8, 84u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 32u8,
104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8,
100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 109u8,
111u8, 117u8, 110u8, 116u8, 46u8, 32u8, 92u8, 91u8, 115u8, 116u8, 97u8, 115u8, 104u8, 95u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 115u8, 116u8, 97u8, 115u8,
104u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 92u8, 93u8, 20u8, 83u8, 108u8, 97u8,
115u8, 104u8, 8u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 2u8, 8u8,
33u8, 1u8, 79u8, 110u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
32u8, 40u8, 97u8, 110u8, 100u8, 32u8, 105u8, 116u8, 115u8, 32u8, 110u8, 111u8, 109u8, 105u8,
110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 46u8, 84u8, 92u8, 91u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 92u8, 93u8, 104u8, 79u8, 108u8,
100u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 82u8, 101u8, 112u8, 111u8, 114u8,
116u8, 68u8, 105u8, 115u8, 99u8, 97u8, 114u8, 100u8, 101u8, 100u8, 4u8, 0u8, 16u8, 1u8, 48u8,
83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 3u8, 8u8,
25u8, 1u8, 65u8, 110u8, 32u8, 111u8, 108u8, 100u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 97u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 32u8, 101u8, 114u8, 97u8, 32u8, 119u8, 97u8,
115u8, 32u8, 100u8, 105u8, 115u8, 99u8, 97u8, 114u8, 100u8, 101u8, 100u8, 32u8, 98u8, 101u8,
99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 105u8, 116u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8,
140u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8,
115u8, 101u8, 100u8, 46u8, 32u8, 92u8, 91u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8,
95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 92u8, 93u8, 60u8, 83u8, 116u8, 97u8, 107u8, 105u8,
110u8, 103u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 133u8, 1u8, 1u8,
60u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 109u8, 112u8, 117u8,
116u8, 101u8, 0u8, 4u8, 4u8, 240u8, 65u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 116u8,
32u8, 111u8, 102u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 32u8, 119u8, 97u8,
115u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 92u8, 91u8, 99u8,
111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 92u8, 93u8, 46u8, 56u8, 83u8, 111u8, 108u8, 117u8,
116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 4u8, 0u8, 133u8, 1u8, 1u8,
60u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 109u8, 112u8, 117u8,
116u8, 101u8, 0u8, 5u8, 4u8, 21u8, 1u8, 65u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 111u8,
108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 117u8, 112u8, 99u8, 111u8, 109u8, 105u8, 110u8, 103u8, 32u8, 101u8, 108u8, 101u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 46u8, 32u8, 92u8, 91u8, 99u8, 111u8, 109u8, 112u8,
117u8, 116u8, 101u8, 92u8, 93u8, 24u8, 66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 12u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8,
1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 6u8, 16u8, 228u8, 65u8, 110u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 111u8, 110u8,
100u8, 101u8, 100u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 46u8, 32u8, 92u8, 91u8, 100u8, 105u8, 100u8, 44u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8,
44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 92u8, 93u8, 0u8, 77u8, 1u8, 78u8, 79u8,
84u8, 69u8, 58u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8,
105u8, 115u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8,
100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 97u8,
114u8, 101u8, 32u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8, 118u8, 105u8, 97u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8,
32u8, 78u8, 111u8, 116u8, 97u8, 98u8, 108u8, 121u8, 44u8, 33u8, 1u8, 105u8, 116u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 101u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8,
110u8, 103u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 32u8, 119u8, 104u8, 101u8,
110u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 100u8, 100u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 46u8, 32u8, 85u8,
110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 7u8, 4u8, 236u8, 65u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8,
100u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 46u8,
32u8, 92u8, 91u8, 100u8, 105u8, 100u8, 44u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 44u8, 32u8,
97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 92u8, 93u8, 36u8, 78u8, 111u8, 109u8, 105u8, 110u8,
97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 0u8, 232u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 8u8, 4u8, 136u8, 85u8, 115u8, 101u8, 114u8, 32u8,
104u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8,
101u8, 105u8, 114u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8,
115u8, 36u8, 87u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 110u8, 8u8, 0u8, 0u8, 1u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 9u8, 8u8, 89u8, 1u8, 65u8, 110u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 96u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 95u8, 117u8,
110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 105u8,
110u8, 103u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 32u8, 119u8, 111u8, 114u8, 116u8,
104u8, 32u8, 96u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 172u8, 102u8, 114u8, 111u8,
109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 105u8, 110u8,
103u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 46u8, 32u8, 92u8, 91u8, 115u8, 116u8, 97u8,
115u8, 104u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 92u8, 93u8, 100u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 65u8, 100u8, 100u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 10u8, 8u8, 236u8, 65u8,
110u8, 32u8, 68u8, 73u8, 68u8, 32u8, 104u8, 97u8, 115u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8,
100u8, 32u8, 97u8, 32u8, 99u8, 97u8, 110u8, 100u8, 105u8, 100u8, 97u8, 99u8, 121u8, 46u8, 32u8,
83u8, 101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8,
140u8, 71u8, 67u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 44u8,
32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 39u8, 115u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 108u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 11u8, 8u8, 232u8, 84u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 32u8, 83u8,
101u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 46u8, 140u8,
71u8, 67u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 44u8, 32u8, 86u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 84u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 101u8, 100u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8,
232u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 0u8, 12u8, 8u8, 29u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 101u8,
120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 148u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8,
44u8, 32u8, 83u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 32u8, 111u8, 102u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 115u8, 80u8, 67u8, 111u8, 109u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 67u8,
97u8, 112u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 137u8, 1u8, 1u8, 28u8,
80u8, 101u8, 114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 0u8, 137u8, 1u8, 1u8, 28u8, 80u8, 101u8,
114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 13u8, 8u8, 128u8, 87u8, 104u8, 101u8, 110u8, 32u8, 99u8,
111u8, 109u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 112u8, 32u8,
103u8, 101u8, 116u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 88u8, 40u8,
111u8, 108u8, 100u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 44u8, 32u8, 110u8, 101u8, 119u8,
32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 41u8, 108u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8,
109u8, 66u8, 111u8, 110u8, 100u8, 84u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8,
85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 8u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
62u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 14u8, 4u8,
172u8, 77u8, 105u8, 110u8, 32u8, 98u8, 111u8, 110u8, 100u8, 32u8, 116u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8,
116u8, 101u8, 100u8, 32u8, 40u8, 110u8, 101u8, 119u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8,
41u8, 46u8, 136u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 97u8, 121u8, 109u8, 101u8,
110u8, 116u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 73u8, 110u8,
116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 12u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 32u8, 69u8, 114u8,
97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 88u8, 1u8, 52u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 15u8, 4u8, 204u8, 87u8, 104u8,
101u8, 110u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8,
111u8, 102u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 112u8, 97u8, 121u8, 109u8,
101u8, 110u8, 116u8, 115u8, 32u8, 103u8, 101u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8,
114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 46u8, 100u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 70u8, 111u8, 114u8, 67u8, 104u8,
97u8, 110u8, 103u8, 101u8, 100u8, 4u8, 0u8, 141u8, 1u8, 1u8, 56u8, 83u8, 108u8, 97u8, 115u8,
104u8, 105u8, 110u8, 103u8, 83u8, 119u8, 105u8, 116u8, 99u8, 104u8, 0u8, 16u8, 4u8, 144u8, 85u8,
112u8, 100u8, 97u8, 116u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 111u8, 109u8,
32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 103u8, 101u8, 116u8, 32u8, 115u8, 108u8,
97u8, 115u8, 104u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 133u8, 1u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 60u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 67u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 0u8, 1u8, 12u8, 28u8, 79u8, 110u8, 67u8,
104u8, 97u8, 105u8, 110u8, 0u8, 0u8, 0u8, 24u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 0u8,
1u8, 0u8, 32u8, 85u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 0u8, 2u8, 0u8, 0u8, 137u8,
1u8, 12u8, 52u8, 115u8, 112u8, 95u8, 97u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8,
105u8, 99u8, 40u8, 112u8, 101u8, 114u8, 95u8, 116u8, 104u8, 105u8, 110u8, 103u8, 115u8, 28u8,
80u8, 101u8, 114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 0u8, 141u8, 1u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 56u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8,
103u8, 83u8, 119u8, 105u8, 116u8, 99u8, 104u8, 0u8, 1u8, 12u8, 36u8, 86u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 0u8, 0u8, 0u8, 84u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 65u8, 110u8, 100u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 0u8, 1u8, 0u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 2u8, 0u8, 0u8, 145u8, 1u8, 12u8,
60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8,
101u8, 115u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8,
116u8, 0u8, 1u8, 4u8, 28u8, 79u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 8u8, 1u8, 16u8, 107u8,
105u8, 110u8, 100u8, 149u8, 1u8, 1u8, 16u8, 75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 32u8, 116u8,
105u8, 109u8, 101u8, 115u8, 108u8, 111u8, 116u8, 40u8, 1u8, 56u8, 79u8, 112u8, 97u8, 113u8,
117u8, 101u8, 84u8, 105u8, 109u8, 101u8, 83u8, 108u8, 111u8, 116u8, 0u8, 0u8, 12u8, 81u8, 1u8,
84u8, 104u8, 101u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 102u8,
102u8, 101u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
96u8, 107u8, 105u8, 110u8, 100u8, 96u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 101u8,
100u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 97u8, 110u8, 100u8,
53u8, 1u8, 40u8, 107u8, 105u8, 110u8, 100u8, 45u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 99u8, 41u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 115u8, 108u8, 111u8, 116u8, 46u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 100u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8,
32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 46u8, 76u8, 92u8, 91u8, 107u8, 105u8,
110u8, 100u8, 44u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 108u8, 111u8, 116u8, 92u8, 93u8,
46u8, 4u8, 48u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8,
149u8, 1u8, 0u8, 0u8, 3u8, 16u8, 0u8, 0u8, 0u8, 8u8, 0u8, 153u8, 1u8, 12u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 24u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 4u8, 40u8,
78u8, 101u8, 119u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 4u8, 1u8, 52u8, 115u8, 101u8,
115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 48u8,
83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 8u8,
57u8, 1u8, 78u8, 101u8, 119u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8,
104u8, 97u8, 115u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 101u8, 100u8, 46u8, 32u8,
78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8,
120u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 156u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 97u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 109u8, 105u8, 103u8, 104u8, 116u8, 32u8,
115u8, 117u8, 103u8, 103u8, 101u8, 115u8, 116u8, 46u8, 4u8, 153u8, 1u8, 10u8, 9u8, 9u8, 9u8,
84u8, 104u8, 101u8, 32u8, 91u8, 101u8, 118u8, 101u8, 110u8, 116u8, 93u8, 40u8, 104u8, 116u8,
116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8, 115u8, 117u8, 98u8,
115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8, 51u8, 47u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 45u8,
97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8, 32u8, 101u8, 109u8,
105u8, 116u8, 116u8, 101u8, 100u8, 10u8, 9u8, 9u8, 9u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 157u8, 1u8,
12u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8,
112u8, 97u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8,
116u8, 0u8, 1u8, 12u8, 56u8, 78u8, 101u8, 119u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
116u8, 105u8, 101u8, 115u8, 4u8, 1u8, 52u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
116u8, 121u8, 95u8, 115u8, 101u8, 116u8, 161u8, 1u8, 1u8, 52u8, 65u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 116u8, 121u8, 76u8, 105u8, 115u8, 116u8, 0u8, 0u8, 4u8, 140u8, 78u8, 101u8, 119u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8, 101u8, 116u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 112u8, 112u8, 108u8,
105u8, 101u8, 100u8, 46u8, 24u8, 80u8, 97u8, 117u8, 115u8, 101u8, 100u8, 0u8, 1u8, 4u8, 152u8,
67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 116u8, 121u8, 32u8, 115u8, 101u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8, 46u8, 28u8, 82u8, 101u8, 115u8,
117u8, 109u8, 101u8, 100u8, 0u8, 2u8, 4u8, 156u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8, 101u8, 116u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 115u8, 117u8,
109u8, 101u8, 100u8, 46u8, 4u8, 153u8, 1u8, 10u8, 9u8, 9u8, 9u8, 84u8, 104u8, 101u8, 32u8, 91u8,
101u8, 118u8, 101u8, 110u8, 116u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8,
47u8, 100u8, 111u8, 99u8, 115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8,
101u8, 46u8, 105u8, 111u8, 47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 47u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8,
114u8, 114u8, 111u8, 114u8, 115u8, 41u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8,
10u8, 9u8, 9u8, 9u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 161u8, 1u8, 0u8, 0u8, 2u8, 165u8, 1u8, 0u8,
165u8, 1u8, 0u8, 0u8, 4u8, 8u8, 169u8, 1u8, 32u8, 0u8, 169u8, 1u8, 12u8, 76u8, 115u8, 112u8,
95u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 95u8, 103u8, 114u8, 97u8, 110u8,
100u8, 112u8, 97u8, 12u8, 97u8, 112u8, 112u8, 24u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8,
0u8, 4u8, 0u8, 173u8, 1u8, 1u8, 60u8, 101u8, 100u8, 50u8, 53u8, 53u8, 49u8, 57u8, 58u8, 58u8,
80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 173u8, 1u8, 12u8, 28u8, 115u8, 112u8, 95u8,
99u8, 111u8, 114u8, 101u8, 28u8, 101u8, 100u8, 50u8, 53u8, 53u8, 49u8, 57u8, 24u8, 80u8, 117u8,
98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8,
51u8, 50u8, 93u8, 0u8, 0u8, 177u8, 1u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 24u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 4u8, 84u8, 0u8, 1u8, 12u8,
68u8, 72u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 82u8, 101u8, 99u8, 101u8, 105u8,
118u8, 101u8, 100u8, 4u8, 1u8, 48u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 95u8, 105u8, 100u8, 181u8, 1u8, 1u8, 56u8, 84u8, 58u8, 58u8, 65u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 4u8, 192u8, 65u8, 32u8, 110u8, 101u8,
119u8, 32u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 32u8, 119u8, 97u8,
115u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 73u8, 100u8,
96u8, 46u8, 28u8, 65u8, 108u8, 108u8, 71u8, 111u8, 111u8, 100u8, 0u8, 1u8, 4u8, 208u8, 65u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 44u8, 32u8, 110u8, 111u8,
32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 46u8, 44u8, 83u8, 111u8, 109u8, 101u8,
79u8, 102u8, 102u8, 108u8, 105u8, 110u8, 101u8, 4u8, 1u8, 28u8, 111u8, 102u8, 102u8, 108u8,
105u8, 110u8, 101u8, 189u8, 1u8, 1u8, 108u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 84u8, 117u8, 112u8, 108u8,
101u8, 60u8, 84u8, 62u8, 62u8, 0u8, 2u8, 4u8, 41u8, 1u8, 65u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8,
115u8, 115u8, 105u8, 111u8, 110u8, 44u8, 32u8, 97u8, 116u8, 32u8, 108u8, 101u8, 97u8, 115u8,
116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 111u8, 102u8, 102u8, 108u8, 105u8, 110u8, 101u8, 46u8, 4u8, 153u8, 1u8,
10u8, 9u8, 9u8, 9u8, 84u8, 104u8, 101u8, 32u8, 91u8, 101u8, 118u8, 101u8, 110u8, 116u8, 93u8,
40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8,
115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8,
51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8,
116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8,
32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 10u8, 9u8, 9u8, 9u8, 98u8, 121u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8,
9u8, 181u8, 1u8, 16u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 109u8, 95u8,
111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 28u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 44u8,
97u8, 112u8, 112u8, 95u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 24u8, 80u8, 117u8, 98u8,
108u8, 105u8, 99u8, 0u8, 0u8, 4u8, 0u8, 185u8, 1u8, 1u8, 60u8, 115u8, 114u8, 50u8, 53u8, 53u8,
49u8, 57u8, 58u8, 58u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 185u8, 1u8, 12u8, 28u8,
115u8, 112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 28u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8,
24u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8,
56u8, 59u8, 32u8, 51u8, 50u8, 93u8, 0u8, 0u8, 189u8, 1u8, 0u8, 0u8, 2u8, 193u8, 1u8, 0u8, 193u8,
1u8, 0u8, 0u8, 4u8, 8u8, 0u8, 197u8, 1u8, 0u8, 197u8, 1u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 69u8, 120u8, 112u8,
111u8, 115u8, 117u8, 114u8, 101u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 1u8, 0u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 12u8, 1u8,
20u8, 116u8, 111u8, 116u8, 97u8, 108u8, 201u8, 1u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 1u8, 12u8, 111u8, 119u8, 110u8, 201u8, 1u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 24u8, 111u8, 116u8, 104u8, 101u8, 114u8, 115u8, 205u8, 1u8, 1u8,
172u8, 86u8, 101u8, 99u8, 60u8, 73u8, 110u8, 100u8, 105u8, 118u8, 105u8, 100u8, 117u8, 97u8,
108u8, 69u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8, 101u8, 60u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 62u8,
62u8, 0u8, 0u8, 201u8, 1u8, 0u8, 0u8, 6u8, 24u8, 0u8, 205u8, 1u8, 0u8, 0u8, 2u8, 209u8, 1u8, 0u8,
209u8, 1u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8,
105u8, 110u8, 103u8, 72u8, 73u8, 110u8, 100u8, 105u8, 118u8, 105u8, 100u8, 117u8, 97u8, 108u8,
69u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8, 101u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8,
24u8, 0u8, 8u8, 1u8, 12u8, 119u8, 104u8, 111u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 213u8, 1u8, 8u8, 44u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 117u8, 100u8, 111u8, 32u8, 82u8, 97u8, 119u8, 69u8,
118u8, 101u8, 110u8, 116u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
1u8, 0u8, 1u8, 12u8, 20u8, 83u8, 117u8, 100u8, 105u8, 100u8, 4u8, 0u8, 45u8, 1u8, 1u8, 56u8,
68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8,
0u8, 0u8, 4u8, 136u8, 65u8, 32u8, 115u8, 117u8, 100u8, 111u8, 32u8, 106u8, 117u8, 115u8, 116u8,
32u8, 116u8, 111u8, 111u8, 107u8, 32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 46u8, 32u8, 92u8, 91u8,
114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 92u8, 93u8, 40u8, 75u8, 101u8, 121u8, 67u8, 104u8,
97u8, 110u8, 103u8, 101u8, 100u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 4u8, 252u8, 84u8, 104u8, 101u8, 32u8, 92u8, 91u8, 115u8,
117u8, 100u8, 111u8, 101u8, 114u8, 92u8, 93u8, 32u8, 106u8, 117u8, 115u8, 116u8, 32u8, 115u8,
119u8, 105u8, 116u8, 99u8, 104u8, 101u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 59u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 108u8, 100u8, 32u8, 107u8, 101u8,
121u8, 32u8, 105u8, 115u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 46u8,
40u8, 83u8, 117u8, 100u8, 111u8, 65u8, 115u8, 68u8, 111u8, 110u8, 101u8, 4u8, 0u8, 45u8, 1u8,
1u8, 56u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 82u8, 101u8, 115u8, 117u8, 108u8,
116u8, 0u8, 2u8, 4u8, 136u8, 65u8, 32u8, 115u8, 117u8, 100u8, 111u8, 32u8, 106u8, 117u8, 115u8,
116u8, 32u8, 116u8, 111u8, 111u8, 107u8, 32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 46u8, 32u8, 92u8,
91u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 92u8, 93u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8,
116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8,
100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 217u8, 1u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8,
20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8,
116u8, 8u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 1u8, 32u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 104u8, 32u8, 84u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8,
100u8, 0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8,
8u8, 116u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 115u8, 46u8, 220u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 44u8, 32u8, 116u8, 111u8, 32u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 44u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 24u8, 73u8, 115u8, 115u8, 117u8, 101u8, 100u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 221u8, 1u8, 1u8, 64u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8,
82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 8u8, 112u8, 69u8, 109u8, 105u8, 116u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 103u8, 101u8,
116u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 46u8, 117u8, 1u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
44u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8, 105u8, 97u8, 114u8, 121u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8,
105u8, 110u8, 103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 44u8, 32u8, 116u8, 111u8, 116u8,
97u8, 108u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 114u8, 111u8,
117u8, 110u8, 100u8, 32u8, 82u8, 101u8, 100u8, 101u8, 101u8, 109u8, 101u8, 100u8, 16u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 2u8, 8u8, 120u8, 69u8, 109u8, 105u8, 116u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 103u8, 101u8,
116u8, 32u8, 114u8, 101u8, 100u8, 101u8, 101u8, 109u8, 101u8, 100u8, 46u8, 144u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 44u8, 32u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 118u8,
97u8, 108u8, 117u8, 101u8, 48u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 114u8, 101u8, 97u8,
116u8, 101u8, 100u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8,
21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 225u8, 1u8, 1u8, 36u8, 65u8, 115u8,
115u8, 101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 3u8, 8u8, 128u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 149u8, 1u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 47u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 100u8, 105u8, 118u8,
105u8, 115u8, 105u8, 98u8, 105u8, 108u8, 105u8, 116u8, 121u8, 44u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 44u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8,
105u8, 99u8, 105u8, 97u8, 114u8, 121u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 32u8,
117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 72u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 233u8, 1u8,
1u8, 80u8, 86u8, 101u8, 99u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 62u8, 0u8, 4u8, 8u8, 212u8, 69u8, 118u8, 101u8, 110u8,
116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 97u8, 110u8, 121u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 117u8,
112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 13u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 97u8,
32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 40u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 32u8, 116u8, 121u8, 112u8, 101u8, 44u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 41u8, 76u8, 68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 105u8, 108u8,
105u8, 116u8, 121u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8,
108u8, 0u8, 5u8, 8u8, 132u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 105u8, 110u8, 32u8, 100u8, 105u8, 118u8, 105u8,
115u8, 105u8, 98u8, 105u8, 108u8, 105u8, 116u8, 121u8, 46u8, 128u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8,
32u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 105u8, 108u8, 105u8, 116u8, 121u8, 64u8,
84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 87u8, 105u8, 116u8, 104u8, 68u8, 97u8,
116u8, 97u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8,
1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 6u8, 8u8, 53u8, 1u8, 65u8, 110u8, 32u8, 97u8, 100u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8,
116u8, 111u8, 32u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 59u8, 32u8, 101u8,
109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 100u8,
97u8, 116u8, 97u8, 96u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 46u8,
200u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 44u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 116u8, 111u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8,
44u8, 32u8, 100u8, 97u8, 116u8, 97u8, 40u8, 73u8, 115u8, 73u8, 115u8, 115u8, 117u8, 97u8, 98u8,
108u8, 101u8, 8u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 21u8,
1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 7u8, 8u8, 80u8, 105u8, 115u8, 95u8, 105u8, 115u8,
115u8, 117u8, 97u8, 98u8, 108u8, 101u8, 40u8, 41u8, 32u8, 111u8, 117u8, 116u8, 112u8, 117u8,
116u8, 156u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 114u8, 101u8, 116u8, 117u8,
114u8, 110u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 40u8, 116u8, 114u8, 117u8, 101u8,
32u8, 105u8, 102u8, 32u8, 105u8, 115u8, 115u8, 117u8, 97u8, 98u8, 108u8, 101u8, 41u8, 64u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 240u8, 1u8,
56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
62u8, 0u8, 8u8, 8u8, 124u8, 69u8, 109u8, 105u8, 116u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 103u8, 105u8,
115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 46u8, 236u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 32u8, 47u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8,
119u8, 110u8, 101u8, 114u8, 32u8, 100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 44u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 68u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 9u8, 8u8, 128u8, 69u8,
109u8, 105u8, 116u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 105u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8,
101u8, 100u8, 46u8, 208u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 32u8,
47u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 114u8, 111u8, 109u8, 100u8, 65u8,
115u8, 115u8, 101u8, 116u8, 79u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 84u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 10u8, 8u8, 164u8, 69u8, 109u8, 105u8, 116u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 105u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 46u8, 244u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 32u8, 47u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 111u8,
119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 114u8, 111u8, 109u8, 44u8, 65u8,
115u8, 115u8, 101u8, 116u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 8u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 11u8, 8u8, 164u8, 65u8, 110u8, 32u8, 101u8, 118u8,
101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 105u8, 115u8,
32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 120u8, 80u8, 97u8, 114u8, 97u8, 109u8,
101u8, 116u8, 101u8, 114u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 52u8, 65u8, 115u8, 115u8, 101u8,
116u8, 85u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 12u8, 8u8, 172u8, 65u8, 110u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8,
110u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 105u8, 115u8, 32u8,
117u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 120u8, 80u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 48u8, 65u8, 115u8,
115u8, 101u8, 116u8, 82u8, 101u8, 110u8, 97u8, 109u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 249u8, 1u8, 1u8, 36u8, 65u8, 115u8, 115u8,
101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8, 13u8, 8u8, 164u8, 65u8, 110u8, 32u8, 101u8, 118u8,
101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 97u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 115u8, 32u8,
114u8, 101u8, 110u8, 97u8, 109u8, 101u8, 100u8, 46u8, 188u8, 80u8, 97u8, 114u8, 97u8, 109u8,
101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 110u8, 101u8,
119u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8, 60u8,
70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 83u8, 101u8,
116u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 221u8, 1u8,
1u8, 64u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8,
78u8, 97u8, 109u8, 101u8, 0u8, 14u8, 8u8, 17u8, 1u8, 65u8, 110u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 32u8, 99u8, 97u8, 114u8, 114u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 204u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8,
101u8, 114u8, 115u8, 58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8,
105u8, 110u8, 103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 32u8, 110u8, 97u8, 109u8, 101u8,
46u8, 52u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 65u8, 100u8, 100u8, 101u8,
100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 253u8, 1u8,
1u8, 40u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 1u8, 2u8,
1u8, 32u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 0u8, 15u8, 4u8, 140u8, 65u8,
32u8, 110u8, 101u8, 119u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8,
97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 60u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8,
82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 0u8, 253u8, 1u8, 1u8, 40u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8,
110u8, 116u8, 73u8, 100u8, 0u8, 16u8, 4u8, 128u8, 65u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8,
101u8, 110u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 64u8, 69u8, 120u8,
116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 0u8, 1u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 17u8, 8u8, 96u8, 65u8, 32u8,
101u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 32u8, 103u8, 111u8, 116u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 116u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 80u8, 67u8, 108u8, 97u8, 115u8, 115u8,
105u8, 99u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 67u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 45u8, 2u8,
1u8, 60u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 65u8, 100u8, 100u8, 114u8,
101u8, 115u8, 115u8, 0u8, 18u8, 4u8, 53u8, 1u8, 65u8, 32u8, 80u8, 111u8, 108u8, 121u8, 109u8,
97u8, 116u8, 104u8, 32u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 110u8, 111u8, 110u8, 45u8, 115u8,
121u8, 115u8, 116u8, 101u8, 109u8, 97u8, 116u8, 105u8, 99u8, 32u8, 68u8, 73u8, 68u8, 46u8, 72u8,
67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 84u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8,
100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 19u8, 8u8,
180u8, 69u8, 118u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 101u8,
110u8, 32u8, 97u8, 32u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 116u8, 97u8, 107u8, 101u8, 115u8, 32u8, 112u8, 108u8,
97u8, 99u8, 101u8, 46u8, 21u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 47u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 44u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 46u8, 84u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8,
116u8, 84u8, 121u8, 112u8, 101u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 229u8, 1u8,
1u8, 68u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8,
121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 20u8, 8u8, 176u8, 65u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 111u8, 110u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 49u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 110u8, 116u8,
115u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 46u8, 100u8,
67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8, 112u8,
101u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 12u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 229u8,
1u8, 1u8, 68u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8,
121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 21u8, 8u8, 176u8, 65u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 119u8, 97u8, 115u8,
32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 32u8, 111u8, 110u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 49u8, 1u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 110u8, 116u8,
115u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 46u8, 84u8,
83u8, 101u8, 116u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 0u8, 49u8, 2u8, 1u8, 72u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 0u8, 0u8, 53u8,
2u8, 1u8, 160u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8,
116u8, 97u8, 105u8, 108u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 62u8, 0u8, 22u8,
8u8, 100u8, 83u8, 101u8, 116u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 240u8, 40u8,
67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 44u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 44u8, 32u8, 111u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8,
108u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 41u8, 112u8, 83u8, 101u8, 116u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 57u8,
2u8, 1u8, 128u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 60u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 23u8, 8u8, 220u8, 83u8, 101u8, 116u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8,
97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 40u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 44u8, 32u8, 108u8, 111u8, 99u8, 107u8, 32u8, 115u8,
116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 46u8, 140u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 41u8,
120u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 84u8, 121u8,
112u8, 101u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 65u8,
2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 69u8, 2u8, 1u8, 84u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 75u8, 101u8,
121u8, 0u8, 0u8, 73u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 83u8, 112u8, 101u8, 99u8, 0u8, 24u8, 8u8, 140u8, 82u8, 101u8,
103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 108u8, 111u8, 99u8, 97u8, 108u8, 32u8, 116u8,
121u8, 112u8, 101u8, 46u8, 5u8, 1u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 76u8, 111u8, 99u8,
97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 44u8, 32u8, 76u8,
111u8, 99u8, 97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 107u8, 101u8, 121u8, 44u8,
32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 115u8, 41u8, 124u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 84u8, 121u8, 112u8,
101u8, 12u8, 0u8, 65u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 97u8, 2u8, 1u8, 88u8, 65u8,
115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 71u8, 108u8,
111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 0u8, 0u8, 73u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8,
101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 83u8, 112u8, 101u8, 99u8, 0u8,
25u8, 8u8, 144u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 103u8,
108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 188u8, 40u8, 71u8,
108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 110u8, 97u8, 109u8,
101u8, 44u8, 32u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8,
107u8, 101u8, 121u8, 44u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8,
115u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 221u8,
1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8,
105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8,
64u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8,
97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 0u8, 0u8, 225u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 20u8, 97u8, 115u8,
115u8, 101u8, 116u8, 36u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8,
44u8, 48u8, 69u8, 113u8, 117u8, 105u8, 116u8, 121u8, 67u8, 111u8, 109u8, 109u8, 111u8, 110u8,
0u8, 0u8, 0u8, 60u8, 69u8, 113u8, 117u8, 105u8, 116u8, 121u8, 80u8, 114u8, 101u8, 102u8, 101u8,
114u8, 114u8, 101u8, 100u8, 0u8, 1u8, 0u8, 36u8, 67u8, 111u8, 109u8, 109u8, 111u8, 100u8, 105u8,
116u8, 121u8, 0u8, 2u8, 0u8, 44u8, 70u8, 105u8, 120u8, 101u8, 100u8, 73u8, 110u8, 99u8, 111u8,
109u8, 101u8, 0u8, 3u8, 0u8, 16u8, 82u8, 69u8, 73u8, 84u8, 0u8, 4u8, 0u8, 16u8, 70u8, 117u8,
110u8, 100u8, 0u8, 5u8, 0u8, 84u8, 82u8, 101u8, 118u8, 101u8, 110u8, 117u8, 101u8, 83u8, 104u8,
97u8, 114u8, 101u8, 65u8, 103u8, 114u8, 101u8, 101u8, 109u8, 101u8, 110u8, 116u8, 0u8, 6u8, 0u8,
68u8, 83u8, 116u8, 114u8, 117u8, 99u8, 116u8, 117u8, 114u8, 101u8, 100u8, 80u8, 114u8, 111u8,
100u8, 117u8, 99u8, 116u8, 0u8, 7u8, 0u8, 40u8, 68u8, 101u8, 114u8, 105u8, 118u8, 97u8, 116u8,
105u8, 118u8, 101u8, 0u8, 8u8, 0u8, 24u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 4u8, 0u8,
229u8, 1u8, 1u8, 68u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8, 116u8,
84u8, 121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 9u8, 0u8, 40u8, 83u8, 116u8, 97u8, 98u8, 108u8,
101u8, 67u8, 111u8, 105u8, 110u8, 0u8, 10u8, 0u8, 0u8, 229u8, 1u8, 12u8, 76u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8,
118u8, 101u8, 115u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 68u8, 67u8, 117u8, 115u8, 116u8,
111u8, 109u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 0u8,
4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 233u8, 1u8, 0u8, 0u8, 2u8, 237u8, 1u8,
0u8, 237u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 64u8, 97u8, 115u8, 115u8, 101u8,
116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 60u8, 65u8,
115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8,
0u8, 1u8, 20u8, 20u8, 67u8, 85u8, 83u8, 73u8, 80u8, 4u8, 0u8, 241u8, 1u8, 1u8, 28u8, 91u8, 117u8,
56u8, 59u8, 32u8, 57u8, 93u8, 0u8, 0u8, 0u8, 16u8, 67u8, 73u8, 78u8, 83u8, 4u8, 0u8, 241u8, 1u8,
1u8, 28u8, 91u8, 117u8, 56u8, 59u8, 32u8, 57u8, 93u8, 0u8, 1u8, 0u8, 16u8, 73u8, 83u8, 73u8,
78u8, 4u8, 0u8, 160u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 49u8, 50u8, 93u8, 0u8, 2u8, 0u8,
12u8, 76u8, 69u8, 73u8, 4u8, 0u8, 245u8, 1u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 50u8,
48u8, 93u8, 0u8, 3u8, 0u8, 16u8, 70u8, 73u8, 71u8, 73u8, 4u8, 0u8, 160u8, 1u8, 32u8, 91u8, 117u8,
56u8, 59u8, 32u8, 49u8, 50u8, 93u8, 0u8, 4u8, 0u8, 0u8, 241u8, 1u8, 0u8, 0u8, 3u8, 9u8, 0u8, 0u8,
0u8, 8u8, 0u8, 245u8, 1u8, 0u8, 0u8, 3u8, 20u8, 0u8, 0u8, 0u8, 8u8, 0u8, 249u8, 1u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 36u8, 65u8, 115u8,
115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 253u8, 1u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 40u8, 68u8, 111u8, 99u8,
117u8, 109u8, 101u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 0u8, 1u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 100u8, 111u8,
99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8,
116u8, 0u8, 0u8, 20u8, 1u8, 12u8, 117u8, 114u8, 105u8, 5u8, 2u8, 1u8, 44u8, 68u8, 111u8, 99u8,
117u8, 109u8, 101u8, 110u8, 116u8, 85u8, 114u8, 105u8, 0u8, 1u8, 48u8, 99u8, 111u8, 110u8, 116u8,
101u8, 110u8, 116u8, 95u8, 104u8, 97u8, 115u8, 104u8, 9u8, 2u8, 1u8, 48u8, 68u8, 111u8, 99u8,
117u8, 109u8, 101u8, 110u8, 116u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 16u8, 110u8, 97u8, 109u8,
101u8, 33u8, 2u8, 1u8, 48u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 78u8, 97u8,
109u8, 101u8, 0u8, 1u8, 32u8, 100u8, 111u8, 99u8, 95u8, 116u8, 121u8, 112u8, 101u8, 37u8, 2u8,
1u8, 80u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8,
110u8, 116u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 1u8, 44u8, 102u8, 105u8, 108u8, 105u8, 110u8,
103u8, 95u8, 100u8, 97u8, 116u8, 101u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 5u8, 2u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8,
44u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 85u8, 114u8, 105u8, 0u8, 0u8, 4u8,
0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 9u8, 2u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8,
95u8, 104u8, 97u8, 115u8, 104u8, 48u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8,
72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 36u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8,
72u8, 53u8, 49u8, 50u8, 4u8, 0u8, 13u8, 2u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 54u8,
52u8, 93u8, 0u8, 1u8, 0u8, 16u8, 72u8, 51u8, 56u8, 52u8, 4u8, 0u8, 17u8, 2u8, 1u8, 32u8, 91u8,
117u8, 56u8, 59u8, 32u8, 52u8, 56u8, 93u8, 0u8, 2u8, 0u8, 16u8, 72u8, 51u8, 50u8, 48u8, 4u8, 0u8,
21u8, 2u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 52u8, 48u8, 93u8, 0u8, 3u8, 0u8, 16u8, 72u8,
50u8, 53u8, 54u8, 4u8, 0u8, 4u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 51u8, 50u8, 93u8, 0u8,
4u8, 0u8, 16u8, 72u8, 50u8, 50u8, 52u8, 4u8, 0u8, 25u8, 2u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8,
32u8, 50u8, 56u8, 93u8, 0u8, 5u8, 0u8, 16u8, 72u8, 49u8, 57u8, 50u8, 4u8, 0u8, 29u8, 2u8, 1u8,
32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 50u8, 52u8, 93u8, 0u8, 6u8, 0u8, 16u8, 72u8, 49u8, 54u8,
48u8, 4u8, 0u8, 245u8, 1u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 50u8, 48u8, 93u8, 0u8, 7u8,
0u8, 16u8, 72u8, 49u8, 50u8, 56u8, 4u8, 0u8, 149u8, 1u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8,
32u8, 49u8, 54u8, 93u8, 0u8, 8u8, 0u8, 0u8, 13u8, 2u8, 0u8, 0u8, 3u8, 64u8, 0u8, 0u8, 0u8, 8u8,
0u8, 17u8, 2u8, 0u8, 0u8, 3u8, 48u8, 0u8, 0u8, 0u8, 8u8, 0u8, 21u8, 2u8, 0u8, 0u8, 3u8, 40u8,
0u8, 0u8, 0u8, 8u8, 0u8, 25u8, 2u8, 0u8, 0u8, 3u8, 28u8, 0u8, 0u8, 0u8, 8u8, 0u8, 29u8, 2u8, 0u8,
0u8, 3u8, 24u8, 0u8, 0u8, 0u8, 8u8, 0u8, 33u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 48u8, 68u8, 111u8, 99u8,
117u8, 109u8, 101u8, 110u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8,
86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 37u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 41u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8,
0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 41u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8,
41u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 100u8, 111u8, 99u8, 117u8,
109u8, 101u8, 110u8, 116u8, 48u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 84u8,
121u8, 112u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 0u8, 0u8, 45u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 101u8, 116u8,
104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 60u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8,
109u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 0u8, 0u8, 4u8, 0u8, 245u8, 1u8, 1u8, 32u8,
91u8, 117u8, 56u8, 59u8, 32u8, 50u8, 48u8, 93u8, 0u8, 0u8, 49u8, 2u8, 12u8, 76u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8,
118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 72u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8,
86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 53u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 57u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8,
0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 57u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8,
57u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8, 101u8,
116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 96u8, 65u8, 115u8, 115u8,
101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8,
101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 4u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 1u8, 32u8, 0u8, 8u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 240u8, 1u8,
56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
62u8, 0u8, 1u8, 44u8, 108u8, 111u8, 99u8, 107u8, 95u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
61u8, 2u8, 1u8, 124u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 76u8, 111u8, 99u8, 107u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 60u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 61u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 92u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 76u8, 111u8, 99u8, 107u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 4u8, 24u8, 77u8,
111u8, 109u8, 101u8, 110u8, 116u8, 1u8, 32u8, 1u8, 12u8, 32u8, 85u8, 110u8, 108u8, 111u8, 99u8,
107u8, 101u8, 100u8, 0u8, 0u8, 0u8, 24u8, 76u8, 111u8, 99u8, 107u8, 101u8, 100u8, 0u8, 1u8, 0u8,
44u8, 76u8, 111u8, 99u8, 107u8, 101u8, 100u8, 85u8, 110u8, 116u8, 105u8, 108u8, 4u8, 0u8, 32u8,
1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 2u8, 0u8, 0u8, 65u8, 2u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8,
28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 69u8, 2u8, 12u8, 76u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8,
118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 84u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 75u8, 101u8, 121u8, 0u8, 0u8, 4u8, 0u8,
32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 73u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 83u8, 112u8, 101u8, 99u8, 0u8, 0u8, 12u8, 1u8, 12u8, 117u8, 114u8, 108u8, 77u8, 2u8,
1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 85u8, 114u8, 108u8, 62u8, 0u8, 1u8,
44u8, 100u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 85u8, 2u8, 1u8,
128u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 68u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8,
116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 1u8, 32u8, 116u8, 121u8, 112u8, 101u8, 95u8, 100u8, 101u8,
102u8, 93u8, 2u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 86u8, 101u8, 99u8,
60u8, 117u8, 56u8, 62u8, 62u8, 0u8, 0u8, 77u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 4u8, 4u8, 84u8, 1u8, 81u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8,
16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 81u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8, 81u8, 2u8, 8u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 12u8, 85u8, 114u8, 108u8, 0u8, 0u8, 4u8, 0u8, 40u8,
1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 85u8, 2u8, 4u8, 24u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 89u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 89u8, 2u8, 0u8, 0u8, 1u8,
0u8, 0u8, 89u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8,
101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 96u8, 65u8, 115u8,
115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 68u8, 101u8, 115u8,
99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8,
101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 93u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 40u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8,
0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 40u8, 0u8, 0u8, 1u8, 0u8, 0u8, 97u8, 2u8, 12u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 88u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8,
121u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 101u8, 2u8, 12u8, 96u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 48u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 20u8, 69u8, 118u8, 101u8, 110u8,
116u8, 0u8, 1u8, 16u8, 28u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 105u8,
2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8,
16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 117u8, 2u8, 1u8, 48u8, 68u8, 105u8, 115u8, 116u8, 114u8,
105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 16u8, 184u8, 65u8, 32u8, 99u8, 97u8,
112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 44u8,
49u8, 1u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 40u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
41u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 67u8,
65u8, 73u8, 100u8, 96u8, 46u8, 0u8, 168u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 100u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 41u8, 56u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 24u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8,
110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8,
116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8,
117u8, 2u8, 1u8, 48u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 121u8,
2u8, 1u8, 12u8, 84u8, 97u8, 120u8, 0u8, 1u8, 12u8, 81u8, 1u8, 65u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 39u8, 115u8, 32u8, 98u8, 101u8,
110u8, 101u8, 102u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 97u8, 112u8,
105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 96u8, 67u8, 65u8, 73u8, 100u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8,
99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8, 0u8, 145u8, 1u8, 40u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 72u8, 111u8, 108u8, 100u8, 101u8, 114u8,
47u8, 67u8, 108u8, 97u8, 105u8, 109u8, 97u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8,
32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 44u8, 32u8, 68u8, 73u8, 68u8, 39u8, 115u8,
32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 44u8, 32u8, 68u8, 73u8, 68u8, 39u8, 115u8,
32u8, 116u8, 97u8, 120u8, 32u8, 37u8, 41u8, 36u8, 82u8, 101u8, 99u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 12u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8,
100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 2u8, 12u8, 152u8, 83u8, 116u8, 97u8, 116u8, 115u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 112u8, 117u8, 115u8, 104u8, 95u8, 98u8, 101u8,
110u8, 101u8, 102u8, 105u8, 116u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 101u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 46u8, 0u8, 21u8, 1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 109u8, 97u8,
120u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 32u8, 68u8, 73u8,
68u8, 115u8, 44u8, 32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 101u8, 100u8, 32u8,
68u8, 73u8, 68u8, 115u8, 44u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 68u8, 73u8,
68u8, 115u8, 41u8, 28u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 105u8, 2u8,
1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8,
67u8, 65u8, 73u8, 100u8, 0u8, 3u8, 12u8, 140u8, 65u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8,
97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8,
0u8, 80u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8,
65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 0u8, 105u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 101u8,
118u8, 101u8, 110u8, 116u8, 95u8, 111u8, 110u8, 108u8, 121u8, 36u8, 69u8, 118u8, 101u8, 110u8,
116u8, 79u8, 110u8, 108u8, 121u8, 4u8, 4u8, 84u8, 1u8, 120u8, 0u8, 4u8, 0u8, 120u8, 1u8, 4u8,
84u8, 0u8, 0u8, 109u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 32u8, 108u8,
111u8, 99u8, 97u8, 108u8, 95u8, 105u8, 100u8, 113u8, 2u8, 1u8, 36u8, 76u8, 111u8, 99u8, 97u8,
108u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 113u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 36u8, 76u8, 111u8, 99u8, 97u8, 108u8, 67u8, 65u8, 73u8,
100u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 117u8, 2u8, 12u8, 96u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 48u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 48u8, 68u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 32u8, 1u8, 16u8, 102u8, 114u8,
111u8, 109u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
73u8, 100u8, 0u8, 1u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 156u8, 1u8,
24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 36u8, 112u8, 101u8, 114u8, 95u8, 115u8,
104u8, 97u8, 114u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8,
24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 114u8, 101u8, 99u8,
108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
1u8, 40u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 32u8, 1u8, 24u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 40u8, 101u8, 120u8, 112u8, 105u8, 114u8,
101u8, 115u8, 95u8, 97u8, 116u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 121u8, 2u8, 12u8, 52u8, 115u8, 112u8,
95u8, 97u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8, 40u8, 112u8, 101u8,
114u8, 95u8, 116u8, 104u8, 105u8, 110u8, 103u8, 115u8, 28u8, 80u8, 101u8, 114u8, 109u8, 105u8,
108u8, 108u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 125u8, 2u8, 16u8,
100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8,
111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8,
114u8, 97u8, 105u8, 116u8, 115u8, 40u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8,
110u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 16u8, 68u8, 67u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8,
20u8, 0u8, 129u8, 2u8, 1u8, 64u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 69u8, 118u8,
101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 62u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 0u8, 133u8, 2u8, 1u8, 48u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8,
111u8, 105u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 0u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8,
12u8, 100u8, 65u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 29u8,
1u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8,
105u8, 110u8, 116u8, 32u8, 73u8, 68u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8,
117u8, 112u8, 112u8, 108u8, 121u8, 44u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8,
105u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 41u8,
132u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 115u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 67u8,
104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8,
12u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 110u8, 32u8, 97u8, 114u8, 98u8, 105u8, 116u8, 114u8, 97u8, 114u8, 121u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 39u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 100u8, 46u8, 0u8, 100u8, 40u8, 71u8, 67u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8,
117u8, 109u8, 41u8, 60u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 67u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8,
116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 137u8, 2u8, 1u8, 56u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 2u8, 12u8, 136u8, 65u8, 32u8, 99u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8,
120u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 41u8, 60u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 137u8, 2u8, 1u8, 56u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 3u8, 12u8, 136u8, 65u8, 32u8, 99u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8,
0u8, 120u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
0u8, 129u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 105u8,
2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8,
4u8, 0u8, 105u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8, 133u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8,
121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8,
101u8, 115u8, 32u8, 99u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 48u8, 67u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 137u8, 2u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8,
40u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 56u8, 83u8, 116u8,
111u8, 114u8, 101u8, 100u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 0u8, 16u8,
1u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 141u8, 2u8, 1u8, 72u8, 67u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 83u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 0u8, 1u8, 8u8, 105u8, 100u8, 153u8, 2u8, 1u8, 40u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 73u8, 100u8, 0u8, 1u8, 8u8, 97u8, 116u8, 32u8, 1u8, 24u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 36u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8,
105u8, 110u8, 103u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 141u8, 2u8, 12u8, 76u8, 112u8,
111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8,
105u8, 118u8, 101u8, 115u8, 32u8, 99u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 72u8,
67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 83u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 0u8, 0u8, 8u8, 1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8,
1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 24u8, 112u8, 101u8, 114u8, 105u8,
111u8, 100u8, 145u8, 2u8, 1u8, 56u8, 67u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 80u8,
101u8, 114u8, 105u8, 111u8, 100u8, 0u8, 0u8, 145u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 32u8, 99u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 56u8, 67u8, 97u8, 108u8, 101u8,
110u8, 100u8, 97u8, 114u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 0u8, 0u8, 8u8, 1u8, 16u8,
117u8, 110u8, 105u8, 116u8, 149u8, 2u8, 1u8, 48u8, 67u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8,
114u8, 85u8, 110u8, 105u8, 116u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 149u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 32u8, 99u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 48u8, 67u8, 97u8, 108u8, 101u8,
110u8, 100u8, 97u8, 114u8, 85u8, 110u8, 105u8, 116u8, 0u8, 1u8, 28u8, 24u8, 83u8, 101u8, 99u8,
111u8, 110u8, 100u8, 0u8, 0u8, 0u8, 24u8, 77u8, 105u8, 110u8, 117u8, 116u8, 101u8, 0u8, 1u8, 0u8,
16u8, 72u8, 111u8, 117u8, 114u8, 0u8, 2u8, 0u8, 12u8, 68u8, 97u8, 121u8, 0u8, 3u8, 0u8, 16u8,
87u8, 101u8, 101u8, 107u8, 0u8, 4u8, 0u8, 20u8, 77u8, 111u8, 110u8, 116u8, 104u8, 0u8, 5u8, 0u8,
16u8, 89u8, 101u8, 97u8, 114u8, 0u8, 6u8, 0u8, 0u8, 153u8, 2u8, 16u8, 100u8, 112u8, 111u8, 108u8,
121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8,
116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8,
115u8, 40u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 40u8, 83u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8,
117u8, 54u8, 52u8, 0u8, 0u8, 157u8, 2u8, 8u8, 100u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 95u8, 109u8, 97u8,
110u8, 97u8, 103u8, 101u8, 114u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 36u8, 112u8,
67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8,
105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 161u8, 2u8, 1u8,
84u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8, 8u8, 204u8, 69u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 110u8, 101u8, 119u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 176u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 67u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 41u8, 46u8, 112u8, 67u8, 111u8, 109u8, 112u8, 108u8,
105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8,
110u8, 116u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 8u8,
196u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8,
97u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 148u8, 40u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8,
32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 105u8,
100u8, 41u8, 46u8, 92u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8, 109u8, 112u8, 108u8,
105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 112u8, 108u8, 97u8, 99u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 205u8, 2u8, 1u8, 104u8, 86u8,
101u8, 99u8, 60u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 2u8, 8u8, 180u8,
69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8,
110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8,
97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 112u8, 108u8, 97u8, 99u8,
101u8, 100u8, 46u8, 212u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8,
58u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 46u8,
80u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 82u8, 101u8, 115u8, 101u8, 116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 3u8, 8u8, 216u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8,
97u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8,
115u8, 101u8, 116u8, 46u8, 84u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 46u8, 88u8, 65u8, 115u8, 115u8,
101u8, 116u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8,
115u8, 117u8, 109u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 4u8, 8u8, 1u8, 1u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 99u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8,
97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 114u8, 101u8, 115u8, 117u8, 109u8, 101u8, 46u8, 84u8,
40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 41u8, 46u8, 84u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 80u8, 97u8, 117u8, 115u8, 101u8, 100u8,
8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 5u8, 8u8, 1u8, 1u8,
69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8,
110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8,
97u8, 110u8, 99u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 103u8, 101u8, 116u8, 115u8,
32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8, 46u8, 84u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 46u8,
112u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 161u8, 2u8,
1u8, 84u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 0u8, 6u8, 8u8, 224u8, 69u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 99u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
109u8, 101u8, 110u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 109u8, 111u8, 100u8, 105u8, 102u8,
105u8, 101u8, 100u8, 47u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 176u8, 40u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 44u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 41u8, 46u8, 120u8, 84u8,
114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 65u8, 100u8, 100u8, 101u8,
100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 189u8, 2u8,
1u8, 52u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 73u8, 115u8, 115u8, 117u8, 101u8,
114u8, 0u8, 7u8, 8u8, 21u8, 1u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 99u8, 108u8,
97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 108u8, 105u8, 115u8,
116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 97u8, 100u8,
100u8, 101u8, 100u8, 46u8, 168u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 65u8, 100u8, 100u8, 101u8,
100u8, 32u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 73u8, 115u8, 115u8, 117u8, 101u8,
114u8, 41u8, 46u8, 128u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 68u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 67u8, 108u8, 97u8, 105u8, 109u8, 73u8, 115u8, 115u8, 117u8, 101u8,
114u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 8u8, 8u8, 25u8, 1u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8,
100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8,
32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8,
108u8, 105u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 103u8, 101u8, 116u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 176u8, 40u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8,
32u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 84u8, 114u8, 117u8, 115u8, 116u8,
101u8, 100u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 41u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8,
110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 161u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 72u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 95u8, 109u8,
97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 84u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8,
110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8,
0u8, 0u8, 12u8, 1u8, 68u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 95u8, 99u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 165u8, 2u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8,
67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 1u8, 76u8, 114u8, 101u8,
99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 95u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8,
111u8, 110u8, 115u8, 165u8, 2u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 67u8, 111u8, 110u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 1u8, 8u8, 105u8, 100u8, 16u8, 1u8, 12u8, 117u8,
51u8, 50u8, 0u8, 0u8, 165u8, 2u8, 0u8, 0u8, 2u8, 169u8, 2u8, 0u8, 169u8, 2u8, 12u8, 76u8, 112u8,
111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8,
105u8, 118u8, 101u8, 115u8, 36u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8,
36u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 8u8, 1u8, 56u8,
99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 95u8, 116u8, 121u8, 112u8, 101u8,
173u8, 2u8, 1u8, 52u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 84u8, 121u8,
112u8, 101u8, 0u8, 1u8, 28u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 115u8, 185u8, 2u8, 1u8,
72u8, 86u8, 101u8, 99u8, 60u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 73u8, 115u8,
115u8, 117u8, 101u8, 114u8, 62u8, 0u8, 0u8, 173u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 36u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 52u8, 67u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8, 20u8, 36u8,
73u8, 115u8, 80u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 4u8, 0u8, 244u8, 1u8, 20u8, 67u8,
108u8, 97u8, 105u8, 109u8, 0u8, 0u8, 0u8, 32u8, 73u8, 115u8, 65u8, 98u8, 115u8, 101u8, 110u8,
116u8, 4u8, 0u8, 244u8, 1u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 1u8, 0u8, 28u8, 73u8,
115u8, 65u8, 110u8, 121u8, 79u8, 102u8, 4u8, 0u8, 177u8, 2u8, 1u8, 40u8, 86u8, 101u8, 99u8, 60u8,
67u8, 108u8, 97u8, 105u8, 109u8, 62u8, 0u8, 2u8, 0u8, 32u8, 73u8, 115u8, 78u8, 111u8, 110u8,
101u8, 79u8, 102u8, 4u8, 0u8, 177u8, 2u8, 1u8, 40u8, 86u8, 101u8, 99u8, 60u8, 67u8, 108u8, 97u8,
105u8, 109u8, 62u8, 0u8, 3u8, 0u8, 40u8, 73u8, 115u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 4u8, 0u8, 181u8, 2u8, 1u8, 56u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 4u8, 0u8, 0u8, 177u8, 2u8, 0u8, 0u8, 2u8,
244u8, 0u8, 181u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 36u8, 99u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 56u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 1u8, 8u8, 52u8, 69u8, 120u8, 116u8, 101u8,
114u8, 110u8, 97u8, 108u8, 65u8, 103u8, 101u8, 110u8, 116u8, 0u8, 0u8, 0u8, 32u8, 83u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 4u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 0u8, 0u8, 185u8, 2u8, 0u8, 0u8, 2u8, 189u8,
2u8, 0u8, 189u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 36u8, 99u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 52u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8,
73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 0u8, 0u8, 8u8, 1u8, 24u8, 105u8, 115u8, 115u8, 117u8,
101u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 1u8, 44u8, 116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 95u8, 102u8, 111u8,
114u8, 193u8, 2u8, 1u8, 40u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 70u8, 111u8, 114u8,
0u8, 0u8, 193u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 36u8, 99u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 40u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8,
70u8, 111u8, 114u8, 0u8, 1u8, 8u8, 12u8, 65u8, 110u8, 121u8, 0u8, 0u8, 0u8, 32u8, 83u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 4u8, 0u8, 197u8, 2u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8,
67u8, 108u8, 97u8, 105u8, 109u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 1u8, 0u8, 0u8, 197u8, 2u8,
0u8, 0u8, 2u8, 201u8, 2u8, 0u8, 201u8, 2u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8,
36u8, 67u8, 108u8, 97u8, 105u8, 109u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8, 48u8, 40u8, 65u8,
99u8, 99u8, 114u8, 101u8, 100u8, 105u8, 116u8, 101u8, 100u8, 0u8, 0u8, 0u8, 36u8, 65u8, 102u8,
102u8, 105u8, 108u8, 105u8, 97u8, 116u8, 101u8, 0u8, 1u8, 0u8, 36u8, 66u8, 117u8, 121u8, 76u8,
111u8, 99u8, 107u8, 117u8, 112u8, 0u8, 2u8, 0u8, 40u8, 83u8, 101u8, 108u8, 108u8, 76u8, 111u8,
99u8, 107u8, 117u8, 112u8, 0u8, 3u8, 0u8, 80u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 101u8,
114u8, 68u8, 117u8, 101u8, 68u8, 105u8, 108u8, 105u8, 103u8, 101u8, 110u8, 99u8, 101u8, 0u8, 4u8,
0u8, 64u8, 75u8, 110u8, 111u8, 119u8, 89u8, 111u8, 117u8, 114u8, 67u8, 117u8, 115u8, 116u8,
111u8, 109u8, 101u8, 114u8, 0u8, 5u8, 0u8, 48u8, 74u8, 117u8, 114u8, 105u8, 115u8, 100u8, 105u8,
99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 6u8, 0u8, 32u8, 69u8, 120u8, 101u8, 109u8, 112u8, 116u8,
101u8, 100u8, 0u8, 7u8, 0u8, 28u8, 66u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 0u8, 8u8, 0u8,
72u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8,
101u8, 110u8, 101u8, 115u8, 115u8, 0u8, 9u8, 0u8, 24u8, 78u8, 111u8, 84u8, 121u8, 112u8, 101u8,
0u8, 10u8, 0u8, 80u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8,
113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 86u8, 50u8, 0u8, 11u8, 0u8, 0u8, 205u8, 2u8,
0u8, 0u8, 2u8, 161u8, 2u8, 0u8, 209u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 36u8, 92u8, 77u8,
97u8, 120u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 76u8, 101u8, 110u8, 103u8, 116u8,
104u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 0u8, 8u8, 212u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8,
109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 100u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 105u8, 110u8, 32u8, 98u8, 121u8, 116u8,
101u8, 115u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8,
46u8, 80u8, 40u8, 71u8, 67u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8,
108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 41u8, 120u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
105u8, 101u8, 115u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 213u8, 2u8, 1u8, 64u8, 84u8, 97u8, 114u8,
103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 0u8,
1u8, 8u8, 236u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 100u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 96u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 96u8, 32u8, 102u8, 111u8,
114u8, 32u8, 97u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 99u8, 104u8, 97u8, 110u8,
103u8, 101u8, 100u8, 46u8, 164u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 84u8,
97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8,
115u8, 41u8, 112u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 87u8, 105u8, 116u8, 104u8,
104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 84u8, 97u8, 120u8, 67u8, 104u8, 97u8, 110u8,
103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8,
121u8, 2u8, 1u8, 12u8, 84u8, 97u8, 120u8, 0u8, 2u8, 8u8, 196u8, 84u8, 104u8, 101u8, 32u8, 100u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8,
100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
100u8, 46u8, 116u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 84u8, 97u8, 120u8,
41u8, 46u8, 96u8, 68u8, 105u8, 100u8, 87u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8,
105u8, 110u8, 103u8, 84u8, 97u8, 120u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 16u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 221u8, 2u8, 1u8, 44u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 97u8, 120u8, 62u8, 0u8, 3u8, 8u8, 236u8,
84u8, 104u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8,
32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
100u8, 46u8, 160u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 84u8, 97u8, 120u8, 101u8, 100u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 84u8, 97u8, 120u8, 41u8, 46u8, 56u8, 67u8,
65u8, 65u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 4u8, 8u8, 108u8, 65u8, 32u8,
110u8, 101u8, 119u8, 32u8, 68u8, 73u8, 68u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 97u8, 100u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 65u8, 46u8, 140u8, 40u8, 78u8, 101u8, 119u8,
32u8, 67u8, 65u8, 65u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 67u8, 65u8, 65u8, 32u8, 68u8, 73u8, 68u8, 41u8,
46u8, 44u8, 67u8, 65u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8,
105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8,
2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 225u8, 2u8, 1u8, 60u8, 67u8, 111u8, 114u8,
112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 253u8,
2u8, 1u8, 36u8, 67u8, 65u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 5u8, 8u8, 76u8,
65u8, 32u8, 67u8, 65u8, 32u8, 119u8, 97u8, 115u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8,
116u8, 101u8, 100u8, 46u8, 168u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8,
44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 41u8, 52u8, 67u8, 65u8, 76u8, 105u8, 110u8, 107u8, 101u8, 100u8, 84u8, 111u8, 68u8, 111u8,
99u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 1u8, 3u8, 1u8, 60u8,
86u8, 101u8, 99u8, 60u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 73u8, 100u8, 62u8,
0u8, 6u8, 8u8, 132u8, 65u8, 32u8, 67u8, 65u8, 32u8, 119u8, 97u8, 115u8, 32u8, 108u8, 105u8,
110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 115u8, 101u8, 116u8, 32u8,
111u8, 102u8, 32u8, 100u8, 111u8, 99u8, 115u8, 46u8, 172u8, 40u8, 65u8, 103u8, 101u8, 110u8,
116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 32u8, 73u8, 100u8, 44u8, 32u8, 76u8,
105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 100u8, 111u8, 99u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 41u8, 36u8, 67u8, 65u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8,
116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 7u8,
8u8, 68u8, 65u8, 32u8, 67u8, 65u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 46u8, 72u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8,
44u8, 32u8, 67u8, 65u8, 32u8, 73u8, 100u8, 41u8, 68u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8,
68u8, 97u8, 116u8, 101u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 105u8, 2u8,
1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8,
67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 225u8, 2u8, 1u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 8u8, 4u8, 108u8, 65u8,
32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 32u8, 100u8, 97u8,
116u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8,
101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 213u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 64u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 0u8, 0u8, 8u8, 1u8, 40u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 33u8, 1u8, 1u8, 60u8, 86u8,
101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8,
1u8, 36u8, 116u8, 114u8, 101u8, 97u8, 116u8, 109u8, 101u8, 110u8, 116u8, 217u8, 2u8, 1u8, 60u8,
84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 84u8, 114u8, 101u8, 97u8, 116u8, 109u8, 101u8, 110u8,
116u8, 0u8, 0u8, 217u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 60u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 84u8, 114u8, 101u8, 97u8, 116u8,
109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 8u8, 28u8, 73u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
0u8, 0u8, 0u8, 28u8, 69u8, 120u8, 99u8, 108u8, 117u8, 100u8, 101u8, 0u8, 1u8, 0u8, 0u8, 221u8,
2u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 121u8, 2u8, 1u8,
8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8,
121u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8, 225u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8,
101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 24u8, 1u8, 16u8, 107u8, 105u8, 110u8,
100u8, 229u8, 2u8, 1u8, 24u8, 67u8, 65u8, 75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 36u8, 100u8,
101u8, 99u8, 108u8, 95u8, 100u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 0u8, 1u8, 44u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8,
101u8, 233u8, 2u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 82u8, 101u8, 99u8,
111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 62u8, 0u8, 1u8, 28u8, 116u8, 97u8, 114u8, 103u8,
101u8, 116u8, 115u8, 213u8, 2u8, 1u8, 64u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 0u8, 1u8, 92u8, 100u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 95u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8,
110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 121u8, 2u8, 1u8, 12u8, 84u8, 97u8, 120u8, 0u8, 1u8, 60u8,
119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8,
120u8, 245u8, 2u8, 1u8, 88u8, 86u8, 101u8, 99u8, 60u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 84u8, 97u8, 120u8, 41u8, 62u8, 0u8, 0u8, 229u8,
2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 67u8, 65u8,
75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 20u8, 72u8, 80u8, 114u8, 101u8, 100u8, 105u8, 99u8, 116u8,
97u8, 98u8, 108u8, 101u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 0u8, 0u8, 0u8, 80u8,
85u8, 110u8, 112u8, 114u8, 101u8, 100u8, 105u8, 99u8, 116u8, 97u8, 98u8, 108u8, 101u8, 66u8,
101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 0u8, 1u8, 0u8, 48u8, 73u8, 115u8, 115u8, 117u8, 101u8,
114u8, 78u8, 111u8, 116u8, 105u8, 99u8, 101u8, 0u8, 2u8, 0u8, 56u8, 82u8, 101u8, 111u8, 114u8,
103u8, 97u8, 110u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 3u8, 0u8, 20u8, 79u8,
116u8, 104u8, 101u8, 114u8, 0u8, 4u8, 0u8, 0u8, 233u8, 2u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 237u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8,
0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 237u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8, 237u8,
2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 40u8, 82u8,
101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 0u8, 0u8, 8u8, 1u8, 16u8, 100u8,
97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 40u8,
99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 241u8, 2u8, 1u8, 48u8, 67u8,
65u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 0u8, 0u8, 241u8, 2u8,
8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 48u8, 67u8, 65u8,
67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 0u8, 1u8, 8u8, 36u8, 83u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 8u8, 0u8, 153u8, 2u8, 1u8, 40u8, 83u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8,
54u8, 52u8, 0u8, 0u8, 0u8, 32u8, 69u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 4u8, 0u8,
133u8, 2u8, 1u8, 48u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 73u8,
100u8, 0u8, 1u8, 0u8, 0u8, 245u8, 2u8, 0u8, 0u8, 2u8, 249u8, 2u8, 0u8, 249u8, 2u8, 0u8, 0u8, 4u8,
8u8, 120u8, 121u8, 2u8, 0u8, 253u8, 2u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 36u8, 67u8, 65u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8,
0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 1u8, 3u8,
0u8, 0u8, 2u8, 253u8, 1u8, 0u8, 5u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 20u8, 69u8, 118u8,
101u8, 110u8, 116u8, 0u8, 1u8, 24u8, 28u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 20u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 9u8, 3u8, 1u8, 60u8, 66u8, 97u8,
108u8, 108u8, 111u8, 116u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8, 103u8, 101u8, 0u8, 0u8,
13u8, 3u8, 1u8, 40u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 0u8,
21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 12u8, 124u8, 65u8, 32u8, 99u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8,
32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 21u8,
1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8,
39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 115u8,
116u8, 97u8, 114u8, 116u8, 47u8, 101u8, 110u8, 100u8, 44u8, 32u8, 66u8, 97u8, 108u8, 108u8,
111u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 44u8, 32u8, 82u8, 67u8,
86u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 63u8, 41u8, 32u8, 86u8, 111u8, 116u8,
101u8, 67u8, 97u8, 115u8, 116u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8,
0u8, 45u8, 3u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 86u8,
111u8, 116u8, 101u8, 62u8, 0u8, 1u8, 12u8, 152u8, 65u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8,
119u8, 97u8, 115u8, 32u8, 99u8, 97u8, 115u8, 116u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8,
116u8, 46u8, 0u8, 96u8, 40u8, 118u8, 111u8, 116u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 67u8, 65u8, 73u8, 100u8, 44u8, 32u8, 86u8, 111u8, 116u8, 101u8, 115u8, 41u8, 48u8, 82u8,
97u8, 110u8, 103u8, 101u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 109u8, 2u8,
1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 9u8, 3u8, 1u8, 60u8, 66u8, 97u8, 108u8, 108u8,
111u8, 116u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8, 103u8, 101u8, 0u8, 2u8, 12u8, 208u8,
65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 32u8, 105u8, 116u8,
115u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 47u8, 101u8, 110u8, 100u8, 32u8, 100u8, 97u8,
116u8, 101u8, 32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8, 0u8, 152u8, 40u8, 65u8, 103u8, 101u8,
110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8,
44u8, 32u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8,
47u8, 101u8, 110u8, 100u8, 41u8, 44u8, 77u8, 101u8, 116u8, 97u8, 67u8, 104u8, 97u8, 110u8, 103u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 13u8, 3u8, 1u8,
40u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 3u8, 12u8, 160u8,
65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 32u8, 105u8, 116u8,
115u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 46u8, 0u8, 136u8, 40u8, 65u8,
103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8,
73u8, 68u8, 44u8, 32u8, 78u8, 101u8, 119u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 41u8, 40u8, 82u8, 67u8, 86u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 4u8, 12u8, 172u8, 65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 99u8, 104u8, 97u8, 110u8,
103u8, 101u8, 100u8, 32u8, 105u8, 116u8, 115u8, 32u8, 82u8, 67u8, 86u8, 32u8, 115u8, 117u8,
112u8, 112u8, 111u8, 114u8, 116u8, 46u8, 0u8, 132u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 78u8,
101u8, 119u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 41u8, 28u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 8u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8,
116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 5u8,
12u8, 124u8, 65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8,
97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 46u8, 0u8, 80u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 73u8, 68u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8,
110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 9u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 60u8,
66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8, 103u8,
101u8, 0u8, 0u8, 8u8, 1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 1u8, 24u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 12u8, 101u8, 110u8, 100u8, 32u8, 1u8, 24u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 0u8, 0u8, 13u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 40u8, 66u8,
97u8, 108u8, 108u8, 111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 0u8, 8u8, 1u8, 20u8, 116u8,
105u8, 116u8, 108u8, 101u8, 17u8, 3u8, 1u8, 44u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 84u8,
105u8, 116u8, 108u8, 101u8, 0u8, 1u8, 28u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 115u8,
21u8, 3u8, 1u8, 44u8, 86u8, 101u8, 99u8, 60u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 62u8,
0u8, 0u8, 17u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 44u8, 66u8, 97u8, 108u8, 108u8, 111u8,
116u8, 84u8, 105u8, 116u8, 108u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8,
60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 21u8, 3u8, 0u8, 0u8, 2u8, 25u8, 3u8, 0u8, 25u8, 3u8, 12u8,
96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8,
97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 24u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 12u8, 1u8, 20u8,
116u8, 105u8, 116u8, 108u8, 101u8, 29u8, 3u8, 1u8, 44u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8,
84u8, 105u8, 116u8, 108u8, 101u8, 0u8, 1u8, 36u8, 105u8, 110u8, 102u8, 111u8, 95u8, 108u8, 105u8,
110u8, 107u8, 33u8, 3u8, 1u8, 56u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 73u8, 110u8, 102u8,
111u8, 76u8, 105u8, 110u8, 107u8, 0u8, 1u8, 28u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8,
37u8, 3u8, 1u8, 64u8, 86u8, 101u8, 99u8, 60u8, 67u8, 104u8, 111u8, 105u8, 99u8, 101u8, 84u8,
105u8, 116u8, 108u8, 101u8, 62u8, 0u8, 0u8, 29u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 44u8,
77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 84u8, 105u8, 116u8, 108u8, 101u8, 0u8, 0u8, 4u8, 0u8,
40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 33u8, 3u8, 12u8, 96u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 56u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 73u8, 110u8, 102u8, 111u8,
76u8, 105u8, 110u8, 107u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 0u8, 37u8, 3u8, 0u8, 0u8, 2u8, 41u8, 3u8, 0u8, 41u8, 3u8, 12u8, 96u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8,
101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8,
111u8, 116u8, 44u8, 67u8, 104u8, 111u8, 105u8, 99u8, 101u8, 84u8, 105u8, 116u8, 108u8, 101u8,
0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 45u8,
3u8, 0u8, 0u8, 2u8, 49u8, 3u8, 0u8, 49u8, 3u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 40u8, 66u8,
97u8, 108u8, 108u8, 111u8, 116u8, 86u8, 111u8, 116u8, 101u8, 0u8, 0u8, 8u8, 1u8, 20u8, 112u8,
111u8, 119u8, 101u8, 114u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
1u8, 32u8, 102u8, 97u8, 108u8, 108u8, 98u8, 97u8, 99u8, 107u8, 53u8, 3u8, 1u8, 44u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 49u8, 54u8, 62u8, 0u8, 0u8, 53u8, 3u8, 4u8, 24u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 57u8, 3u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 57u8, 3u8, 0u8, 0u8, 1u8,
0u8, 0u8, 57u8, 3u8, 0u8, 0u8, 5u8, 4u8, 0u8, 61u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8,
110u8, 116u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 1u8,
80u8, 80u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 105u8, 99u8, 97u8, 108u8, 80u8, 105u8,
112u8, 115u8, 80u8, 114u8, 117u8, 110u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8,
111u8, 111u8, 108u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 4u8,
69u8, 1u8, 80u8, 114u8, 117u8, 110u8, 105u8, 110u8, 103u8, 32u8, 72u8, 105u8, 115u8, 116u8,
111u8, 114u8, 105u8, 99u8, 97u8, 108u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 105u8, 115u8, 32u8,
101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 44u8, 32u8,
110u8, 101u8, 119u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 41u8, 60u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
65u8, 3u8, 1u8, 76u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 60u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8,
112u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
0u8, 77u8, 2u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 85u8, 114u8, 108u8,
62u8, 0u8, 0u8, 77u8, 3u8, 1u8, 88u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 80u8, 105u8,
112u8, 68u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 0u8,
53u8, 1u8, 1u8, 92u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 0u8, 85u8,
3u8, 1u8, 48u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 97u8, 116u8, 97u8,
0u8, 1u8, 20u8, 152u8, 65u8, 32u8, 80u8, 73u8, 80u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 97u8,
100u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 96u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 96u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8,
80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 0u8, 81u8, 1u8, 67u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 114u8, 44u8, 32u8, 80u8, 73u8, 80u8, 32u8, 73u8, 68u8, 44u8, 32u8, 100u8,
101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 44u8, 32u8, 85u8, 82u8, 76u8, 44u8, 32u8, 100u8, 101u8,
115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 101u8, 120u8, 112u8,
105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 100u8, 97u8, 116u8, 97u8, 46u8, 80u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 85u8, 112u8, 100u8, 97u8, 116u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 0u8, 89u8,
3u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8,
101u8, 0u8, 2u8, 4u8, 216u8, 84u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 101u8, 100u8, 32u8,
101u8, 97u8, 99u8, 104u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 97u8, 116u8, 101u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 115u8, 32u8, 97u8, 109u8, 101u8, 110u8, 100u8,
101u8, 100u8, 20u8, 86u8, 111u8, 116u8, 101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8,
112u8, 73u8, 100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 24u8,
1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 3u8, 4u8, 248u8, 96u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8,
32u8, 96u8, 98u8, 111u8, 111u8, 108u8, 96u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8,
101u8, 110u8, 99u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 80u8, 105u8, 112u8, 73u8, 100u8,
96u8, 36u8, 80u8, 105u8, 112u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8,
1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8,
108u8, 0u8, 4u8, 4u8, 232u8, 80u8, 105u8, 112u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 99u8, 108u8, 111u8, 115u8, 101u8, 100u8, 44u8, 32u8, 98u8, 111u8, 111u8,
108u8, 32u8, 105u8, 110u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 115u8, 32u8, 119u8, 104u8,
101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 105u8, 115u8, 32u8,
112u8, 114u8, 117u8, 110u8, 101u8, 100u8, 72u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8,
1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 5u8, 4u8, 224u8, 69u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8,
104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 99u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 116u8, 68u8, 101u8, 102u8, 97u8, 117u8,
108u8, 116u8, 69u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8, 110u8, 116u8, 80u8, 101u8, 114u8,
105u8, 111u8, 100u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 0u8, 16u8, 1u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 6u8, 8u8,
216u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8,
109u8, 101u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 40u8, 105u8,
110u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 144u8, 40u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8,
32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8,
101u8, 114u8, 105u8, 111u8, 100u8, 41u8, 116u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 7u8, 8u8, 124u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 100u8, 101u8,
112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 109u8,
111u8, 100u8, 105u8, 102u8, 105u8, 101u8, 100u8, 144u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
41u8, 92u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 80u8, 105u8, 112u8, 69u8, 120u8,
112u8, 105u8, 114u8, 121u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 53u8, 1u8,
1u8, 92u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8,
111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 0u8, 53u8, 1u8, 1u8, 92u8,
77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 8u8, 8u8, 204u8, 65u8, 109u8, 111u8,
117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8,
97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 97u8, 32u8,
112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 80u8, 73u8, 80u8, 32u8, 101u8, 120u8,
112u8, 105u8, 114u8, 101u8, 115u8, 46u8, 144u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8,
121u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 41u8,
88u8, 77u8, 97u8, 120u8, 80u8, 105u8, 112u8, 83u8, 107u8, 105u8, 112u8, 67u8, 111u8, 117u8,
110u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 8u8, 1u8, 48u8, 83u8,
107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 8u8, 1u8,
48u8, 83u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 9u8,
8u8, 204u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8,
116u8, 105u8, 109u8, 101u8, 115u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 119u8, 97u8,
115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 136u8, 40u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8, 108u8, 100u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8,
41u8, 84u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 80u8, 105u8, 112u8, 76u8, 105u8, 109u8,
105u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8,
51u8, 50u8, 0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 10u8, 8u8, 184u8, 84u8, 104u8,
101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 80u8, 73u8,
80u8, 115u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8,
136u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 111u8,
108u8, 100u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 41u8, 56u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 82u8, 101u8, 102u8, 117u8, 110u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8,
112u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
11u8, 8u8, 60u8, 82u8, 101u8, 102u8, 117u8, 110u8, 100u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 72u8, 40u8, 105u8, 100u8, 44u8, 32u8, 116u8, 111u8, 116u8, 97u8,
108u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 41u8, 60u8, 83u8, 110u8, 97u8, 112u8,
115u8, 104u8, 111u8, 116u8, 67u8, 108u8, 101u8, 97u8, 114u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 93u8, 3u8,
1u8, 40u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 73u8, 100u8, 0u8, 12u8, 4u8,
100u8, 84u8, 104u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8,
119u8, 97u8, 115u8, 32u8, 99u8, 108u8, 101u8, 97u8, 114u8, 101u8, 100u8, 46u8, 52u8, 83u8, 110u8,
97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 84u8, 97u8, 107u8, 101u8, 110u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 93u8, 3u8,
1u8, 40u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 73u8, 100u8, 0u8, 0u8, 97u8,
3u8, 1u8, 76u8, 86u8, 101u8, 99u8, 60u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8,
116u8, 101u8, 100u8, 80u8, 105u8, 112u8, 62u8, 0u8, 13u8, 4u8, 100u8, 65u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 119u8, 97u8, 115u8,
32u8, 116u8, 97u8, 107u8, 101u8, 110u8, 46u8, 40u8, 80u8, 105u8, 112u8, 83u8, 107u8, 105u8,
112u8, 112u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8,
0u8, 8u8, 1u8, 48u8, 83u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8,
116u8, 0u8, 14u8, 8u8, 160u8, 65u8, 32u8, 80u8, 73u8, 80u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 113u8, 117u8,
101u8, 117u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8,
100u8, 46u8, 128u8, 40u8, 103u8, 99u8, 95u8, 100u8, 105u8, 100u8, 44u8, 32u8, 112u8, 105u8,
112u8, 95u8, 105u8, 100u8, 44u8, 32u8, 110u8, 101u8, 119u8, 95u8, 115u8, 107u8, 105u8, 112u8,
95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 88u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 69u8, 110u8, 97u8, 99u8, 116u8,
101u8, 100u8, 20u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 109u8, 3u8, 1u8, 72u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 113u8, 3u8,
1u8, 104u8, 86u8, 101u8, 99u8, 60u8, 40u8, 80u8, 105u8, 112u8, 73u8, 100u8, 44u8, 32u8, 83u8,
107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8, 116u8, 41u8, 62u8, 0u8, 0u8,
121u8, 3u8, 1u8, 40u8, 86u8, 101u8, 99u8, 60u8, 80u8, 105u8, 112u8, 73u8, 100u8, 62u8, 0u8, 0u8,
121u8, 3u8, 1u8, 40u8, 86u8, 101u8, 99u8, 60u8, 80u8, 105u8, 112u8, 73u8, 100u8, 62u8, 0u8, 15u8,
8u8, 49u8, 1u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 32u8, 40u8, 101u8, 46u8, 103u8,
46u8, 44u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 44u8, 32u8, 114u8,
101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 115u8,
107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 41u8, 44u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8,
101u8, 110u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 115u8, 111u8,
109u8, 101u8, 32u8, 80u8, 73u8, 80u8, 115u8, 46u8, 81u8, 1u8, 40u8, 103u8, 99u8, 95u8, 100u8,
105u8, 100u8, 44u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 95u8, 105u8,
100u8, 95u8, 111u8, 112u8, 116u8, 44u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8,
95u8, 112u8, 105u8, 112u8, 115u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 110u8, 101u8, 119u8,
95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8,
101u8, 100u8, 95u8, 112u8, 105u8, 112u8, 115u8, 44u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 101u8, 100u8, 95u8, 112u8, 105u8, 112u8, 115u8, 41u8, 100u8, 69u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 111u8, 110u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8,
103u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8,
112u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 0u8, 16u8, 4u8, 13u8, 1u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8,
80u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8,
110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 32u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 46u8, 60u8, 69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 83u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8,
112u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 0u8, 17u8, 4u8, 152u8, 84u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 46u8, 88u8, 69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 83u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8,
111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 18u8, 4u8, 1u8, 1u8, 83u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 100u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 108u8, 105u8, 110u8, 103u8, 70u8, 97u8,
105u8, 108u8, 101u8, 100u8, 4u8, 0u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8,
19u8, 4u8, 240u8, 67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 108u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 65u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8,
105u8, 112u8, 115u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 4u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 8u8, 36u8, 67u8, 111u8,
109u8, 109u8, 117u8, 110u8, 105u8, 116u8, 121u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 36u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 69u8, 3u8, 1u8, 36u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 0u8, 1u8, 0u8, 0u8, 69u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 36u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 0u8, 1u8, 8u8, 36u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8,
108u8, 0u8, 0u8, 0u8, 28u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 0u8, 1u8, 0u8, 0u8,
73u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8,
20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 0u8, 77u8, 3u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8,
81u8, 3u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8,
101u8, 4u8, 0u8, 81u8, 3u8, 0u8, 0u8, 1u8, 0u8, 0u8, 81u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 56u8, 80u8, 105u8, 112u8, 68u8, 101u8,
115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8,
28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 85u8, 3u8, 8u8, 44u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 48u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 68u8, 97u8, 116u8, 97u8, 0u8, 1u8, 8u8, 16u8, 72u8, 97u8, 115u8,
104u8, 4u8, 0u8, 36u8, 1u8, 16u8, 72u8, 50u8, 53u8, 54u8, 0u8, 0u8, 0u8, 32u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8,
117u8, 56u8, 62u8, 0u8, 1u8, 0u8, 0u8, 89u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 0u8, 1u8, 24u8, 28u8, 80u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 0u8, 0u8, 0u8, 32u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 0u8,
1u8, 0u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 0u8, 2u8, 0u8, 24u8,
70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 3u8, 0u8, 32u8, 69u8, 120u8, 101u8, 99u8, 117u8,
116u8, 101u8, 100u8, 0u8, 4u8, 0u8, 28u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8,
5u8, 0u8, 0u8, 93u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8,
112u8, 115u8, 40u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 73u8, 100u8, 0u8, 0u8,
4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 97u8, 3u8, 0u8, 0u8, 2u8, 101u8, 3u8,
0u8, 101u8, 3u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8,
115u8, 56u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 116u8, 101u8, 100u8, 80u8,
105u8, 112u8, 0u8, 0u8, 8u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8,
73u8, 100u8, 0u8, 1u8, 24u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 105u8, 3u8, 1u8, 60u8,
40u8, 98u8, 111u8, 111u8, 108u8, 44u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 41u8,
0u8, 0u8, 105u8, 3u8, 0u8, 0u8, 4u8, 8u8, 21u8, 1u8, 24u8, 0u8, 109u8, 3u8, 4u8, 24u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 93u8, 3u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 93u8, 3u8, 0u8, 0u8, 1u8,
0u8, 0u8, 113u8, 3u8, 0u8, 0u8, 2u8, 117u8, 3u8, 0u8, 117u8, 3u8, 0u8, 0u8, 4u8, 8u8, 73u8, 3u8,
8u8, 0u8, 121u8, 3u8, 0u8, 0u8, 2u8, 73u8, 3u8, 0u8, 125u8, 3u8, 16u8, 100u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8,
117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8,
116u8, 115u8, 36u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 20u8, 69u8,
118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 24u8, 64u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 220u8, 1u8, 60u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
0u8, 0u8, 129u8, 3u8, 1u8, 52u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 24u8, 176u8, 84u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 108u8, 121u8,
32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8,
114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 48u8, 42u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 68u8, 73u8, 68u8, 72u8, 42u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 64u8, 42u8, 32u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 97u8, 109u8, 101u8,
64u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 68u8, 101u8, 108u8, 101u8,
116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 220u8, 1u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 20u8, 176u8, 84u8, 104u8, 101u8,
32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 104u8, 97u8, 115u8,
32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8,
117u8, 108u8, 108u8, 121u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 0u8,
48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 48u8, 42u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 68u8, 73u8, 68u8, 72u8, 42u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 88u8, 77u8, 111u8, 118u8, 101u8, 100u8, 66u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 24u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 212u8, 1u8, 44u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 0u8, 212u8, 1u8,
44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 0u8, 156u8,
1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 124u8, 1u8, 48u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 77u8, 101u8, 109u8, 111u8, 62u8, 0u8, 2u8, 32u8, 240u8, 65u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 111u8, 110u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 46u8, 0u8, 48u8,
35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 48u8, 42u8, 32u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 68u8, 73u8, 68u8, 72u8, 42u8, 32u8, 115u8, 111u8,
117u8, 114u8, 99u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
92u8, 42u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 56u8, 42u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 120u8, 42u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 111u8, 118u8, 101u8, 100u8, 64u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 82u8, 101u8, 110u8, 97u8, 109u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 220u8, 1u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 0u8, 129u8, 3u8, 1u8, 52u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 97u8, 109u8, 101u8, 0u8, 3u8, 24u8, 252u8,
84u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8,
104u8, 32u8, 96u8, 110u8, 117u8, 109u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 114u8, 101u8, 110u8, 97u8, 109u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8,
110u8, 97u8, 109u8, 101u8, 96u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8,
101u8, 116u8, 101u8, 114u8, 115u8, 48u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
32u8, 68u8, 73u8, 68u8, 72u8, 42u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 64u8, 42u8, 32u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 97u8, 109u8, 101u8, 56u8, 85u8, 115u8,
101u8, 114u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
133u8, 3u8, 1u8, 148u8, 86u8, 101u8, 99u8, 60u8, 40u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 44u8, 32u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 97u8, 109u8, 101u8, 41u8, 62u8, 0u8, 4u8, 20u8,
212u8, 65u8, 108u8, 108u8, 32u8, 110u8, 111u8, 110u8, 45u8, 100u8, 101u8, 102u8, 97u8, 117u8,
108u8, 116u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 110u8, 97u8, 109u8,
101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 48u8, 35u8,
32u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 48u8, 42u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 68u8, 73u8, 68u8, 116u8, 42u8, 32u8, 118u8, 101u8, 99u8,
116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 45u8,
110u8, 97u8, 109u8, 101u8, 32u8, 112u8, 97u8, 105u8, 114u8, 115u8, 100u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 67u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8,
110u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 5u8, 24u8, 244u8, 67u8, 117u8,
115u8, 116u8, 111u8, 100u8, 121u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8,
105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8,
114u8, 115u8, 48u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 68u8, 73u8, 68u8,
56u8, 42u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 105u8,
100u8, 100u8, 42u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8,
99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8, 100u8, 105u8, 100u8, 8u8,
92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 129u8, 3u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
95u8, 105u8, 100u8, 52u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8,
97u8, 109u8, 101u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 0u8, 0u8, 133u8, 3u8, 0u8, 0u8, 2u8, 137u8, 3u8, 0u8, 137u8, 3u8, 0u8, 0u8, 4u8, 8u8,
220u8, 129u8, 3u8, 0u8, 141u8, 3u8, 8u8, 76u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 95u8, 102u8, 101u8, 101u8, 32u8, 82u8,
97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 24u8, 70u8, 101u8, 101u8, 83u8, 101u8, 116u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 4u8, 132u8, 84u8, 104u8,
101u8, 32u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 32u8, 102u8, 101u8, 101u8,
32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 56u8, 67u8, 111u8, 101u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 83u8, 101u8, 116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 145u8, 3u8, 1u8, 32u8, 80u8, 111u8, 115u8, 82u8, 97u8,
116u8, 105u8, 111u8, 0u8, 1u8, 4u8, 80u8, 84u8, 104u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8,
99u8, 111u8, 101u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 46u8, 40u8, 70u8,
101u8, 101u8, 67u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 8u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 2u8, 4u8, 48u8, 70u8, 101u8, 101u8, 32u8, 99u8, 104u8,
97u8, 114u8, 103u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 145u8, 3u8, 8u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 80u8, 111u8,
115u8, 82u8, 97u8, 116u8, 105u8, 111u8, 0u8, 0u8, 8u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 149u8, 3u8, 12u8, 64u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8,
24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 4u8,
84u8, 0u8, 1u8, 16u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 8u8,
1u8, 16u8, 119u8, 104u8, 101u8, 110u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8,
120u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 4u8, 80u8, 83u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 100u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 116u8, 97u8, 115u8, 107u8,
46u8, 32u8, 67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 101u8, 100u8, 8u8, 1u8, 16u8, 119u8, 104u8,
101u8, 110u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 1u8, 4u8, 76u8, 67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 101u8, 100u8,
32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 116u8, 97u8, 115u8, 107u8, 46u8, 40u8, 68u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 12u8, 1u8, 16u8, 116u8, 97u8, 115u8, 107u8,
153u8, 3u8, 1u8, 108u8, 84u8, 97u8, 115u8, 107u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
62u8, 0u8, 1u8, 8u8, 105u8, 100u8, 93u8, 2u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 62u8, 0u8, 1u8, 24u8, 114u8, 101u8, 115u8,
117u8, 108u8, 116u8, 45u8, 1u8, 1u8, 56u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 0u8, 2u8, 4u8, 84u8, 68u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 101u8, 100u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 116u8, 97u8, 115u8,
107u8, 46u8, 64u8, 67u8, 97u8, 108u8, 108u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 70u8, 97u8,
105u8, 108u8, 101u8, 100u8, 12u8, 1u8, 16u8, 116u8, 97u8, 115u8, 107u8, 153u8, 3u8, 1u8, 108u8,
84u8, 97u8, 115u8, 107u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 60u8, 84u8, 58u8, 58u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 1u8, 8u8,
105u8, 100u8, 93u8, 2u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 62u8, 0u8, 1u8, 20u8, 101u8, 114u8, 114u8, 111u8, 114u8, 157u8,
3u8, 1u8, 44u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8,
3u8, 4u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
97u8, 115u8, 107u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 98u8,
111u8, 114u8, 116u8, 101u8, 100u8, 46u8, 4u8, 48u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8,
32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 153u8, 3u8, 0u8, 0u8, 4u8, 8u8, 16u8, 16u8, 0u8, 157u8,
3u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8,
114u8, 116u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 44u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 69u8, 114u8, 114u8,
111u8, 114u8, 0u8, 1u8, 8u8, 28u8, 85u8, 110u8, 107u8, 110u8, 111u8, 119u8, 110u8, 0u8, 0u8, 0u8,
36u8, 66u8, 97u8, 100u8, 70u8, 111u8, 114u8, 109u8, 97u8, 116u8, 0u8, 1u8, 0u8, 0u8, 161u8, 3u8,
8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8,
12u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 1u8, 32u8, 44u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 76u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8, 67u8,
114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8,
117u8, 101u8, 73u8, 100u8, 0u8, 0u8, 169u8, 3u8, 1u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8,
68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 0u8, 173u8, 3u8, 1u8, 36u8, 86u8, 101u8,
110u8, 117u8, 101u8, 84u8, 121u8, 112u8, 101u8, 0u8, 0u8, 4u8, 236u8, 65u8, 32u8, 110u8, 101u8,
119u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 40u8, 100u8, 105u8,
100u8, 44u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 44u8, 32u8, 100u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 44u8, 32u8, 116u8, 121u8, 112u8, 101u8, 41u8, 76u8,
86u8, 101u8, 110u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 85u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8,
101u8, 73u8, 100u8, 0u8, 0u8, 169u8, 3u8, 1u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8, 68u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 1u8, 4u8, 21u8, 1u8, 65u8, 110u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 39u8,
115u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 40u8,
100u8, 105u8, 100u8, 44u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 44u8,
32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 41u8, 64u8, 86u8, 101u8, 110u8, 117u8,
101u8, 84u8, 121u8, 112u8, 101u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 12u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 0u8, 173u8, 3u8, 1u8,
36u8, 86u8, 101u8, 110u8, 117u8, 101u8, 84u8, 121u8, 112u8, 101u8, 0u8, 2u8, 4u8, 252u8, 65u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 101u8, 110u8,
117u8, 101u8, 39u8, 115u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 40u8,
100u8, 105u8, 100u8, 44u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 44u8,
32u8, 116u8, 121u8, 112u8, 101u8, 41u8, 72u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 28u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 165u8, 3u8,
1u8, 28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 0u8,
181u8, 3u8, 1u8, 108u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8,
84u8, 121u8, 112u8, 101u8, 60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 62u8, 0u8, 0u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 185u8, 3u8,
1u8, 32u8, 86u8, 101u8, 99u8, 60u8, 76u8, 101u8, 103u8, 62u8, 0u8, 3u8, 8u8, 136u8, 65u8, 32u8,
110u8, 101u8, 119u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 114u8, 101u8, 97u8,
116u8, 101u8, 100u8, 57u8, 1u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 118u8, 101u8, 110u8,
117u8, 101u8, 95u8, 105u8, 100u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 44u8, 32u8, 115u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 44u8, 32u8, 116u8, 114u8,
97u8, 100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 44u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 44u8, 32u8, 108u8, 101u8, 103u8, 115u8, 41u8, 76u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 65u8, 102u8, 102u8, 105u8,
114u8, 109u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 4u8, 4u8, 5u8, 1u8, 65u8,
110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8,
109u8, 101u8, 100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 41u8, 80u8, 65u8, 102u8, 102u8, 105u8, 114u8,
109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 87u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8,
110u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 5u8, 4u8, 9u8, 1u8, 65u8, 110u8, 32u8, 97u8, 102u8,
102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 110u8,
32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 95u8, 105u8, 100u8, 41u8, 76u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8,
1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8,
100u8, 0u8, 6u8, 4u8, 216u8, 65u8, 110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8,
100u8, 41u8, 56u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 67u8, 108u8, 97u8, 105u8,
109u8, 101u8, 100u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 0u8, 193u8, 3u8, 1u8, 20u8, 76u8, 101u8,
103u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 197u8, 3u8, 1u8, 60u8, 82u8,
101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 0u8,
7u8, 4u8, 125u8, 1u8, 65u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 44u8, 32u8, 108u8, 101u8, 103u8, 95u8,
105u8, 100u8, 44u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8,
100u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 44u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 41u8,
88u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 86u8, 97u8, 108u8, 105u8, 100u8, 105u8,
116u8, 121u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8,
52u8, 0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 8u8, 4u8, 13u8, 1u8, 65u8,
32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8,
100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
44u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8, 100u8, 44u8,
32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 41u8, 64u8, 82u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 85u8, 110u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 20u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 73u8, 100u8, 0u8, 0u8, 193u8, 3u8, 1u8, 20u8, 76u8, 101u8, 103u8, 73u8, 100u8, 0u8, 0u8,
32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 9u8, 4u8, 61u8, 1u8, 65u8, 32u8, 114u8, 101u8, 99u8, 101u8,
105u8, 112u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8,
110u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8,
100u8, 44u8, 32u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 44u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8, 100u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 41u8, 56u8, 86u8, 101u8, 110u8, 117u8, 101u8, 70u8, 105u8, 108u8, 116u8, 101u8,
114u8, 105u8, 110u8, 103u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 10u8, 4u8, 105u8, 1u8, 86u8,
101u8, 110u8, 117u8, 101u8, 32u8, 102u8, 105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8,
101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 40u8,
100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8,
105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 101u8, 110u8, 97u8, 98u8, 108u8,
101u8, 100u8, 41u8, 52u8, 86u8, 101u8, 110u8, 117u8, 101u8, 115u8, 65u8, 108u8, 108u8, 111u8,
119u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8,
201u8, 3u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8,
62u8, 0u8, 11u8, 4u8, 220u8, 86u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 97u8, 100u8, 100u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 108u8, 105u8,
115u8, 116u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 44u8, 32u8, 118u8, 101u8, 99u8, 60u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8,
100u8, 62u8, 41u8, 52u8, 86u8, 101u8, 110u8, 117u8, 101u8, 115u8, 66u8, 108u8, 111u8, 99u8,
107u8, 101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8,
201u8, 3u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8,
62u8, 0u8, 12u8, 4u8, 220u8, 86u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 97u8, 100u8, 100u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 108u8, 105u8,
115u8, 116u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 44u8, 32u8, 118u8, 101u8, 99u8, 60u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8,
100u8, 62u8, 41u8, 72u8, 76u8, 101u8, 103u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 69u8, 120u8,
101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 0u8, 193u8, 3u8,
1u8, 20u8, 76u8, 101u8, 103u8, 73u8, 100u8, 0u8, 13u8, 4u8, 220u8, 69u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 108u8, 101u8, 103u8,
32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8,
44u8, 32u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 41u8, 68u8, 73u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 8u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8,
177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
73u8, 100u8, 0u8, 14u8, 4u8, 200u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 101u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 41u8, 76u8,
73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8,
99u8, 117u8, 116u8, 101u8, 100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 15u8, 4u8, 216u8, 73u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 101u8, 120u8, 101u8, 99u8,
117u8, 116u8, 101u8, 100u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8,
108u8, 108u8, 121u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 41u8, 68u8, 86u8, 101u8, 110u8,
117u8, 101u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 165u8, 3u8, 1u8,
28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 16u8, 4u8, 1u8, 1u8, 86u8, 101u8,
110u8, 117u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 39u8, 115u8, 32u8,
97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 40u8, 100u8, 105u8,
100u8, 44u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 118u8, 101u8, 110u8,
117u8, 101u8, 95u8, 105u8, 100u8, 41u8, 64u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
105u8, 110u8, 103u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 4u8, 0u8, 88u8, 1u8, 52u8, 68u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 17u8, 4u8,
128u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
97u8, 105u8, 108u8, 115u8, 46u8, 88u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 82u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8,
8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 73u8, 100u8, 0u8, 18u8, 8u8, 108u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 100u8, 46u8, 112u8, 40u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 95u8, 105u8, 100u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 165u8, 3u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 28u8, 86u8, 101u8, 110u8, 117u8,
101u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 169u8, 3u8,
8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8, 68u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 0u8, 173u8, 3u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 36u8, 86u8, 101u8, 110u8,
117u8, 101u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8, 16u8, 20u8, 79u8, 116u8, 104u8, 101u8, 114u8,
0u8, 0u8, 0u8, 48u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 0u8, 1u8, 0u8, 12u8, 83u8, 116u8, 111u8, 0u8, 2u8, 0u8, 32u8, 69u8, 120u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 0u8, 3u8, 0u8, 0u8, 177u8, 3u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 52u8,
73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 0u8,
4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 181u8, 3u8, 8u8, 68u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8,
116u8, 56u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 84u8, 121u8,
112u8, 101u8, 4u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
1u8, 16u8, 1u8, 8u8, 76u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 79u8, 110u8, 65u8, 102u8,
102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 0u8, 52u8, 83u8, 101u8,
116u8, 116u8, 108u8, 101u8, 79u8, 110u8, 66u8, 108u8, 111u8, 99u8, 107u8, 4u8, 0u8, 16u8, 1u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 0u8,
0u8, 185u8, 3u8, 0u8, 0u8, 2u8, 189u8, 3u8, 0u8, 189u8, 3u8, 8u8, 68u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8,
12u8, 76u8, 101u8, 103u8, 0u8, 0u8, 16u8, 1u8, 16u8, 102u8, 114u8, 111u8, 109u8, 212u8, 1u8,
44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 8u8,
116u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
73u8, 100u8, 0u8, 1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 193u8, 3u8, 8u8, 68u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8,
116u8, 20u8, 76u8, 101u8, 103u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8,
52u8, 0u8, 0u8, 197u8, 3u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 60u8, 82u8, 101u8, 99u8, 101u8,
105u8, 112u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 0u8, 0u8, 4u8, 0u8,
40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 201u8, 3u8, 0u8, 0u8, 2u8,
165u8, 3u8, 0u8, 205u8, 3u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8,
105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 40u8, 115u8, 116u8, 97u8,
116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8,
24u8, 56u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 115u8, 65u8, 100u8, 100u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8,
111u8, 112u8, 101u8, 0u8, 0u8, 213u8, 3u8, 1u8, 52u8, 86u8, 101u8, 99u8, 60u8, 83u8, 116u8, 97u8,
116u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 0u8, 12u8, 104u8, 83u8, 116u8, 97u8, 116u8, 32u8,
116u8, 121u8, 112u8, 101u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 0u8, 124u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8, 32u8, 83u8,
116u8, 97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 41u8, 64u8, 83u8, 116u8, 97u8,
116u8, 84u8, 121u8, 112u8, 101u8, 115u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 12u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8,
0u8, 0u8, 213u8, 3u8, 1u8, 52u8, 86u8, 101u8, 99u8, 60u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8,
112u8, 101u8, 62u8, 0u8, 1u8, 12u8, 120u8, 83u8, 116u8, 97u8, 116u8, 32u8, 116u8, 121u8, 112u8,
101u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 0u8, 124u8, 40u8, 67u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8, 32u8,
83u8, 116u8, 97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 41u8, 68u8, 65u8, 115u8,
115u8, 101u8, 116u8, 83u8, 116u8, 97u8, 116u8, 115u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8,
112u8, 101u8, 0u8, 0u8, 217u8, 3u8, 1u8, 32u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8,
101u8, 0u8, 0u8, 233u8, 3u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 83u8, 116u8, 97u8, 116u8, 85u8,
112u8, 100u8, 97u8, 116u8, 101u8, 62u8, 0u8, 2u8, 12u8, 80u8, 65u8, 115u8, 115u8, 101u8, 116u8,
32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8,
46u8, 0u8, 156u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8, 32u8, 83u8, 116u8, 97u8, 116u8, 32u8, 116u8, 121u8,
112u8, 101u8, 44u8, 32u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 115u8, 41u8, 104u8, 83u8,
101u8, 116u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 12u8, 0u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 209u8, 3u8,
1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 0u8, 1u8, 4u8,
1u8, 88u8, 86u8, 101u8, 99u8, 60u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8,
111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 3u8, 12u8, 160u8, 83u8, 101u8,
116u8, 32u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 117u8, 108u8, 101u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 0u8, 160u8, 40u8, 67u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
44u8, 32u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 41u8, 128u8, 84u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8,
101u8, 109u8, 112u8, 116u8, 105u8, 111u8, 110u8, 115u8, 65u8, 100u8, 100u8, 101u8, 100u8, 12u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 9u8, 4u8, 1u8, 104u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8, 109u8, 112u8, 116u8, 75u8,
101u8, 121u8, 0u8, 0u8, 33u8, 1u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 83u8, 99u8, 111u8, 112u8,
101u8, 73u8, 100u8, 62u8, 0u8, 4u8, 12u8, 9u8, 1u8, 65u8, 100u8, 100u8, 32u8, 96u8, 83u8, 99u8,
111u8, 112u8, 101u8, 73u8, 100u8, 96u8, 115u8, 32u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8,
99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 109u8, 97u8, 116u8,
99u8, 104u8, 105u8, 110u8, 103u8, 32u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 32u8, 107u8,
101u8, 121u8, 46u8, 0u8, 136u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 69u8, 120u8, 101u8, 109u8, 112u8, 116u8, 32u8, 107u8, 101u8, 121u8, 44u8, 32u8,
69u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 41u8, 136u8, 84u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8,
120u8, 101u8, 109u8, 112u8, 116u8, 105u8, 111u8, 110u8, 115u8, 82u8, 101u8, 109u8, 111u8, 118u8,
101u8, 100u8, 12u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 9u8, 4u8, 1u8, 104u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8, 109u8,
112u8, 116u8, 75u8, 101u8, 121u8, 0u8, 0u8, 33u8, 1u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 83u8,
99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 62u8, 0u8, 5u8, 12u8, 21u8, 1u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 96u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 96u8, 115u8, 32u8,
101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 105u8, 110u8, 103u8, 32u8, 101u8, 120u8,
101u8, 109u8, 112u8, 116u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 136u8, 40u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 69u8, 120u8, 101u8, 109u8, 112u8, 116u8,
32u8, 107u8, 101u8, 121u8, 44u8, 32u8, 69u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8,
41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 209u8, 3u8, 12u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8,
105u8, 99u8, 115u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8,
1u8, 4u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 4u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 0u8, 0u8, 213u8, 3u8, 0u8, 0u8, 2u8, 217u8, 3u8, 0u8, 217u8,
3u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8,
105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8, 97u8, 116u8, 105u8,
115u8, 116u8, 105u8, 99u8, 115u8, 32u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8,
0u8, 8u8, 1u8, 8u8, 111u8, 112u8, 221u8, 3u8, 1u8, 40u8, 83u8, 116u8, 97u8, 116u8, 79u8, 112u8,
84u8, 121u8, 112u8, 101u8, 0u8, 1u8, 48u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 225u8, 3u8, 1u8, 124u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 40u8, 67u8, 108u8, 97u8, 105u8, 109u8, 84u8, 121u8, 112u8, 101u8, 44u8, 32u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 41u8, 62u8, 0u8, 0u8, 221u8, 3u8, 12u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8,
105u8, 99u8, 115u8, 40u8, 83u8, 116u8, 97u8, 116u8, 79u8, 112u8, 84u8, 121u8, 112u8, 101u8, 0u8,
1u8, 8u8, 20u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 0u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 0u8, 0u8, 225u8, 3u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 4u8, 4u8, 84u8, 1u8, 229u8, 3u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8,
16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 229u8, 3u8, 0u8, 0u8, 1u8, 0u8, 0u8, 229u8, 3u8, 0u8,
0u8, 4u8, 8u8, 201u8, 2u8, 120u8, 0u8, 233u8, 3u8, 0u8, 0u8, 2u8, 237u8, 3u8, 0u8, 237u8, 3u8,
12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8,
109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8,
116u8, 105u8, 99u8, 115u8, 40u8, 83u8, 116u8, 97u8, 116u8, 85u8, 112u8, 100u8, 97u8, 116u8,
101u8, 0u8, 0u8, 8u8, 1u8, 16u8, 107u8, 101u8, 121u8, 50u8, 241u8, 3u8, 1u8, 40u8, 83u8, 116u8,
97u8, 116u8, 50u8, 110u8, 100u8, 75u8, 101u8, 121u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8,
101u8, 253u8, 3u8, 1u8, 48u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 49u8, 50u8,
56u8, 62u8, 0u8, 0u8, 241u8, 3u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8,
116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 40u8, 83u8, 116u8, 97u8, 116u8,
50u8, 110u8, 100u8, 75u8, 101u8, 121u8, 0u8, 1u8, 8u8, 44u8, 78u8, 111u8, 67u8, 108u8, 97u8,
105u8, 109u8, 83u8, 116u8, 97u8, 116u8, 0u8, 0u8, 0u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8,
4u8, 0u8, 245u8, 3u8, 1u8, 36u8, 83u8, 116u8, 97u8, 116u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8,
1u8, 0u8, 0u8, 245u8, 3u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8,
97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 36u8, 83u8, 116u8, 97u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 0u8, 1u8, 12u8, 40u8, 65u8, 99u8, 99u8, 114u8, 101u8, 100u8, 105u8,
116u8, 101u8, 100u8, 4u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 0u8,
36u8, 65u8, 102u8, 102u8, 105u8, 108u8, 105u8, 97u8, 116u8, 101u8, 4u8, 0u8, 21u8, 1u8, 1u8,
16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 0u8, 48u8, 74u8, 117u8, 114u8, 105u8, 115u8, 100u8,
105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 249u8, 3u8, 1u8, 76u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 67u8, 111u8, 117u8, 110u8, 116u8, 114u8, 121u8, 67u8, 111u8, 100u8,
101u8, 62u8, 0u8, 2u8, 0u8, 0u8, 249u8, 3u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
4u8, 4u8, 84u8, 1u8, 1u8, 1u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8,
83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 1u8, 1u8, 0u8, 0u8, 1u8, 0u8, 0u8, 253u8, 3u8, 4u8, 24u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 24u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 24u8, 0u8, 0u8, 1u8, 0u8,
0u8, 1u8, 4u8, 0u8, 0u8, 2u8, 5u8, 4u8, 0u8, 5u8, 4u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8,
115u8, 76u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 68u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 0u8, 1u8, 16u8, 64u8,
77u8, 97u8, 120u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 0u8, 80u8, 77u8, 97u8,
120u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 79u8, 119u8, 110u8, 101u8, 114u8,
115u8, 104u8, 105u8, 112u8, 4u8, 0u8, 121u8, 2u8, 1u8, 40u8, 80u8, 101u8, 114u8, 99u8, 101u8,
110u8, 116u8, 97u8, 103u8, 101u8, 0u8, 1u8, 0u8, 40u8, 67u8, 108u8, 97u8, 105u8, 109u8, 67u8,
111u8, 117u8, 110u8, 116u8, 16u8, 0u8, 245u8, 3u8, 1u8, 36u8, 83u8, 116u8, 97u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 240u8, 1u8,
44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 54u8, 52u8, 62u8, 0u8, 2u8, 0u8,
56u8, 67u8, 108u8, 97u8, 105u8, 109u8, 79u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8,
112u8, 16u8, 0u8, 245u8, 3u8, 1u8, 36u8, 83u8, 116u8, 97u8, 116u8, 67u8, 108u8, 97u8, 105u8,
109u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 121u8, 2u8, 1u8, 40u8, 80u8, 101u8, 114u8, 99u8, 101u8, 110u8, 116u8, 97u8,
103u8, 101u8, 0u8, 0u8, 121u8, 2u8, 1u8, 40u8, 80u8, 101u8, 114u8, 99u8, 101u8, 110u8, 116u8,
97u8, 103u8, 101u8, 0u8, 3u8, 0u8, 0u8, 9u8, 4u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8,
76u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 104u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8, 109u8,
112u8, 116u8, 75u8, 101u8, 121u8, 0u8, 0u8, 12u8, 1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8,
209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8,
1u8, 8u8, 111u8, 112u8, 221u8, 3u8, 1u8, 40u8, 83u8, 116u8, 97u8, 116u8, 79u8, 112u8, 84u8,
121u8, 112u8, 101u8, 0u8, 1u8, 40u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 116u8, 121u8, 112u8,
101u8, 13u8, 4u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 67u8, 108u8, 97u8,
105u8, 109u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 0u8, 13u8, 4u8, 4u8, 24u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 201u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8,
101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 201u8, 2u8, 0u8, 0u8, 1u8, 0u8,
0u8, 17u8, 4u8, 8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8,
32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 24u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 1u8, 32u8, 1u8, 24u8, 68u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 21u8, 4u8, 1u8, 48u8,
70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 0u8, 25u8,
4u8, 1u8, 56u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 78u8, 97u8,
109u8, 101u8, 0u8, 0u8, 29u8, 4u8, 1u8, 72u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8,
115u8, 101u8, 114u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 8u8, 136u8,
65u8, 32u8, 110u8, 101u8, 119u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 252u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 32u8, 105u8, 100u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 32u8, 110u8, 97u8, 109u8, 101u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8,
97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 41u8,
32u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 101u8, 100u8, 24u8, 0u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 21u8, 4u8, 1u8, 48u8,
70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 0u8, 156u8,
1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 8u8, 156u8, 65u8,
110u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 32u8, 105u8, 110u8, 118u8,
101u8, 115u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8,
117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 46u8, 133u8, 1u8, 40u8, 73u8,
110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8,
97u8, 105u8, 115u8, 101u8, 114u8, 95u8, 105u8, 100u8, 44u8, 32u8, 111u8, 102u8, 102u8, 101u8,
114u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 44u8, 32u8, 114u8, 97u8,
105u8, 115u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 44u8, 32u8, 111u8, 102u8, 102u8,
101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 116u8, 111u8, 107u8, 101u8, 110u8, 95u8, 97u8, 109u8,
111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 114u8, 97u8, 105u8, 115u8, 101u8, 95u8, 116u8, 111u8,
107u8, 101u8, 110u8, 95u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 41u8, 64u8, 70u8, 117u8,
110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8,
8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
0u8, 0u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 73u8, 100u8, 0u8, 2u8, 8u8, 116u8, 65u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 104u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 32u8, 105u8, 100u8, 41u8, 72u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 85u8, 110u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 8u8, 0u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 21u8, 4u8, 1u8,
48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 3u8,
8u8, 124u8, 65u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 110u8, 102u8, 114u8,
111u8, 122u8, 101u8, 110u8, 46u8, 104u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8,
73u8, 68u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8,
32u8, 105u8, 100u8, 41u8, 96u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 87u8, 105u8, 110u8, 100u8, 111u8, 119u8, 77u8, 111u8, 100u8, 105u8, 102u8, 105u8, 101u8,
100u8, 24u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8,
0u8, 0u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 62u8, 0u8, 0u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 62u8, 0u8, 4u8, 8u8, 152u8, 65u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 109u8, 111u8, 100u8, 105u8, 102u8, 105u8, 101u8,
100u8, 46u8, 9u8, 1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 105u8, 100u8,
44u8, 32u8, 111u8, 108u8, 100u8, 95u8, 115u8, 116u8, 97u8, 114u8, 116u8, 44u8, 32u8, 111u8,
108u8, 100u8, 95u8, 101u8, 110u8, 100u8, 44u8, 32u8, 110u8, 101u8, 119u8, 95u8, 115u8, 116u8,
97u8, 114u8, 116u8, 44u8, 32u8, 110u8, 101u8, 119u8, 95u8, 101u8, 110u8, 100u8, 41u8, 64u8, 70u8,
117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 67u8, 108u8, 111u8, 115u8, 101u8,
100u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 73u8, 100u8, 0u8, 5u8, 8u8, 120u8, 65u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8,
97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8,
32u8, 115u8, 116u8, 111u8, 112u8, 112u8, 101u8, 100u8, 46u8, 104u8, 40u8, 65u8, 103u8, 101u8,
110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8,
115u8, 101u8, 114u8, 32u8, 105u8, 100u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8,
117u8, 108u8, 101u8, 46u8, 0u8, 21u8, 4u8, 8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 115u8, 116u8, 111u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 25u8, 4u8,
8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 56u8, 70u8, 117u8,
110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 4u8,
0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 29u8, 4u8, 8u8, 40u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 40u8, 70u8, 117u8, 110u8,
100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 4u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 1u8, 32u8, 0u8, 44u8, 1u8, 28u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 72u8,
111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 56u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8,
103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 68u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 52u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8,
103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 20u8, 116u8, 105u8, 101u8, 114u8, 115u8, 33u8, 4u8, 1u8, 76u8, 86u8, 101u8,
99u8, 60u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 84u8, 105u8,
101u8, 114u8, 62u8, 0u8, 1u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 165u8,
3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 1u8, 20u8, 115u8, 116u8,
97u8, 114u8, 116u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 12u8,
101u8, 110u8, 100u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8,
111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 24u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
41u8, 4u8, 1u8, 64u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 72u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8,
109u8, 95u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 33u8, 4u8, 0u8, 0u8, 2u8, 37u8, 4u8,
0u8, 37u8, 4u8, 8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8,
56u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 84u8, 105u8, 101u8,
114u8, 0u8, 0u8, 12u8, 1u8, 20u8, 116u8, 111u8, 116u8, 97u8, 108u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 20u8, 112u8, 114u8, 105u8, 99u8, 101u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 114u8, 101u8, 109u8, 97u8,
105u8, 110u8, 105u8, 110u8, 103u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 0u8, 41u8, 4u8, 8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8,
111u8, 64u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 83u8, 116u8,
97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 16u8, 16u8, 76u8, 105u8, 118u8, 101u8, 0u8, 0u8, 0u8, 24u8,
70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 0u8, 1u8, 0u8, 24u8, 67u8, 108u8, 111u8, 115u8, 101u8,
100u8, 0u8, 2u8, 0u8, 44u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 69u8, 97u8, 114u8, 108u8,
121u8, 0u8, 3u8, 0u8, 0u8, 45u8, 4u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8,
101u8, 110u8, 116u8, 8u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 80u8, 84u8,
114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 68u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8,
101u8, 109u8, 101u8, 110u8, 116u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 12u8, 136u8, 68u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8,
110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 1u8, 1u8, 40u8, 116u8,
114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 44u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8,
112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 44u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 41u8, 104u8, 84u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8,
121u8, 68u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8, 110u8, 116u8, 70u8,
97u8, 105u8, 108u8, 101u8, 100u8, 16u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 1u8, 12u8, 164u8, 68u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8,
110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 102u8, 97u8, 105u8, 108u8,
101u8, 100u8, 46u8, 0u8, 1u8, 1u8, 40u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 116u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8,
32u8, 107u8, 101u8, 121u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 41u8, 84u8, 84u8,
114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 82u8, 101u8, 105u8, 109u8, 98u8, 117u8, 114u8,
115u8, 101u8, 109u8, 101u8, 110u8, 116u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 2u8, 12u8, 92u8, 84u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8,
32u8, 114u8, 101u8, 105u8, 109u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8, 110u8, 116u8,
46u8, 0u8, 100u8, 40u8, 115u8, 111u8, 117u8, 114u8, 99u8, 101u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 41u8,
8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 49u8, 4u8, 8u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8,
121u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 12u8, 64u8, 66u8, 97u8, 116u8, 99u8,
104u8, 73u8, 110u8, 116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 8u8, 0u8,
53u8, 4u8, 1u8, 44u8, 69u8, 118u8, 101u8, 110u8, 116u8, 67u8, 111u8, 117u8, 110u8, 116u8, 115u8,
0u8, 0u8, 57u8, 4u8, 1u8, 28u8, 69u8, 114u8, 114u8, 111u8, 114u8, 65u8, 116u8, 0u8, 0u8, 12u8,
172u8, 66u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 102u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 100u8, 105u8, 100u8, 32u8, 110u8, 111u8, 116u8,
32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 32u8, 102u8, 117u8, 108u8, 108u8,
121u8, 46u8, 220u8, 73u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 32u8, 97u8, 32u8,
118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 118u8, 101u8, 110u8,
116u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
97u8, 99u8, 104u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 97u8, 110u8,
100u8, 244u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 102u8, 97u8, 105u8,
108u8, 105u8, 110u8, 103u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8,
97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 84u8, 66u8, 97u8, 116u8, 99u8, 104u8, 79u8, 112u8,
116u8, 105u8, 109u8, 105u8, 115u8, 116u8, 105u8, 99u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8,
8u8, 0u8, 53u8, 4u8, 1u8, 44u8, 69u8, 118u8, 101u8, 110u8, 116u8, 67u8, 111u8, 117u8, 110u8,
116u8, 115u8, 0u8, 0u8, 61u8, 4u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 69u8, 114u8, 114u8, 111u8,
114u8, 65u8, 116u8, 62u8, 0u8, 1u8, 12u8, 172u8, 66u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8,
102u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 100u8,
105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8,
101u8, 32u8, 102u8, 117u8, 108u8, 108u8, 121u8, 46u8, 204u8, 73u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 115u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8,
102u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8,
32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
97u8, 110u8, 100u8, 41u8, 1u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8,
102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8,
32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8,
100u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 56u8, 66u8, 97u8, 116u8, 99u8, 104u8, 67u8,
111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 100u8, 4u8, 0u8, 53u8, 4u8, 1u8, 44u8, 69u8,
118u8, 101u8, 110u8, 116u8, 67u8, 111u8, 117u8, 110u8, 116u8, 115u8, 0u8, 2u8, 8u8, 200u8, 66u8,
97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 102u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 101u8, 115u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 100u8,
32u8, 102u8, 117u8, 108u8, 108u8, 121u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 110u8, 111u8,
32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 208u8, 73u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 115u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8,
32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 46u8, 12u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8,
46u8, 0u8, 48u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8,
53u8, 4u8, 0u8, 0u8, 2u8, 16u8, 0u8, 57u8, 4u8, 0u8, 0u8, 4u8, 8u8, 16u8, 88u8, 0u8, 61u8, 4u8,
0u8, 0u8, 2u8, 57u8, 4u8, 0u8, 65u8, 4u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8,
105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 16u8, 98u8,
97u8, 115u8, 101u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 4u8, 60u8, 85u8, 110u8,
101u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8,
0u8, 69u8, 4u8, 1u8, 84u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 68u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 69u8, 114u8, 114u8, 111u8, 114u8, 62u8, 0u8, 0u8, 4u8, 228u8,
65u8, 110u8, 32u8, 117u8, 110u8, 101u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8,
101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 101u8, 100u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 105u8, 103u8, 97u8, 116u8, 101u8, 100u8,
46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 69u8, 4u8, 4u8,
24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 88u8, 1u8, 8u8, 16u8, 78u8,
111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 88u8, 0u8, 0u8,
1u8, 0u8, 0u8, 73u8, 4u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8,
105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 60u8, 101u8, 120u8, 116u8,
101u8, 114u8, 110u8, 97u8, 108u8, 95u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 20u8, 69u8,
118u8, 101u8, 110u8, 116u8, 0u8, 1u8, 20u8, 48u8, 71u8, 114u8, 111u8, 117u8, 112u8, 67u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8,
116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 0u8, 17u8, 1u8, 1u8, 16u8, 65u8, 71u8, 73u8, 100u8, 0u8, 0u8, 172u8, 1u8, 80u8, 69u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 0u8, 0u8, 12u8, 108u8, 65u8, 110u8, 32u8, 65u8, 103u8, 101u8, 110u8,
116u8, 32u8, 71u8, 114u8, 111u8, 117u8, 112u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 208u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 71u8, 39u8, 115u8, 32u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 32u8, 65u8, 71u8, 39u8, 115u8, 32u8, 73u8, 68u8, 44u8, 32u8, 65u8, 71u8,
39u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
41u8, 92u8, 71u8, 114u8, 111u8, 117u8, 112u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 16u8, 0u8, 105u8, 2u8,
1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 17u8, 1u8, 1u8, 16u8, 65u8, 71u8, 73u8, 100u8,
0u8, 0u8, 172u8, 1u8, 80u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 12u8, 164u8,
65u8, 110u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 71u8, 114u8, 111u8, 117u8, 112u8,
39u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 224u8,
40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 71u8,
39u8, 115u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 65u8, 71u8, 39u8, 115u8,
32u8, 73u8, 68u8, 44u8, 32u8, 65u8, 71u8, 39u8, 115u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 41u8, 40u8, 65u8, 103u8,
101u8, 110u8, 116u8, 65u8, 100u8, 100u8, 101u8, 100u8, 12u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8,
118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 0u8, 13u8, 1u8, 1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 71u8,
114u8, 111u8, 117u8, 112u8, 0u8, 2u8, 12u8, 76u8, 65u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 46u8, 0u8, 196u8, 40u8,
67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 47u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8,
68u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 39u8, 115u8, 32u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 39u8, 115u8, 32u8, 103u8, 114u8,
111u8, 117u8, 112u8, 41u8, 48u8, 65u8, 103u8, 101u8, 110u8, 116u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 12u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8,
105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 3u8,
12u8, 84u8, 65u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 0u8, 164u8, 40u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 39u8,
115u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8,
116u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 41u8, 48u8, 71u8, 114u8, 111u8, 117u8, 112u8, 67u8,
104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 16u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8,
110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 0u8, 13u8, 1u8, 1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 71u8, 114u8, 111u8,
117u8, 112u8, 0u8, 4u8, 12u8, 116u8, 65u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 39u8,
115u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 100u8, 46u8, 0u8, 21u8, 1u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 39u8, 115u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 39u8,
115u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8,
103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 77u8, 4u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8,
95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8,
105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 28u8, 114u8, 101u8, 108u8,
97u8, 121u8, 101u8, 114u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 16u8, 76u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 80u8, 97u8, 121u8, 105u8, 110u8,
103u8, 75u8, 101u8, 121u8, 20u8, 0u8, 105u8, 2u8, 1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8,
68u8, 105u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 32u8, 1u8, 12u8,
117u8, 54u8, 52u8, 0u8, 0u8, 12u8, 204u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 102u8, 111u8,
114u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8,
32u8, 116u8, 111u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8,
46u8, 0u8, 1u8, 1u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 85u8, 115u8, 101u8, 114u8, 32u8, 75u8, 101u8, 121u8, 44u8, 32u8, 80u8, 97u8, 121u8, 105u8,
110u8, 103u8, 32u8, 75u8, 101u8, 121u8, 44u8, 32u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8,
108u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 44u8, 32u8,
65u8, 117u8, 116u8, 104u8, 32u8, 73u8, 68u8, 41u8, 68u8, 65u8, 99u8, 99u8, 101u8, 112u8, 116u8,
101u8, 100u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 12u8, 0u8, 105u8, 2u8,
1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 12u8, 80u8, 65u8, 99u8, 99u8, 101u8, 112u8,
116u8, 101u8, 100u8, 32u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 32u8, 107u8, 101u8, 121u8,
46u8, 0u8, 136u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8,
32u8, 85u8, 115u8, 101u8, 114u8, 32u8, 75u8, 101u8, 121u8, 44u8, 32u8, 80u8, 97u8, 121u8, 105u8,
110u8, 103u8, 32u8, 75u8, 101u8, 121u8, 41u8, 64u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8,
100u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 12u8, 0u8, 105u8, 2u8, 1u8,
32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 2u8, 12u8, 76u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8,
100u8, 32u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8,
136u8, 40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 85u8,
115u8, 101u8, 114u8, 32u8, 75u8, 101u8, 121u8, 44u8, 32u8, 80u8, 97u8, 121u8, 105u8, 110u8,
103u8, 32u8, 75u8, 101u8, 121u8, 41u8, 68u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 80u8,
111u8, 108u8, 121u8, 120u8, 76u8, 105u8, 109u8, 105u8, 116u8, 20u8, 0u8, 105u8, 2u8, 1u8, 32u8,
69u8, 118u8, 101u8, 110u8, 116u8, 68u8, 105u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 3u8,
12u8, 80u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 112u8, 111u8, 108u8, 121u8,
120u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 0u8, 17u8, 1u8, 40u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 85u8, 115u8, 101u8, 114u8, 32u8, 75u8,
101u8, 121u8, 44u8, 32u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 32u8, 75u8, 101u8, 121u8, 44u8,
32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 44u8, 32u8, 111u8,
108u8, 100u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 80u8,
79u8, 76u8, 89u8, 88u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8,
46u8, 0u8, 81u8, 4u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 114u8, 101u8,
119u8, 97u8, 114u8, 100u8, 115u8, 32u8, 82u8, 97u8, 119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 4u8, 64u8, 73u8,
116u8, 110u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 67u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 8u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 4u8, 92u8, 73u8,
116u8, 110u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 119u8, 97u8, 115u8, 32u8,
99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8,
117u8, 108u8, 101u8, 46u8, 0u8, 85u8, 4u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 24u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8,
48u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 8u8, 1u8,
32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 101u8, 114u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 4u8, 216u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 97u8, 100u8,
100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 40u8, 84u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8,
116u8, 101u8, 100u8, 8u8, 1u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 4u8,
132u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 116u8, 101u8, 114u8, 109u8, 105u8,
110u8, 97u8, 116u8, 101u8, 100u8, 46u8, 1u8, 44u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8,
105u8, 97u8, 114u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 4u8, 228u8, 84u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8,
101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 115u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 104u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 0u8, 24u8, 35u8, 32u8, 78u8, 111u8, 116u8, 101u8, 0u8,
61u8, 1u8, 84u8, 104u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 119u8, 97u8, 121u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
97u8, 110u8, 100u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 98u8,
121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8, 68u8, 96u8, 115u8, 101u8, 97u8,
108u8, 95u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 96u8, 46u8, 40u8,
67u8, 111u8, 100u8, 101u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 4u8, 1u8, 36u8, 99u8, 111u8,
100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8,
115u8, 104u8, 0u8, 2u8, 4u8, 180u8, 67u8, 111u8, 100u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8,
32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 46u8, 60u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 69u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 8u8, 1u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 4u8, 144u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 101u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8,
46u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 8u8, 53u8, 1u8, 68u8, 97u8, 116u8, 97u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 46u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8,
103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 100u8, 117u8, 114u8, 105u8,
110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 99u8, 111u8,
109u8, 112u8, 105u8, 108u8, 97u8, 116u8, 105u8, 111u8, 110u8, 92u8, 105u8, 115u8, 32u8, 110u8,
101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8,
101u8, 32u8, 105u8, 116u8, 46u8, 3u8, 4u8, 156u8, 65u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8,
109u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 46u8, 44u8, 67u8, 111u8, 100u8, 101u8, 82u8, 101u8, 109u8, 111u8, 118u8,
101u8, 100u8, 4u8, 1u8, 36u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8,
1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8, 0u8, 4u8, 4u8, 172u8, 65u8, 32u8, 99u8,
111u8, 100u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8,
119u8, 97u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 76u8, 67u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 67u8, 111u8, 100u8, 101u8, 85u8, 112u8, 100u8,
97u8, 116u8, 101u8, 100u8, 12u8, 1u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 4u8,
140u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 1u8, 52u8, 110u8, 101u8, 119u8, 95u8, 99u8,
111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8,
97u8, 115u8, 104u8, 4u8, 176u8, 78u8, 101u8, 119u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8,
97u8, 115u8, 104u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 115u8,
101u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 1u8, 52u8, 111u8, 108u8, 100u8, 95u8, 99u8, 111u8, 100u8,
101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8,
104u8, 4u8, 140u8, 80u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 32u8, 99u8, 111u8,
100u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 5u8, 4u8, 120u8, 65u8, 32u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 39u8, 115u8, 32u8, 99u8, 111u8, 100u8,
101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 4u8,
153u8, 1u8, 10u8, 9u8, 9u8, 9u8, 84u8, 104u8, 101u8, 32u8, 91u8, 101u8, 118u8, 101u8, 110u8,
116u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8,
115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8,
47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8,
101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8,
115u8, 41u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 10u8, 9u8, 9u8, 9u8, 98u8,
121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8,
10u8, 9u8, 9u8, 9u8, 89u8, 4u8, 8u8, 72u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 20u8, 69u8, 118u8,
101u8, 110u8, 116u8, 0u8, 1u8, 0u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 93u8, 4u8, 12u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8,
114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
20u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 4u8, 84u8, 0u8, 1u8, 12u8, 20u8, 78u8, 111u8, 116u8,
101u8, 100u8, 4u8, 1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8,
97u8, 115u8, 104u8, 0u8, 0u8, 4u8, 104u8, 65u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8,
103u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 110u8, 111u8,
116u8, 101u8, 100u8, 46u8, 36u8, 82u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8,
4u8, 1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8,
104u8, 0u8, 1u8, 4u8, 120u8, 65u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 113u8, 117u8,
101u8, 115u8, 116u8, 101u8, 100u8, 46u8, 28u8, 67u8, 108u8, 101u8, 97u8, 114u8, 101u8, 100u8,
4u8, 1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8,
104u8, 0u8, 2u8, 4u8, 108u8, 65u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 110u8, 32u8, 99u8, 108u8, 101u8, 97u8, 114u8, 101u8,
100u8, 46u8, 4u8, 153u8, 1u8, 10u8, 9u8, 9u8, 9u8, 84u8, 104u8, 101u8, 32u8, 91u8, 101u8, 118u8,
101u8, 110u8, 116u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8,
111u8, 99u8, 115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8,
105u8, 111u8, 47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8,
101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8,
111u8, 114u8, 115u8, 41u8, 32u8, 101u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 10u8, 9u8, 9u8,
9u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 97u8, 4u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 116u8, 101u8, 115u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 115u8, 32u8, 82u8, 97u8,
119u8, 69u8, 118u8, 101u8, 110u8, 116u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 88u8, 77u8, 111u8, 99u8, 107u8, 73u8, 110u8, 118u8, 101u8,
115u8, 116u8, 111u8, 114u8, 85u8, 73u8, 68u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 8u8,
0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
0u8, 101u8, 4u8, 1u8, 44u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 105u8,
100u8, 0u8, 0u8, 8u8, 13u8, 1u8, 65u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 111u8, 99u8,
107u8, 101u8, 100u8, 32u8, 96u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8,
105u8, 100u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 116u8, 40u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8,
78u8, 101u8, 119u8, 32u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 105u8,
100u8, 41u8, 36u8, 68u8, 105u8, 100u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 8u8, 0u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 0u8, 0u8,
1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 8u8, 228u8, 69u8,
109u8, 105u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 46u8, 112u8,
40u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 67u8, 97u8,
108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 36u8, 67u8,
100u8, 100u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 12u8, 0u8, 116u8, 1u8, 72u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 62u8, 0u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
0u8, 0u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 2u8, 12u8, 85u8, 1u8, 83u8,
104u8, 111u8, 119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 68u8, 73u8, 68u8, 96u8, 32u8,
97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8,
44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 32u8, 102u8, 108u8, 97u8, 103u8, 32u8, 105u8, 110u8,
100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 115u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 68u8, 73u8, 68u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 64u8, 118u8, 97u8, 108u8,
105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 216u8, 40u8,
84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 68u8, 73u8, 68u8, 44u8, 32u8, 84u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 97u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 41u8, 8u8, 92u8, 69u8, 118u8, 101u8, 110u8,
116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 111u8,
100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 101u8, 4u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8,
24u8, 99u8, 100u8, 100u8, 95u8, 105u8, 100u8, 44u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8,
111u8, 114u8, 85u8, 105u8, 100u8, 0u8, 0u8, 4u8, 0u8, 149u8, 1u8, 1u8, 32u8, 91u8, 117u8, 56u8,
59u8, 32u8, 49u8, 54u8, 93u8, 0u8, 0u8, 105u8, 4u8, 8u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8,
95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 20u8, 80u8, 104u8, 97u8, 115u8, 101u8, 0u8, 1u8,
12u8, 56u8, 65u8, 112u8, 112u8, 108u8, 121u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 0u8, 48u8, 70u8, 105u8,
110u8, 97u8, 108u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 1u8, 0u8, 56u8, 73u8,
110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8,
2u8, 0u8, 0u8, 109u8, 4u8, 0u8, 0u8, 2u8, 36u8, 0u8, 113u8, 4u8, 0u8, 0u8, 2u8, 153u8, 3u8, 0u8,
117u8, 4u8, 8u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8,
109u8, 88u8, 76u8, 97u8, 115u8, 116u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 85u8,
112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 73u8, 110u8, 102u8, 111u8, 0u8, 0u8, 8u8, 1u8, 48u8,
115u8, 112u8, 101u8, 99u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 121u8, 4u8,
1u8, 76u8, 99u8, 111u8, 100u8, 101u8, 99u8, 58u8, 58u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8,
116u8, 60u8, 117u8, 51u8, 50u8, 62u8, 0u8, 1u8, 36u8, 115u8, 112u8, 101u8, 99u8, 95u8, 110u8,
97u8, 109u8, 101u8, 125u8, 4u8, 1u8, 100u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 58u8, 58u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 83u8, 116u8,
114u8, 105u8, 110u8, 103u8, 0u8, 0u8, 121u8, 4u8, 0u8, 0u8, 6u8, 16u8, 0u8, 125u8, 4u8, 0u8, 0u8,
5u8, 2u8, 0u8, 129u8, 4u8, 12u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8,
115u8, 116u8, 101u8, 109u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8,
108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 36u8, 40u8, 102u8, 105u8, 108u8, 108u8, 95u8, 98u8,
108u8, 111u8, 99u8, 107u8, 4u8, 1u8, 20u8, 114u8, 97u8, 116u8, 105u8, 111u8, 137u8, 1u8, 1u8,
28u8, 80u8, 101u8, 114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 0u8, 4u8, 5u8, 1u8, 65u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 102u8, 105u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8,
108u8, 111u8, 99u8, 107u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 117u8, 112u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
114u8, 97u8, 116u8, 105u8, 111u8, 46u8, 24u8, 114u8, 101u8, 109u8, 97u8, 114u8, 107u8, 4u8, 1u8,
24u8, 114u8, 101u8, 109u8, 97u8, 114u8, 107u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 1u8, 20u8, 104u8, 77u8, 97u8, 107u8, 101u8, 32u8, 115u8, 111u8, 109u8, 101u8,
32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 114u8, 101u8, 109u8, 97u8,
114u8, 107u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8,
32u8, 45u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 56u8, 115u8, 101u8, 116u8, 95u8, 104u8, 101u8, 97u8, 112u8,
95u8, 112u8, 97u8, 103u8, 101u8, 115u8, 4u8, 1u8, 20u8, 112u8, 97u8, 103u8, 101u8, 115u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 2u8, 4u8, 248u8, 83u8, 101u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 112u8, 97u8,
103u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 87u8, 101u8, 98u8,
65u8, 115u8, 115u8, 101u8, 109u8, 98u8, 108u8, 121u8, 32u8, 101u8, 110u8, 118u8, 105u8, 114u8,
111u8, 110u8, 109u8, 101u8, 110u8, 116u8, 39u8, 115u8, 32u8, 104u8, 101u8, 97u8, 112u8, 46u8,
32u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 100u8, 101u8, 4u8, 1u8, 16u8, 99u8, 111u8, 100u8,
101u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 3u8, 48u8, 100u8, 83u8,
101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 49u8, 1u8, 45u8, 32u8, 96u8, 79u8, 40u8, 67u8,
32u8, 43u8, 32u8, 83u8, 41u8, 96u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 67u8,
96u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8,
111u8, 100u8, 101u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 83u8, 96u8, 32u8, 99u8, 111u8,
109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8,
97u8, 110u8, 95u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 69u8, 1u8, 45u8,
32u8, 49u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 96u8, 99u8, 97u8, 110u8,
95u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 58u8, 32u8, 96u8, 79u8, 40u8,
83u8, 41u8, 96u8, 32u8, 40u8, 99u8, 97u8, 108u8, 108u8, 115u8, 32u8, 96u8, 115u8, 112u8, 95u8,
105u8, 111u8, 58u8, 58u8, 109u8, 105u8, 115u8, 99u8, 58u8, 58u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 96u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 52u8, 32u8, 32u8, 101u8, 120u8, 112u8, 101u8,
110u8, 115u8, 105u8, 118u8, 101u8, 41u8, 46u8, 132u8, 45u8, 32u8, 49u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 99u8,
111u8, 100u8, 101u8, 99u8, 32u8, 96u8, 79u8, 40u8, 67u8, 41u8, 96u8, 41u8, 46u8, 64u8, 45u8,
32u8, 49u8, 32u8, 100u8, 105u8, 103u8, 101u8, 115u8, 116u8, 32u8, 105u8, 116u8, 101u8, 109u8,
46u8, 40u8, 45u8, 32u8, 49u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 46u8, 77u8, 1u8, 84u8,
104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8,
98u8, 117u8, 116u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 118u8, 101u8, 114u8, 121u8, 184u8, 101u8,
120u8, 112u8, 101u8, 110u8, 115u8, 105u8, 118u8, 101u8, 46u8, 32u8, 87u8, 101u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 116u8, 114u8, 101u8, 97u8, 116u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 92u8,
115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 100u8, 101u8, 95u8, 119u8, 105u8, 116u8, 104u8, 111u8,
117u8, 116u8, 95u8, 99u8, 104u8, 101u8, 99u8, 107u8, 115u8, 4u8, 1u8, 16u8, 99u8, 111u8, 100u8,
101u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 4u8, 36u8, 25u8, 1u8,
83u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 119u8, 105u8, 116u8,
104u8, 111u8, 117u8, 116u8, 32u8, 100u8, 111u8, 105u8, 110u8, 103u8, 32u8, 97u8, 110u8, 121u8,
32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 46u8, 0u8,
40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 140u8, 45u8, 32u8, 96u8,
79u8, 40u8, 67u8, 41u8, 96u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 67u8, 96u8,
32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 111u8,
100u8, 101u8, 96u8, 132u8, 45u8, 32u8, 49u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 99u8, 111u8, 100u8, 101u8, 99u8,
32u8, 96u8, 79u8, 40u8, 67u8, 41u8, 96u8, 41u8, 46u8, 64u8, 45u8, 32u8, 49u8, 32u8, 100u8, 105u8,
103u8, 101u8, 115u8, 116u8, 32u8, 105u8, 116u8, 101u8, 109u8, 46u8, 40u8, 45u8, 32u8, 49u8, 32u8,
101u8, 118u8, 101u8, 110u8, 116u8, 46u8, 85u8, 1u8, 84u8, 104u8, 101u8, 32u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8,
101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 46u8, 32u8, 87u8, 101u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 116u8, 114u8, 101u8, 97u8, 116u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
97u8, 115u8, 32u8, 97u8, 32u8, 102u8, 117u8, 108u8, 108u8, 72u8, 98u8, 108u8, 111u8, 99u8, 107u8,
46u8, 32u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 44u8, 115u8,
101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 4u8, 1u8, 20u8, 105u8, 116u8,
101u8, 109u8, 115u8, 133u8, 4u8, 1u8, 52u8, 86u8, 101u8, 99u8, 60u8, 75u8, 101u8, 121u8, 86u8,
97u8, 108u8, 117u8, 101u8, 62u8, 0u8, 5u8, 4u8, 104u8, 83u8, 101u8, 116u8, 32u8, 115u8, 111u8,
109u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 48u8, 107u8, 105u8, 108u8, 108u8, 95u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 4u8, 1u8, 16u8, 107u8, 101u8, 121u8, 115u8, 141u8, 4u8, 1u8,
32u8, 86u8, 101u8, 99u8, 60u8, 75u8, 101u8, 121u8, 62u8, 0u8, 6u8, 4u8, 116u8, 75u8, 105u8,
108u8, 108u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 44u8,
107u8, 105u8, 108u8, 108u8, 95u8, 112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 8u8, 1u8, 24u8,
112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 40u8, 1u8, 12u8, 75u8, 101u8, 121u8, 0u8, 1u8, 28u8,
115u8, 117u8, 98u8, 107u8, 101u8, 121u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 7u8,
16u8, 17u8, 1u8, 75u8, 105u8, 108u8, 108u8, 32u8, 97u8, 108u8, 108u8, 32u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 32u8, 119u8, 105u8, 116u8,
104u8, 32u8, 97u8, 32u8, 107u8, 101u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8,
116u8, 97u8, 114u8, 116u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 46u8,
0u8, 57u8, 1u8, 42u8, 42u8, 78u8, 79u8, 84u8, 69u8, 58u8, 42u8, 42u8, 32u8, 87u8, 101u8, 32u8,
114u8, 101u8, 108u8, 121u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 82u8, 111u8,
111u8, 116u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 116u8, 111u8, 32u8, 112u8,
114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 32u8, 117u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 117u8, 98u8, 107u8,
101u8, 121u8, 115u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 61u8, 1u8, 116u8, 104u8, 101u8,
32u8, 112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 32u8, 119u8, 101u8, 32u8, 97u8, 114u8, 101u8,
32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 97u8,
99u8, 99u8, 117u8, 114u8, 97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8,
108u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 68u8, 114u8, 101u8, 109u8, 97u8, 114u8, 107u8, 95u8, 119u8,
105u8, 116u8, 104u8, 95u8, 101u8, 118u8, 101u8, 110u8, 116u8, 4u8, 1u8, 24u8, 114u8, 101u8,
109u8, 97u8, 114u8, 107u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 8u8,
4u8, 164u8, 77u8, 97u8, 107u8, 101u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 111u8, 110u8, 45u8,
99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 114u8, 101u8, 109u8, 97u8, 114u8, 107u8, 32u8, 97u8,
110u8, 100u8, 32u8, 101u8, 109u8, 105u8, 116u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 46u8,
4u8, 37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8,
32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8,
115u8, 105u8, 99u8, 46u8, 133u8, 4u8, 0u8, 0u8, 2u8, 137u8, 4u8, 0u8, 137u8, 4u8, 0u8, 0u8, 4u8,
8u8, 40u8, 40u8, 0u8, 141u8, 4u8, 0u8, 0u8, 2u8, 40u8, 0u8, 145u8, 4u8, 12u8, 48u8, 102u8, 114u8,
97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 24u8, 108u8, 105u8, 109u8,
105u8, 116u8, 115u8, 48u8, 66u8, 108u8, 111u8, 99u8, 107u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 115u8, 0u8, 0u8, 12u8, 1u8, 40u8, 98u8, 97u8, 115u8, 101u8, 95u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 36u8, 109u8,
97u8, 120u8, 95u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 36u8, 112u8, 101u8, 114u8, 95u8, 99u8, 108u8, 97u8, 115u8, 115u8, 149u8,
4u8, 1u8, 132u8, 80u8, 101u8, 114u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 67u8,
108u8, 97u8, 115u8, 115u8, 60u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 80u8, 101u8,
114u8, 67u8, 108u8, 97u8, 115u8, 115u8, 62u8, 0u8, 0u8, 149u8, 4u8, 12u8, 52u8, 102u8, 114u8,
97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 115u8, 64u8, 80u8, 101u8, 114u8, 68u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 4u8, 4u8, 84u8, 1u8, 153u8, 4u8, 0u8, 12u8,
1u8, 24u8, 110u8, 111u8, 114u8, 109u8, 97u8, 108u8, 153u8, 4u8, 1u8, 4u8, 84u8, 0u8, 1u8, 44u8,
111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 153u8, 4u8, 1u8, 4u8,
84u8, 0u8, 1u8, 36u8, 109u8, 97u8, 110u8, 100u8, 97u8, 116u8, 111u8, 114u8, 121u8, 153u8, 4u8,
1u8, 4u8, 84u8, 0u8, 0u8, 153u8, 4u8, 12u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8,
121u8, 115u8, 116u8, 101u8, 109u8, 24u8, 108u8, 105u8, 109u8, 105u8, 116u8, 115u8, 60u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 80u8, 101u8, 114u8, 67u8, 108u8, 97u8, 115u8, 115u8,
0u8, 0u8, 16u8, 1u8, 56u8, 98u8, 97u8, 115u8, 101u8, 95u8, 101u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8,
52u8, 109u8, 97u8, 120u8, 95u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 0u8, 1u8, 36u8, 109u8, 97u8, 120u8, 95u8, 116u8, 111u8, 116u8, 97u8, 108u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 0u8, 1u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 0u8, 0u8, 157u8, 4u8, 12u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8,
115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 24u8, 108u8, 105u8, 109u8, 105u8, 116u8, 115u8, 44u8,
66u8, 108u8, 111u8, 99u8, 107u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 0u8, 0u8, 4u8, 1u8,
12u8, 109u8, 97u8, 120u8, 161u8, 4u8, 1u8, 84u8, 80u8, 101u8, 114u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 60u8, 117u8, 51u8, 50u8, 62u8, 0u8,
0u8, 161u8, 4u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8,
111u8, 114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 64u8, 80u8, 101u8,
114u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 4u8,
4u8, 84u8, 1u8, 16u8, 0u8, 12u8, 1u8, 24u8, 110u8, 111u8, 114u8, 109u8, 97u8, 108u8, 16u8, 1u8,
4u8, 84u8, 0u8, 1u8, 44u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8,
108u8, 16u8, 1u8, 4u8, 84u8, 0u8, 1u8, 36u8, 109u8, 97u8, 110u8, 100u8, 97u8, 116u8, 111u8,
114u8, 121u8, 16u8, 1u8, 4u8, 84u8, 0u8, 0u8, 165u8, 4u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 115u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 68u8, 98u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 0u8, 8u8, 1u8, 16u8, 114u8, 101u8, 97u8, 100u8, 32u8,
1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 20u8, 119u8, 114u8, 105u8, 116u8,
101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 0u8, 169u8, 4u8, 8u8, 40u8,
115u8, 112u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 56u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 32u8, 1u8,
36u8, 115u8, 112u8, 101u8, 99u8, 95u8, 110u8, 97u8, 109u8, 101u8, 125u8, 4u8, 1u8, 52u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 83u8, 116u8, 114u8, 105u8, 110u8, 103u8, 0u8, 1u8,
36u8, 105u8, 109u8, 112u8, 108u8, 95u8, 110u8, 97u8, 109u8, 101u8, 125u8, 4u8, 1u8, 52u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 83u8, 116u8, 114u8, 105u8, 110u8, 103u8, 0u8, 1u8,
68u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 110u8, 103u8, 95u8, 118u8, 101u8, 114u8,
115u8, 105u8, 111u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 48u8, 115u8, 112u8,
101u8, 99u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 1u8, 48u8, 105u8, 109u8, 112u8, 108u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 16u8, 97u8, 112u8, 105u8, 115u8, 173u8, 4u8,
1u8, 28u8, 65u8, 112u8, 105u8, 115u8, 86u8, 101u8, 99u8, 0u8, 1u8, 76u8, 116u8, 114u8, 97u8,
110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8,
111u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 52u8, 115u8, 116u8, 97u8, 116u8,
101u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8,
0u8, 173u8, 4u8, 4u8, 12u8, 67u8, 111u8, 119u8, 4u8, 4u8, 84u8, 1u8, 177u8, 4u8, 0u8, 4u8, 0u8,
177u8, 4u8, 0u8, 0u8, 0u8, 177u8, 4u8, 0u8, 0u8, 2u8, 181u8, 4u8, 0u8, 181u8, 4u8, 0u8, 0u8, 4u8,
8u8, 185u8, 4u8, 16u8, 0u8, 185u8, 4u8, 0u8, 0u8, 3u8, 8u8, 0u8, 0u8, 0u8, 8u8, 0u8, 189u8, 4u8,
12u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8,
24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8,
84u8, 0u8, 1u8, 24u8, 60u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 112u8, 101u8,
99u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 8u8, 17u8, 1u8, 84u8, 104u8, 101u8, 32u8, 110u8, 97u8,
109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 80u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8,
32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 46u8, 104u8,
83u8, 112u8, 101u8, 99u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 78u8, 101u8, 101u8,
100u8, 115u8, 84u8, 111u8, 73u8, 110u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 0u8, 1u8, 8u8,
65u8, 1u8, 84u8, 104u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 100u8, 101u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 32u8, 98u8, 101u8,
116u8, 119u8, 101u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 80u8, 97u8, 110u8,
100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 46u8, 116u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 69u8,
120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 86u8,
101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 2u8, 12u8, 236u8, 70u8, 97u8, 105u8, 108u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 32u8, 118u8, 101u8, 114u8,
115u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 101u8, 119u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 46u8, 0u8, 9u8, 1u8,
69u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 99u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8,
32u8, 96u8, 67u8, 111u8, 114u8, 101u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
96u8, 32u8, 111u8, 114u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 32u8,
96u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 96u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 46u8, 76u8, 78u8, 111u8, 110u8, 68u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 67u8, 111u8, 109u8, 112u8, 111u8, 115u8, 105u8, 116u8,
101u8, 0u8, 3u8, 4u8, 252u8, 83u8, 117u8, 105u8, 99u8, 105u8, 100u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8,
110u8, 45u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8,
111u8, 115u8, 105u8, 116u8, 101u8, 32u8, 100u8, 97u8, 116u8, 97u8, 46u8, 60u8, 78u8, 111u8,
110u8, 90u8, 101u8, 114u8, 111u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 4u8,
4u8, 53u8, 1u8, 84u8, 104u8, 101u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 110u8,
111u8, 110u8, 45u8, 122u8, 101u8, 114u8, 111u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8,
110u8, 99u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 112u8, 114u8, 101u8, 118u8,
101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 98u8, 101u8, 105u8, 110u8,
103u8, 32u8, 112u8, 117u8, 114u8, 103u8, 101u8, 100u8, 46u8, 48u8, 67u8, 97u8, 108u8, 108u8,
70u8, 105u8, 108u8, 116u8, 101u8, 114u8, 101u8, 100u8, 0u8, 5u8, 4u8, 208u8, 84u8, 104u8, 101u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 105u8, 108u8, 116u8, 101u8, 114u8,
32u8, 112u8, 114u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 46u8, 4u8, 108u8, 69u8, 114u8, 114u8, 111u8, 114u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8,
32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 193u8, 4u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 64u8, 119u8, 101u8, 97u8, 107u8, 95u8, 98u8, 111u8, 117u8, 110u8, 100u8,
101u8, 100u8, 95u8, 118u8, 101u8, 99u8, 56u8, 87u8, 101u8, 97u8, 107u8, 66u8, 111u8, 117u8,
110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 197u8, 4u8, 4u8, 83u8, 0u8,
0u8, 4u8, 0u8, 205u8, 4u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8, 197u8, 4u8,
0u8, 0u8, 4u8, 8u8, 201u8, 4u8, 32u8, 0u8, 201u8, 4u8, 12u8, 68u8, 115u8, 112u8, 95u8, 99u8,
111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 95u8, 98u8, 97u8, 98u8, 101u8, 12u8,
97u8, 112u8, 112u8, 24u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 4u8, 0u8, 185u8, 1u8,
1u8, 60u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 58u8, 58u8, 80u8, 117u8, 98u8, 108u8,
105u8, 99u8, 0u8, 0u8, 205u8, 4u8, 0u8, 0u8, 2u8, 197u8, 4u8, 0u8, 209u8, 4u8, 8u8, 72u8, 115u8,
112u8, 95u8, 99u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 95u8, 115u8, 108u8,
111u8, 116u8, 115u8, 16u8, 83u8, 108u8, 111u8, 116u8, 0u8, 0u8, 4u8, 0u8, 32u8, 1u8, 12u8, 117u8,
54u8, 52u8, 0u8, 0u8, 213u8, 4u8, 12u8, 68u8, 115u8, 112u8, 95u8, 99u8, 111u8, 110u8, 115u8,
101u8, 110u8, 115u8, 117u8, 115u8, 95u8, 98u8, 97u8, 98u8, 101u8, 28u8, 100u8, 105u8, 103u8,
101u8, 115u8, 116u8, 115u8, 80u8, 78u8, 101u8, 120u8, 116u8, 67u8, 111u8, 110u8, 102u8, 105u8,
103u8, 68u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 111u8, 114u8, 0u8, 1u8, 4u8, 8u8,
86u8, 49u8, 8u8, 1u8, 4u8, 99u8, 217u8, 4u8, 1u8, 40u8, 40u8, 117u8, 54u8, 52u8, 44u8, 32u8,
117u8, 54u8, 52u8, 41u8, 0u8, 1u8, 52u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 95u8,
115u8, 108u8, 111u8, 116u8, 115u8, 221u8, 4u8, 1u8, 48u8, 65u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 83u8, 108u8, 111u8, 116u8, 115u8, 0u8, 1u8, 0u8, 0u8, 217u8, 4u8, 0u8, 0u8, 4u8,
8u8, 32u8, 32u8, 0u8, 221u8, 4u8, 8u8, 68u8, 115u8, 112u8, 95u8, 99u8, 111u8, 110u8, 115u8,
101u8, 110u8, 115u8, 117u8, 115u8, 95u8, 98u8, 97u8, 98u8, 101u8, 48u8, 65u8, 108u8, 108u8,
111u8, 119u8, 101u8, 100u8, 83u8, 108u8, 111u8, 116u8, 115u8, 0u8, 1u8, 12u8, 48u8, 80u8, 114u8,
105u8, 109u8, 97u8, 114u8, 121u8, 83u8, 108u8, 111u8, 116u8, 115u8, 0u8, 0u8, 0u8, 116u8, 80u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 65u8, 110u8, 100u8, 83u8, 101u8, 99u8, 111u8, 110u8,
100u8, 97u8, 114u8, 121u8, 80u8, 108u8, 97u8, 105u8, 110u8, 83u8, 108u8, 111u8, 116u8, 115u8,
0u8, 1u8, 0u8, 108u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 65u8, 110u8, 100u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 86u8, 82u8, 70u8, 83u8, 108u8, 111u8,
116u8, 115u8, 0u8, 2u8, 0u8, 0u8, 225u8, 4u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8,
115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 44u8, 98u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 95u8, 118u8, 101u8, 99u8, 40u8,
66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 4u8, 4u8,
83u8, 0u8, 0u8, 4u8, 0u8, 229u8, 4u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8,
229u8, 4u8, 0u8, 0u8, 2u8, 4u8, 0u8, 233u8, 4u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 4u8, 4u8, 84u8, 1u8, 4u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8,
83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 4u8, 0u8, 0u8, 1u8, 0u8, 0u8, 237u8, 4u8, 8u8, 68u8, 115u8,
112u8, 95u8, 99u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 95u8, 98u8, 97u8,
98u8, 101u8, 88u8, 66u8, 97u8, 98u8, 101u8, 69u8, 112u8, 111u8, 99u8, 104u8, 67u8, 111u8, 110u8,
102u8, 105u8, 103u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 8u8, 1u8, 4u8,
99u8, 217u8, 4u8, 1u8, 40u8, 40u8, 117u8, 54u8, 52u8, 44u8, 32u8, 117u8, 54u8, 52u8, 41u8, 0u8,
1u8, 52u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 95u8, 115u8, 108u8, 111u8, 116u8,
115u8, 221u8, 4u8, 1u8, 48u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 83u8, 108u8, 111u8,
116u8, 115u8, 0u8, 0u8, 241u8, 4u8, 12u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
98u8, 97u8, 98u8, 101u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8,
108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 12u8, 76u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 95u8,
101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 8u8, 1u8, 72u8,
101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 112u8,
114u8, 111u8, 111u8, 102u8, 245u8, 4u8, 1u8, 132u8, 66u8, 111u8, 120u8, 60u8, 69u8, 113u8, 117u8,
105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8,
60u8, 84u8, 58u8, 58u8, 72u8, 101u8, 97u8, 100u8, 101u8, 114u8, 62u8, 62u8, 0u8, 1u8, 60u8,
107u8, 101u8, 121u8, 95u8, 111u8, 119u8, 110u8, 101u8, 114u8, 95u8, 112u8, 114u8, 111u8, 111u8,
102u8, 1u8, 5u8, 1u8, 64u8, 84u8, 58u8, 58u8, 75u8, 101u8, 121u8, 79u8, 119u8, 110u8, 101u8,
114u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 0u8, 16u8, 9u8, 1u8, 82u8, 101u8, 112u8, 111u8,
114u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 101u8,
113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 47u8, 109u8, 105u8,
115u8, 98u8, 101u8, 104u8, 97u8, 118u8, 105u8, 111u8, 114u8, 46u8, 32u8, 84u8, 104u8, 105u8,
115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
118u8, 101u8, 114u8, 105u8, 102u8, 121u8, 5u8, 1u8, 116u8, 104u8, 101u8, 32u8, 101u8, 113u8,
117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 114u8, 111u8,
111u8, 102u8, 32u8, 97u8, 110u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 112u8, 114u8,
111u8, 111u8, 102u8, 13u8, 1u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 111u8,
102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8, 102u8, 32u8, 98u8, 111u8,
116u8, 104u8, 32u8, 97u8, 114u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 44u8, 32u8,
116u8, 104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 32u8, 119u8, 105u8,
108u8, 108u8, 48u8, 98u8, 101u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8,
46u8, 112u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 95u8, 101u8, 113u8, 117u8, 105u8, 118u8,
111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 8u8, 1u8, 72u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8,
111u8, 110u8, 95u8, 112u8, 114u8, 111u8, 111u8, 102u8, 245u8, 4u8, 1u8, 132u8, 66u8, 111u8,
120u8, 60u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
80u8, 114u8, 111u8, 111u8, 102u8, 60u8, 84u8, 58u8, 58u8, 72u8, 101u8, 97u8, 100u8, 101u8, 114u8,
62u8, 62u8, 0u8, 1u8, 60u8, 107u8, 101u8, 121u8, 95u8, 111u8, 119u8, 110u8, 101u8, 114u8, 95u8,
112u8, 114u8, 111u8, 111u8, 102u8, 1u8, 5u8, 1u8, 64u8, 84u8, 58u8, 58u8, 75u8, 101u8, 121u8,
79u8, 119u8, 110u8, 101u8, 114u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 1u8, 32u8, 9u8, 1u8,
82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
116u8, 121u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8,
110u8, 47u8, 109u8, 105u8, 115u8, 98u8, 101u8, 104u8, 97u8, 118u8, 105u8, 111u8, 114u8, 46u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 118u8, 101u8, 114u8, 105u8, 102u8, 121u8, 5u8, 1u8, 116u8, 104u8,
101u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 97u8, 110u8, 100u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8,
112u8, 32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 13u8, 1u8, 97u8, 103u8, 97u8, 105u8, 110u8,
115u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8,
101u8, 100u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8,
102u8, 32u8, 98u8, 111u8, 116u8, 104u8, 32u8, 97u8, 114u8, 101u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8,
101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 48u8, 98u8, 101u8, 32u8, 114u8, 101u8, 112u8, 111u8,
114u8, 116u8, 101u8, 100u8, 46u8, 13u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 117u8, 110u8, 115u8, 105u8, 103u8,
110u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8,
101u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
111u8, 110u8, 108u8, 121u8, 21u8, 1u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 105u8, 116u8, 32u8, 40u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 100u8,
32u8, 105u8, 110u8, 32u8, 96u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 85u8, 110u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 96u8, 41u8, 44u8, 32u8, 97u8, 115u8, 32u8, 115u8,
117u8, 99u8, 104u8, 21u8, 1u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 100u8,
101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 97u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8,
105u8, 111u8, 110u8, 36u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 114u8, 46u8, 72u8,
112u8, 108u8, 97u8, 110u8, 95u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 95u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 4u8, 1u8, 24u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 213u8, 4u8,
1u8, 80u8, 78u8, 101u8, 120u8, 116u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 68u8, 101u8,
115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 111u8, 114u8, 0u8, 2u8, 16u8, 93u8, 1u8, 80u8, 108u8,
97u8, 110u8, 32u8, 97u8, 110u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 99u8, 111u8, 110u8,
102u8, 105u8, 103u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 32u8, 84u8, 104u8,
101u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8,
32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 99u8,
111u8, 114u8, 100u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 81u8,
1u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
116u8, 111u8, 32u8, 96u8, 101u8, 110u8, 97u8, 99u8, 116u8, 95u8, 101u8, 112u8, 111u8, 99u8,
104u8, 95u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 96u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8,
99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8,
32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 97u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 101u8,
32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 46u8, 89u8, 1u8,
77u8, 117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8,
100u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8, 112u8, 108u8, 97u8, 99u8, 101u8,
32u8, 97u8, 110u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8,
112u8, 108u8, 97u8, 110u8, 110u8, 101u8, 100u8, 32u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8,
32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
100u8, 84u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 110u8, 97u8,
99u8, 116u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 46u8, 4u8, 37u8, 1u8, 67u8, 111u8, 110u8,
116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 118u8, 97u8, 114u8, 105u8,
97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 245u8, 4u8, 8u8,
72u8, 115u8, 112u8, 95u8, 99u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 95u8,
115u8, 108u8, 111u8, 116u8, 115u8, 68u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 8u8, 24u8, 72u8, 101u8, 97u8,
100u8, 101u8, 114u8, 1u8, 249u8, 4u8, 8u8, 73u8, 100u8, 1u8, 201u8, 4u8, 0u8, 16u8, 1u8, 32u8,
111u8, 102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 201u8, 4u8, 1u8, 8u8, 73u8, 100u8, 0u8,
1u8, 16u8, 115u8, 108u8, 111u8, 116u8, 209u8, 4u8, 1u8, 16u8, 83u8, 108u8, 111u8, 116u8, 0u8,
1u8, 48u8, 102u8, 105u8, 114u8, 115u8, 116u8, 95u8, 104u8, 101u8, 97u8, 100u8, 101u8, 114u8,
249u8, 4u8, 1u8, 24u8, 72u8, 101u8, 97u8, 100u8, 101u8, 114u8, 0u8, 1u8, 52u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 95u8, 104u8, 101u8, 97u8, 100u8, 101u8, 114u8, 249u8, 4u8, 1u8, 24u8,
72u8, 101u8, 97u8, 100u8, 101u8, 114u8, 0u8, 0u8, 249u8, 4u8, 16u8, 40u8, 115u8, 112u8, 95u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 28u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8,
99u8, 24u8, 104u8, 101u8, 97u8, 100u8, 101u8, 114u8, 24u8, 72u8, 101u8, 97u8, 100u8, 101u8,
114u8, 8u8, 24u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 16u8, 72u8, 97u8, 115u8,
104u8, 1u8, 253u8, 4u8, 0u8, 20u8, 1u8, 44u8, 112u8, 97u8, 114u8, 101u8, 110u8, 116u8, 95u8,
104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 48u8, 72u8, 97u8, 115u8, 104u8, 58u8, 58u8, 79u8, 117u8,
116u8, 112u8, 117u8, 116u8, 0u8, 1u8, 24u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 121u8, 4u8,
1u8, 24u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 40u8, 115u8, 116u8, 97u8, 116u8,
101u8, 95u8, 114u8, 111u8, 111u8, 116u8, 36u8, 1u8, 48u8, 72u8, 97u8, 115u8, 104u8, 58u8, 58u8,
79u8, 117u8, 116u8, 112u8, 117u8, 116u8, 0u8, 1u8, 60u8, 101u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 115u8, 95u8, 114u8, 111u8, 111u8, 116u8, 36u8, 1u8, 48u8, 72u8, 97u8,
115u8, 104u8, 58u8, 58u8, 79u8, 117u8, 116u8, 112u8, 117u8, 116u8, 0u8, 1u8, 24u8, 100u8, 105u8,
103u8, 101u8, 115u8, 116u8, 44u8, 1u8, 24u8, 68u8, 105u8, 103u8, 101u8, 115u8, 116u8, 0u8, 0u8,
253u8, 4u8, 12u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 44u8, 66u8, 108u8, 97u8, 107u8, 101u8, 84u8,
119u8, 111u8, 50u8, 53u8, 54u8, 0u8, 0u8, 0u8, 0u8, 1u8, 5u8, 8u8, 40u8, 115u8, 112u8, 95u8,
115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 60u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 104u8, 105u8, 112u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 0u8, 12u8, 1u8, 28u8, 115u8,
101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 16u8, 1u8, 48u8, 83u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 40u8, 116u8, 114u8, 105u8, 101u8, 95u8,
110u8, 111u8, 100u8, 101u8, 115u8, 141u8, 4u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 62u8, 0u8, 1u8, 60u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 56u8, 86u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 5u8, 5u8,
12u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8, 98u8, 101u8, 24u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8,
1u8, 12u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 69u8, 113u8, 117u8, 105u8, 118u8,
111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 0u8, 4u8,
49u8, 1u8, 65u8, 110u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8,
100u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8,
32u8, 97u8, 110u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 105u8, 115u8, 32u8, 105u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 75u8, 101u8, 121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 80u8,
114u8, 111u8, 111u8, 102u8, 0u8, 1u8, 4u8, 49u8, 1u8, 65u8, 32u8, 107u8, 101u8, 121u8, 32u8,
111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 112u8, 114u8, 111u8, 111u8,
102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8,
112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 101u8, 113u8, 117u8,
105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 111u8,
114u8, 116u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8,
88u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 79u8, 102u8, 102u8, 101u8,
110u8, 99u8, 101u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 0u8, 2u8, 4u8, 21u8, 1u8, 65u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 105u8,
115u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 98u8, 117u8, 116u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8,
108u8, 121u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8, 46u8, 4u8, 173u8,
1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 91u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 93u8,
40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8,
115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8,
51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8,
116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8,
10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 9u8, 5u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 24u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 4u8,
12u8, 115u8, 101u8, 116u8, 4u8, 1u8, 12u8, 110u8, 111u8, 119u8, 13u8, 5u8, 1u8, 36u8, 84u8, 58u8,
58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8, 64u8, 84u8, 83u8, 101u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 105u8,
109u8, 101u8, 46u8, 0u8, 85u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 118u8,
111u8, 107u8, 101u8, 100u8, 32u8, 101u8, 120u8, 97u8, 99u8, 116u8, 108u8, 121u8, 32u8, 111u8,
110u8, 99u8, 101u8, 32u8, 112u8, 101u8, 114u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 32u8,
73u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 112u8, 97u8, 110u8, 105u8, 99u8, 32u8, 97u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 212u8, 112u8, 104u8, 97u8, 115u8, 101u8, 44u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 104u8, 97u8, 115u8,
110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 105u8, 110u8, 118u8, 111u8, 107u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 105u8, 109u8,
101u8, 46u8, 0u8, 65u8, 1u8, 84u8, 104u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8,
97u8, 109u8, 112u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8,
103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 32u8, 111u8, 110u8,
101u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8,
64u8, 96u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 80u8, 101u8, 114u8, 105u8, 111u8,
100u8, 96u8, 46u8, 0u8, 212u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8,
32u8, 98u8, 101u8, 32u8, 96u8, 73u8, 110u8, 104u8, 101u8, 114u8, 101u8, 110u8, 116u8, 96u8, 46u8,
0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 49u8, 1u8, 45u8,
32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 32u8, 40u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 105u8, 109u8, 112u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 97u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 111u8, 102u8, 32u8, 96u8, 79u8, 110u8, 84u8, 105u8,
109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 83u8, 101u8, 116u8, 96u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 98u8, 101u8, 32u8, 96u8, 79u8, 40u8, 49u8,
41u8, 96u8, 41u8, 97u8, 1u8, 45u8, 32u8, 49u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 114u8, 101u8, 97u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 49u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 40u8, 99u8, 111u8, 100u8, 101u8, 99u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 41u8,
46u8, 32u8, 40u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 111u8, 102u8, 32u8, 96u8,
68u8, 105u8, 100u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 58u8, 58u8, 116u8, 97u8, 107u8,
101u8, 96u8, 32u8, 105u8, 110u8, 64u8, 32u8, 32u8, 96u8, 111u8, 110u8, 95u8, 102u8, 105u8, 110u8,
97u8, 108u8, 105u8, 122u8, 101u8, 96u8, 41u8, 212u8, 45u8, 32u8, 49u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 114u8, 32u8, 96u8, 111u8, 110u8,
95u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 95u8, 115u8, 101u8, 116u8,
96u8, 46u8, 32u8, 77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 96u8, 79u8, 40u8, 49u8,
41u8, 96u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8,
4u8, 37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8,
32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8,
115u8, 105u8, 99u8, 46u8, 13u8, 5u8, 0u8, 0u8, 6u8, 32u8, 0u8, 17u8, 5u8, 0u8, 0u8, 4u8, 12u8,
0u8, 24u8, 21u8, 1u8, 0u8, 21u8, 5u8, 12u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 20u8, 99u8, 108u8, 97u8, 105u8,
109u8, 4u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 60u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 72u8,
152u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 32u8, 97u8, 110u8, 32u8, 112u8, 114u8, 101u8,
118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 117u8, 110u8, 97u8, 115u8, 115u8, 105u8,
103u8, 110u8, 101u8, 100u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 0u8, 220u8, 80u8,
97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 58u8, 32u8, 96u8, 68u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8,
100u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 204u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8,
105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 46u8, 0u8, 240u8, 45u8, 32u8, 96u8, 105u8, 110u8, 100u8,
101u8, 120u8, 96u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 110u8, 111u8, 116u8,
32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 32u8, 117u8, 115u8, 101u8, 46u8, 0u8, 144u8, 69u8, 109u8,
105u8, 116u8, 115u8, 32u8, 96u8, 73u8, 110u8, 100u8, 101u8, 120u8, 65u8, 115u8, 115u8, 105u8,
103u8, 110u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8,
115u8, 115u8, 102u8, 117u8, 108u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 36u8, 45u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 46u8, 152u8, 45u8,
32u8, 79u8, 110u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8,
117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 99u8, 111u8, 100u8, 101u8, 99u8,
32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 41u8, 46u8, 96u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8,
114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8,
105u8, 111u8, 110u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 46u8, 76u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 144u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 49u8, 32u8, 82u8, 101u8, 97u8, 100u8, 47u8, 87u8, 114u8,
105u8, 116u8, 101u8, 32u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 41u8, 44u8,
35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 8u8, 1u8, 12u8, 110u8, 101u8, 119u8, 0u8, 1u8, 48u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 20u8, 105u8,
110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 80u8, 93u8, 1u8, 65u8, 115u8, 115u8,
105u8, 103u8, 110u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 116u8,
111u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 97u8, 116u8, 105u8, 111u8, 110u8, 184u8,
105u8, 115u8, 32u8, 101u8, 102u8, 102u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8,
32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 46u8, 0u8, 204u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 46u8,
0u8, 37u8, 1u8, 45u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 58u8, 32u8, 116u8,
104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 114u8, 101u8, 45u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 32u8,
84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 111u8,
119u8, 110u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8,
110u8, 100u8, 101u8, 114u8, 46u8, 93u8, 1u8, 45u8, 32u8, 96u8, 110u8, 101u8, 119u8, 96u8, 58u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 110u8, 111u8, 45u8, 111u8, 112u8, 32u8, 105u8, 102u8, 32u8,
105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 113u8, 117u8, 97u8, 108u8, 32u8, 116u8, 111u8,
32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 0u8, 144u8, 69u8, 109u8, 105u8, 116u8,
115u8, 32u8, 96u8, 73u8, 110u8, 100u8, 101u8, 120u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8,
102u8, 117u8, 108u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 36u8, 45u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 46u8, 152u8, 45u8, 32u8, 79u8, 110u8,
101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 117u8, 116u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 99u8, 111u8, 100u8, 101u8, 99u8, 32u8, 96u8, 79u8, 40u8,
49u8, 41u8, 96u8, 41u8, 46u8, 100u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 46u8,
76u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 48u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 58u8, 224u8, 32u8, 32u8, 32u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8,
73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 115u8, 44u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 40u8, 114u8, 101u8, 99u8, 105u8, 112u8, 105u8, 101u8, 110u8, 116u8,
41u8, 228u8, 32u8, 32u8, 32u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8,
73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 115u8, 44u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 40u8, 114u8, 101u8, 99u8, 105u8, 112u8, 105u8, 101u8, 110u8, 116u8,
41u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 16u8, 102u8,
114u8, 101u8, 101u8, 4u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 60u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8,
2u8, 72u8, 148u8, 70u8, 114u8, 101u8, 101u8, 32u8, 117u8, 112u8, 32u8, 97u8, 110u8, 32u8, 105u8,
110u8, 100u8, 101u8, 120u8, 32u8, 111u8, 119u8, 110u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 0u8, 93u8, 1u8, 80u8,
97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 58u8, 32u8, 65u8, 110u8, 121u8, 32u8, 112u8, 114u8,
101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 105u8, 115u8, 32u8, 117u8, 110u8, 114u8,
101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 0u8, 85u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8,
32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 111u8, 119u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8,
100u8, 101u8, 120u8, 46u8, 0u8, 13u8, 1u8, 45u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8,
96u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8,
111u8, 32u8, 98u8, 101u8, 32u8, 102u8, 114u8, 101u8, 101u8, 100u8, 46u8, 32u8, 84u8, 104u8,
105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 111u8, 119u8, 110u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8,
101u8, 114u8, 46u8, 0u8, 132u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 73u8, 110u8, 100u8,
101u8, 120u8, 70u8, 114u8, 101u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 115u8, 117u8,
99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 36u8, 45u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8,
46u8, 152u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 109u8, 117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 99u8, 111u8,
100u8, 101u8, 99u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 41u8, 46u8, 96u8, 45u8, 32u8, 79u8,
110u8, 101u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 111u8, 112u8, 101u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8,
118u8, 101u8, 110u8, 116u8, 46u8, 76u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 144u8, 45u8, 32u8, 68u8, 66u8, 32u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 49u8, 32u8, 82u8, 101u8, 97u8, 100u8, 47u8,
87u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
115u8, 41u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 56u8,
102u8, 111u8, 114u8, 99u8, 101u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
12u8, 1u8, 12u8, 110u8, 101u8, 119u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8,
60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8,
120u8, 0u8, 1u8, 24u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8,
111u8, 111u8, 108u8, 0u8, 3u8, 84u8, 85u8, 1u8, 70u8, 111u8, 114u8, 99u8, 101u8, 32u8, 97u8,
110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 100u8,
111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
32u8, 97u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 46u8, 32u8, 73u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 232u8, 104u8, 101u8, 108u8, 100u8, 44u8, 32u8, 116u8,
104u8, 101u8, 110u8, 32u8, 97u8, 110u8, 121u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 105u8, 109u8, 98u8, 117u8, 114u8, 115u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8, 115u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 46u8, 0u8, 196u8, 84u8, 104u8, 101u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 82u8, 111u8,
111u8, 116u8, 95u8, 46u8, 0u8, 164u8, 45u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8,
58u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 40u8, 114u8, 101u8, 45u8, 41u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 46u8, 93u8, 1u8, 45u8, 32u8, 96u8, 110u8, 101u8, 119u8, 96u8, 58u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 32u8, 84u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 97u8, 32u8, 110u8, 111u8, 45u8, 111u8, 112u8, 32u8, 105u8, 102u8, 32u8, 105u8,
116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 113u8, 117u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8,
115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 65u8, 1u8, 45u8, 32u8, 96u8, 102u8, 114u8, 101u8,
101u8, 122u8, 101u8, 96u8, 58u8, 32u8, 105u8, 102u8, 32u8, 115u8, 101u8, 116u8, 32u8, 116u8,
111u8, 32u8, 96u8, 116u8, 114u8, 117u8, 101u8, 96u8, 44u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8,
100u8, 101u8, 120u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 110u8,
111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
114u8, 101u8, 100u8, 46u8, 0u8, 144u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 73u8, 110u8,
100u8, 101u8, 120u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 96u8, 32u8, 105u8,
102u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 46u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 36u8, 45u8, 32u8, 96u8, 79u8,
40u8, 49u8, 41u8, 96u8, 46u8, 152u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
40u8, 99u8, 111u8, 100u8, 101u8, 99u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 41u8, 46u8,
120u8, 45u8, 32u8, 85u8, 112u8, 32u8, 116u8, 111u8, 32u8, 111u8, 110u8, 101u8, 32u8, 114u8,
101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8,
116u8, 46u8, 76u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 58u8, 244u8, 32u8, 32u8, 32u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8,
58u8, 32u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 115u8, 44u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 40u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 97u8, 108u8,
32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 41u8, 248u8, 32u8, 32u8, 32u8, 45u8, 32u8, 87u8, 114u8,
105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 44u8, 32u8, 83u8, 121u8, 115u8, 116u8,
101u8, 109u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 40u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 97u8, 108u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 41u8, 44u8,
35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 24u8, 102u8, 114u8,
101u8, 101u8, 122u8, 101u8, 4u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 60u8,
84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8,
0u8, 4u8, 72u8, 65u8, 1u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 97u8, 110u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 97u8, 108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 112u8, 111u8, 105u8, 110u8,
116u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8,
114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 46u8, 0u8, 89u8, 1u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8,
110u8, 101u8, 100u8, 95u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
105u8, 103u8, 110u8, 105u8, 110u8, 103u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 108u8, 110u8,
111u8, 110u8, 45u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 46u8, 0u8, 172u8, 45u8,
32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 102u8, 114u8,
111u8, 122u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 46u8, 0u8,
136u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 73u8, 110u8, 100u8, 101u8, 120u8, 70u8,
114u8, 111u8, 122u8, 101u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 115u8, 117u8, 99u8, 99u8,
101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 36u8, 45u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 46u8, 152u8,
45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
109u8, 117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 40u8, 99u8, 111u8, 100u8, 101u8,
99u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 41u8, 46u8, 112u8, 45u8, 32u8, 85u8, 112u8, 32u8,
116u8, 111u8, 32u8, 111u8, 110u8, 101u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 32u8, 111u8,
112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8,
101u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 46u8, 76u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 144u8, 45u8, 32u8,
68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 49u8, 32u8, 82u8, 101u8,
97u8, 100u8, 47u8, 87u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 115u8, 41u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 4u8, 37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8,
110u8, 101u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8,
105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 25u8, 5u8, 12u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 24u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 44u8, 78u8,
111u8, 116u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 0u8, 0u8, 4u8, 140u8, 84u8,
104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 97u8, 115u8, 115u8,
105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 32u8, 78u8, 111u8, 116u8, 79u8, 119u8, 110u8, 101u8,
114u8, 0u8, 1u8, 4u8, 164u8, 84u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8,
105u8, 115u8, 32u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 46u8, 20u8, 73u8, 110u8, 85u8, 115u8, 101u8, 0u8, 2u8, 4u8, 112u8, 84u8, 104u8,
101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 46u8, 44u8, 78u8, 111u8,
116u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 0u8, 3u8, 4u8, 200u8, 84u8, 104u8,
101u8, 32u8, 115u8, 111u8, 117u8, 114u8, 99u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 100u8,
101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 99u8, 97u8, 108u8, 46u8, 36u8, 80u8, 101u8, 114u8, 109u8, 97u8, 110u8, 101u8,
110u8, 116u8, 0u8, 4u8, 4u8, 208u8, 84u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
32u8, 105u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 97u8, 110u8, 101u8, 110u8, 116u8, 32u8,
97u8, 110u8, 100u8, 32u8, 109u8, 97u8, 121u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8,
102u8, 114u8, 101u8, 101u8, 100u8, 47u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 46u8,
4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 91u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8,
93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8,
115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8,
51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8,
116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8,
10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 29u8, 5u8, 0u8, 0u8, 2u8, 33u8, 5u8, 0u8, 33u8,
5u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 115u8, 104u8, 105u8, 112u8, 56u8, 85u8, 110u8, 99u8, 108u8, 101u8, 69u8, 110u8, 116u8,
114u8, 121u8, 73u8, 116u8, 101u8, 109u8, 12u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8,
117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 16u8, 72u8, 97u8, 115u8, 104u8, 1u8, 36u8, 24u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 1u8, 0u8, 1u8, 8u8, 60u8, 73u8, 110u8, 99u8, 108u8,
117u8, 115u8, 105u8, 111u8, 110u8, 72u8, 101u8, 105u8, 103u8, 104u8, 116u8, 4u8, 0u8, 16u8, 1u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 0u8, 0u8,
20u8, 85u8, 110u8, 99u8, 108u8, 101u8, 8u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8,
0u8, 5u8, 1u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 62u8, 0u8, 1u8, 0u8, 0u8, 37u8, 5u8, 12u8, 68u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8, 24u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8,
1u8, 4u8, 40u8, 115u8, 101u8, 116u8, 95u8, 117u8, 110u8, 99u8, 108u8, 101u8, 115u8, 4u8, 1u8,
40u8, 110u8, 101u8, 119u8, 95u8, 117u8, 110u8, 99u8, 108u8, 101u8, 115u8, 41u8, 5u8, 1u8, 56u8,
86u8, 101u8, 99u8, 60u8, 84u8, 58u8, 58u8, 72u8, 101u8, 97u8, 100u8, 101u8, 114u8, 62u8, 0u8,
0u8, 4u8, 96u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 32u8, 97u8, 32u8, 115u8, 101u8,
116u8, 32u8, 111u8, 102u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 115u8, 46u8, 4u8, 37u8, 1u8,
67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
46u8, 41u8, 5u8, 0u8, 0u8, 2u8, 249u8, 4u8, 0u8, 45u8, 5u8, 12u8, 68u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8,
24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8,
84u8, 0u8, 1u8, 28u8, 72u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 85u8, 110u8, 99u8,
108u8, 101u8, 80u8, 97u8, 114u8, 101u8, 110u8, 116u8, 0u8, 0u8, 4u8, 136u8, 84u8, 104u8, 101u8,
32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 32u8, 112u8, 97u8, 114u8, 101u8, 110u8, 116u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8,
105u8, 110u8, 46u8, 64u8, 85u8, 110u8, 99u8, 108u8, 101u8, 115u8, 65u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 83u8, 101u8, 116u8, 0u8, 1u8, 4u8, 128u8, 85u8, 110u8, 99u8, 108u8, 101u8,
115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 115u8, 101u8, 116u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 52u8, 84u8,
111u8, 111u8, 77u8, 97u8, 110u8, 121u8, 85u8, 110u8, 99u8, 108u8, 101u8, 115u8, 0u8, 2u8, 4u8,
64u8, 84u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 117u8, 110u8, 99u8, 108u8,
101u8, 115u8, 46u8, 48u8, 71u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 85u8, 110u8, 99u8,
108u8, 101u8, 0u8, 3u8, 4u8, 84u8, 84u8, 104u8, 101u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8,
32u8, 105u8, 115u8, 32u8, 103u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 46u8, 48u8, 84u8,
111u8, 111u8, 72u8, 105u8, 103u8, 104u8, 85u8, 110u8, 99u8, 108u8, 101u8, 0u8, 4u8, 4u8, 124u8,
84u8, 104u8, 101u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8,
111u8, 111u8, 32u8, 104u8, 105u8, 103u8, 104u8, 32u8, 105u8, 110u8, 32u8, 99u8, 104u8, 97u8,
105u8, 110u8, 46u8, 80u8, 85u8, 110u8, 99u8, 108u8, 101u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 73u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 0u8, 5u8, 4u8, 120u8, 84u8,
104u8, 101u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8,
46u8, 32u8, 79u8, 108u8, 100u8, 85u8, 110u8, 99u8, 108u8, 101u8, 0u8, 6u8, 4u8, 180u8, 84u8,
104u8, 101u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8,
32u8, 114u8, 101u8, 99u8, 101u8, 110u8, 116u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
100u8, 46u8, 4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
91u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8,
99u8, 115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8,
111u8, 47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8,
118u8, 101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 41u8, 10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 49u8, 5u8, 0u8, 0u8, 2u8,
53u8, 5u8, 0u8, 53u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 44u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 76u8,
111u8, 99u8, 107u8, 4u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 12u8,
1u8, 8u8, 105u8, 100u8, 185u8, 4u8, 1u8, 56u8, 76u8, 111u8, 99u8, 107u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 28u8,
114u8, 101u8, 97u8, 115u8, 111u8, 110u8, 115u8, 57u8, 5u8, 1u8, 28u8, 82u8, 101u8, 97u8, 115u8,
111u8, 110u8, 115u8, 0u8, 0u8, 57u8, 5u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8,
105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 28u8, 82u8, 101u8, 97u8, 115u8, 111u8, 110u8,
115u8, 0u8, 1u8, 12u8, 12u8, 70u8, 101u8, 101u8, 0u8, 0u8, 0u8, 16u8, 77u8, 105u8, 115u8, 99u8,
0u8, 1u8, 0u8, 12u8, 65u8, 108u8, 108u8, 0u8, 2u8, 0u8, 0u8, 61u8, 5u8, 8u8, 60u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 16u8, 67u8,
97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 8u8, 1u8, 16u8, 100u8, 101u8, 115u8, 116u8, 65u8, 5u8, 1u8, 140u8, 60u8,
84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8,
97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8,
117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 88u8, 212u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 108u8, 105u8, 113u8,
117u8, 105u8, 100u8, 32u8, 102u8, 114u8, 101u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 5u8, 1u8, 96u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 115u8, 101u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 70u8, 114u8, 101u8, 101u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8,
110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8,
118u8, 101u8, 114u8, 46u8, 29u8, 1u8, 73u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 100u8,
101u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8,
116u8, 97u8, 108u8, 32u8, 105u8, 115u8, 115u8, 117u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 70u8, 101u8, 101u8, 96u8, 46u8, 0u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 96u8, 83u8, 105u8, 103u8, 110u8, 101u8,
100u8, 96u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 111u8, 114u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 45u8, 1u8, 45u8, 32u8, 68u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8,
110u8, 116u8, 32u8, 111u8, 110u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 32u8, 98u8, 117u8, 116u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 114u8, 105u8, 116u8,
105u8, 99u8, 97u8, 108u8, 44u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8, 114u8,
111u8, 112u8, 101u8, 114u8, 32u8, 105u8, 109u8, 112u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8,
97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8, 111u8, 114u8, 200u8, 32u8, 32u8, 105u8,
110u8, 112u8, 117u8, 116u8, 32u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 32u8, 116u8, 121u8,
112u8, 101u8, 115u8, 46u8, 32u8, 83u8, 101u8, 101u8, 32u8, 114u8, 101u8, 108u8, 97u8, 116u8,
101u8, 100u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 98u8,
101u8, 108u8, 111u8, 119u8, 46u8, 101u8, 1u8, 45u8, 32u8, 73u8, 116u8, 32u8, 99u8, 111u8, 110u8,
116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8,
100u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8,
97u8, 100u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 115u8,
32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 108u8, 121u8, 32u8, 97u8, 110u8,
100u8, 32u8, 110u8, 111u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 32u8, 99u8,
111u8, 109u8, 112u8, 117u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 72u8, 82u8,
101u8, 108u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 58u8, 0u8, 77u8, 1u8, 32u8, 32u8, 45u8, 32u8, 96u8, 101u8, 110u8, 115u8, 117u8,
114u8, 101u8, 95u8, 99u8, 97u8, 110u8, 95u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8,
119u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 108u8,
121u8, 32u8, 98u8, 117u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 32u8, 98u8, 111u8, 117u8,
110u8, 100u8, 101u8, 100u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8,
121u8, 46u8, 41u8, 1u8, 32u8, 32u8, 45u8, 32u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 114u8, 105u8, 110u8, 103u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8,
32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 100u8, 105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 99u8, 97u8, 117u8, 115u8, 101u8, 208u8, 32u8, 32u8, 32u8, 32u8, 32u8, 96u8, 84u8,
58u8, 58u8, 79u8, 110u8, 78u8, 101u8, 119u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 58u8,
58u8, 111u8, 110u8, 95u8, 110u8, 101u8, 119u8, 95u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
46u8, 132u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 65u8, 1u8, 45u8, 32u8, 66u8, 97u8, 115u8, 101u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 58u8, 32u8, 55u8, 51u8, 46u8, 54u8, 52u8, 32u8, 194u8, 181u8, 115u8, 44u8,
32u8, 119u8, 111u8, 114u8, 115u8, 116u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 115u8, 99u8,
101u8, 110u8, 97u8, 114u8, 105u8, 111u8, 32u8, 40u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 44u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 41u8, 220u8, 45u8,
32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 49u8, 32u8, 82u8,
101u8, 97u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 49u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8,
32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 17u8, 1u8, 45u8, 32u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 105u8, 110u8, 32u8,
109u8, 101u8, 109u8, 111u8, 114u8, 121u8, 44u8, 32u8, 115u8, 111u8, 32u8, 110u8, 111u8, 32u8,
68u8, 66u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 109u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 72u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 109u8, 101u8, 109u8, 111u8, 12u8, 1u8, 16u8,
100u8, 101u8, 115u8, 116u8, 65u8, 5u8, 1u8, 140u8, 60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8,
107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8,
111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 1u8,
20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 1u8, 16u8, 109u8, 101u8, 109u8, 111u8, 124u8, 1u8, 48u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 77u8, 101u8, 109u8, 111u8, 62u8, 0u8, 1u8, 32u8, 252u8, 84u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 97u8, 116u8,
105u8, 118u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 104u8, 101u8, 108u8, 112u8, 32u8, 111u8,
102u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 32u8, 115u8,
116u8, 114u8, 105u8, 110u8, 103u8, 236u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8,
99u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 32u8, 99u8, 97u8, 110u8,
32u8, 104u8, 101u8, 108u8, 112u8, 32u8, 116u8, 111u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8,
114u8, 101u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 65u8, 1u8, 45u8, 32u8, 66u8, 97u8, 115u8, 101u8, 32u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 55u8, 51u8, 46u8, 54u8, 52u8, 32u8, 194u8,
181u8, 115u8, 44u8, 32u8, 119u8, 111u8, 114u8, 115u8, 116u8, 32u8, 99u8, 97u8, 115u8, 101u8,
32u8, 115u8, 99u8, 101u8, 110u8, 97u8, 114u8, 105u8, 111u8, 32u8, 40u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 44u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 41u8,
220u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 49u8,
32u8, 82u8, 101u8, 97u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 49u8, 32u8, 87u8, 114u8, 105u8,
116u8, 101u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 17u8, 1u8, 45u8,
32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 105u8,
110u8, 32u8, 109u8, 101u8, 109u8, 111u8, 114u8, 121u8, 44u8, 32u8, 115u8, 111u8, 32u8, 110u8,
111u8, 32u8, 68u8, 66u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 109u8, 46u8, 44u8, 35u8, 32u8, 60u8,
47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 144u8, 100u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 95u8, 98u8, 108u8, 111u8, 99u8, 107u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8,
100u8, 95u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 95u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 4u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 2u8, 4u8, 220u8, 77u8, 111u8, 118u8, 101u8,
32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 115u8, 101u8,
108u8, 102u8, 32u8, 116u8, 111u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8,
102u8, 32u8, 66u8, 82u8, 82u8, 46u8, 44u8, 115u8, 101u8, 116u8, 95u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 12u8, 1u8, 12u8, 119u8, 104u8, 111u8, 65u8, 5u8, 1u8, 140u8, 60u8, 84u8,
58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8, 97u8,
116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8,
117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 32u8, 110u8, 101u8, 119u8, 95u8, 102u8, 114u8, 101u8, 101u8,
201u8, 1u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 48u8, 110u8, 101u8,
119u8, 95u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 201u8, 1u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 3u8, 24u8, 144u8, 83u8, 101u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8,
97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 0u8, 29u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
97u8, 108u8, 116u8, 101u8, 114u8, 32u8, 96u8, 70u8, 114u8, 101u8, 101u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 114u8,
118u8, 101u8, 100u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 110u8, 32u8,
115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8,
108u8, 108u8, 5u8, 1u8, 97u8, 108u8, 115u8, 111u8, 32u8, 100u8, 101u8, 99u8, 114u8, 101u8, 97u8,
115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 105u8,
115u8, 115u8, 117u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 40u8, 96u8, 84u8, 111u8, 116u8, 97u8,
108u8, 73u8, 115u8, 115u8, 117u8, 97u8, 110u8, 99u8, 101u8, 96u8, 41u8, 46u8, 0u8, 176u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 105u8, 115u8, 32u8, 96u8, 114u8, 111u8, 111u8, 116u8, 96u8, 46u8,
56u8, 102u8, 111u8, 114u8, 99u8, 101u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 12u8, 1u8, 24u8, 115u8, 111u8, 117u8, 114u8, 99u8, 101u8, 65u8, 5u8, 1u8, 140u8, 60u8,
84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8,
97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8,
117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 16u8, 100u8, 101u8, 115u8, 116u8, 65u8, 5u8, 1u8, 140u8,
60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8,
116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8,
111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8,
1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 4u8, 28u8, 77u8, 1u8, 69u8, 120u8,
97u8, 99u8, 116u8, 108u8, 121u8, 32u8, 97u8, 115u8, 32u8, 96u8, 116u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 96u8, 44u8, 32u8, 101u8, 120u8, 99u8, 101u8, 112u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8,
32u8, 98u8, 101u8, 32u8, 114u8, 111u8, 111u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 111u8, 117u8, 114u8, 99u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 40u8, 115u8, 112u8, 101u8,
99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 61u8, 1u8, 45u8, 32u8, 83u8, 97u8, 109u8, 101u8, 32u8, 97u8, 115u8,
32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 44u8, 32u8, 98u8, 117u8, 116u8,
32u8, 97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 114u8, 101u8,
97u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 32u8, 98u8,
101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 111u8, 117u8,
114u8, 99u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 115u8,
140u8, 32u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 115u8, 115u8, 117u8, 109u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
111u8, 118u8, 101u8, 114u8, 108u8, 97u8, 121u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 80u8, 98u8, 117u8, 114u8, 110u8, 95u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 4u8, 1u8, 24u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 5u8, 4u8, 41u8, 1u8, 66u8, 117u8, 114u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 102u8,
114u8, 101u8, 101u8, 44u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8,
85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8,
97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 65u8, 5u8, 12u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 48u8, 109u8, 117u8, 108u8, 116u8, 105u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
48u8, 77u8, 117u8, 108u8, 116u8, 105u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 8u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 48u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 1u8, 16u8, 1u8, 20u8, 8u8,
73u8, 100u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
0u8, 0u8, 0u8, 20u8, 73u8, 110u8, 100u8, 101u8, 120u8, 4u8, 0u8, 121u8, 4u8, 1u8, 48u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 0u8, 12u8,
82u8, 97u8, 119u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8,
2u8, 0u8, 36u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 51u8, 50u8, 4u8, 0u8, 4u8, 1u8,
32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 51u8, 50u8, 93u8, 0u8, 3u8, 0u8, 36u8, 65u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 50u8, 48u8, 4u8, 0u8, 245u8, 1u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8,
32u8, 50u8, 48u8, 93u8, 0u8, 4u8, 0u8, 0u8, 69u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 20u8, 69u8, 114u8, 114u8,
111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 84u8, 76u8, 105u8, 113u8, 117u8, 105u8, 100u8,
105u8, 116u8, 121u8, 82u8, 101u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8,
115u8, 0u8, 0u8, 4u8, 196u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 108u8, 105u8,
113u8, 117u8, 105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 114u8, 101u8, 115u8, 116u8, 114u8, 105u8,
99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 112u8, 114u8, 101u8, 118u8, 101u8, 110u8, 116u8,
32u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 97u8, 108u8, 32u8, 79u8, 118u8,
101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 1u8, 4u8, 112u8, 71u8, 111u8, 116u8, 32u8, 97u8,
110u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 32u8, 97u8, 102u8, 116u8,
101u8, 114u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8, 103u8, 76u8, 73u8, 110u8, 115u8, 117u8,
102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 2u8, 4u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8,
111u8, 32u8, 108u8, 111u8, 119u8, 32u8, 116u8, 111u8, 32u8, 115u8, 101u8, 110u8, 100u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 72u8, 69u8, 120u8, 105u8, 115u8, 116u8, 101u8, 110u8, 116u8,
105u8, 97u8, 108u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 0u8, 3u8, 4u8, 232u8, 86u8,
97u8, 108u8, 117u8, 101u8, 32u8, 116u8, 111u8, 111u8, 32u8, 108u8, 111u8, 119u8, 32u8, 116u8,
111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 100u8, 117u8, 101u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
72u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 67u8, 100u8, 100u8, 77u8, 105u8,
115u8, 115u8, 105u8, 110u8, 103u8, 0u8, 4u8, 4u8, 136u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8,
101u8, 114u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8, 97u8,
118u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 0u8,
73u8, 5u8, 12u8, 52u8, 115u8, 112u8, 95u8, 97u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8,
105u8, 99u8, 44u8, 102u8, 105u8, 120u8, 101u8, 100u8, 95u8, 112u8, 111u8, 105u8, 110u8, 116u8,
36u8, 70u8, 105u8, 120u8, 101u8, 100u8, 85u8, 49u8, 50u8, 56u8, 0u8, 0u8, 4u8, 0u8, 24u8, 1u8,
16u8, 117u8, 49u8, 50u8, 56u8, 0u8, 0u8, 77u8, 5u8, 8u8, 104u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8,
112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8,
101u8, 115u8, 0u8, 1u8, 8u8, 36u8, 86u8, 49u8, 65u8, 110u8, 99u8, 105u8, 101u8, 110u8, 116u8,
0u8, 0u8, 0u8, 8u8, 86u8, 50u8, 0u8, 1u8, 0u8, 0u8, 81u8, 5u8, 0u8, 0u8, 2u8, 85u8, 5u8, 0u8,
85u8, 5u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8,
114u8, 116u8, 28u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 88u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 84u8, 111u8, 70u8, 101u8, 101u8, 67u8, 111u8, 101u8, 102u8, 102u8, 105u8,
99u8, 105u8, 101u8, 110u8, 116u8, 4u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8,
24u8, 0u8, 16u8, 1u8, 52u8, 99u8, 111u8, 101u8, 102u8, 102u8, 95u8, 105u8, 110u8, 116u8, 101u8,
103u8, 101u8, 114u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8,
40u8, 99u8, 111u8, 101u8, 102u8, 102u8, 95u8, 102u8, 114u8, 97u8, 99u8, 137u8, 1u8, 1u8, 28u8,
80u8, 101u8, 114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 1u8, 32u8, 110u8, 101u8, 103u8, 97u8, 116u8,
105u8, 118u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 24u8, 100u8,
101u8, 103u8, 114u8, 101u8, 101u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 89u8, 5u8, 12u8, 76u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8,
116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
36u8, 68u8, 105u8, 100u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 4u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 4u8, 1u8, 44u8, 112u8, 114u8, 105u8,
109u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 5u8, 1u8, 1u8, 68u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8,
0u8, 93u8, 5u8, 0u8, 0u8, 4u8, 8u8, 97u8, 5u8, 101u8, 5u8, 0u8, 97u8, 5u8, 12u8, 60u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
20u8, 116u8, 121u8, 112u8, 101u8, 115u8, 44u8, 67u8, 108u8, 97u8, 105u8, 109u8, 49u8, 115u8,
116u8, 75u8, 101u8, 121u8, 0u8, 0u8, 8u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8,
40u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 116u8, 121u8, 112u8, 101u8, 201u8, 2u8, 1u8, 36u8,
67u8, 108u8, 97u8, 105u8, 109u8, 84u8, 121u8, 112u8, 101u8, 0u8, 0u8, 101u8, 5u8, 12u8, 60u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 20u8, 116u8, 121u8, 112u8, 101u8, 115u8, 44u8, 67u8, 108u8, 97u8, 105u8, 109u8, 50u8,
110u8, 100u8, 75u8, 101u8, 121u8, 0u8, 0u8, 8u8, 1u8, 24u8, 105u8, 115u8, 115u8, 117u8, 101u8,
114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
1u8, 20u8, 115u8, 99u8, 111u8, 112u8, 101u8, 105u8, 5u8, 1u8, 52u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 60u8, 83u8, 99u8, 111u8, 112u8, 101u8, 62u8, 0u8, 0u8, 105u8, 5u8, 4u8, 24u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 248u8, 1u8, 8u8, 16u8, 78u8, 111u8,
110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 248u8, 0u8, 0u8, 1u8,
0u8, 0u8, 109u8, 5u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 36u8, 75u8, 101u8, 121u8,
82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 40u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8,
101u8, 121u8, 4u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 0u8, 0u8, 48u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8,
75u8, 101u8, 121u8, 8u8, 0u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 0u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 0u8, 68u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8,
103u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 75u8, 101u8, 121u8, 4u8, 0u8, 0u8, 1u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 2u8, 0u8, 0u8, 113u8, 5u8, 0u8,
0u8, 4u8, 8u8, 120u8, 0u8, 0u8, 117u8, 5u8, 0u8, 0u8, 4u8, 8u8, 105u8, 1u8, 32u8, 0u8, 121u8,
5u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8,
105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 52u8, 65u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 1u8, 32u8,
0u8, 20u8, 1u8, 72u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 95u8, 100u8, 97u8, 116u8, 97u8, 9u8, 1u8, 1u8, 112u8, 65u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 68u8, 97u8, 116u8, 97u8, 60u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 52u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 95u8, 98u8, 121u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 28u8, 97u8, 117u8, 116u8, 104u8, 95u8,
105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 20u8, 99u8, 111u8, 117u8, 110u8,
116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 125u8, 5u8, 0u8, 0u8, 4u8, 8u8, 120u8, 32u8,
0u8, 129u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8,
0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 133u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 16u8, 67u8,
97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 100u8, 64u8, 99u8, 100u8, 100u8, 95u8, 114u8,
101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 95u8, 100u8, 105u8, 100u8, 8u8, 1u8, 56u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
56u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8,
115u8, 140u8, 1u8, 124u8, 86u8, 101u8, 99u8, 60u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 75u8, 101u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 0u8, 44u8, 184u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8,
101u8, 114u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 110u8, 101u8,
119u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 36u8, 35u8, 32u8,
70u8, 97u8, 105u8, 108u8, 117u8, 114u8, 101u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
97u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8, 110u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
114u8, 115u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 97u8, 100u8, 100u8, 32u8,
110u8, 101u8, 119u8, 28u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 46u8, 93u8, 1u8, 45u8, 32u8,
96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 40u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 41u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8,
101u8, 32u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 106u8, 117u8,
115u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 111u8, 110u8, 108u8,
121u8, 52u8, 111u8, 110u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 244u8, 45u8, 32u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8,
99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 106u8, 117u8, 115u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 192u8, 96u8, 55u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8,
48u8, 48u8, 32u8, 43u8, 32u8, 54u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 42u8, 32u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 46u8,
108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 84u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 101u8, 95u8, 99u8, 100u8, 100u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 12u8,
1u8, 12u8, 99u8, 100u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 1u8, 48u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 95u8, 102u8,
114u8, 111u8, 109u8, 32u8, 1u8, 36u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8,
1u8, 16u8, 33u8, 1u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 115u8,
32u8, 97u8, 110u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 103u8, 101u8, 110u8,
101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 100u8, 100u8, 96u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8,
95u8, 102u8, 114u8, 111u8, 109u8, 96u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8,
109u8, 112u8, 115u8, 46u8, 0u8, 156u8, 89u8, 111u8, 117u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8,
108u8, 115u8, 111u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 32u8, 97u8, 110u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 105u8, 109u8,
101u8, 44u8, 109u8, 1u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 97u8, 108u8,
108u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8,
97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 99u8,
100u8, 100u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
32u8, 105u8, 116u8, 32u8, 97u8, 115u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 100u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8,
101u8, 121u8, 115u8, 95u8, 111u8, 108u8, 100u8, 4u8, 1u8, 56u8, 107u8, 101u8, 121u8, 115u8, 95u8,
116u8, 111u8, 95u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 101u8, 1u8, 1u8, 112u8, 86u8,
101u8, 99u8, 60u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8, 58u8,
58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 2u8, 4u8,
192u8, 68u8, 101u8, 112u8, 114u8, 101u8, 99u8, 97u8, 116u8, 101u8, 100u8, 46u8, 32u8, 85u8,
115u8, 101u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 96u8, 32u8, 105u8,
110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 46u8, 72u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 95u8,
112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 8u8, 1u8, 64u8, 114u8,
111u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8,
100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 80u8, 111u8, 112u8, 116u8, 105u8, 111u8,
110u8, 97u8, 108u8, 95u8, 99u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8,
100u8, 240u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 54u8, 52u8, 62u8,
0u8, 3u8, 52u8, 101u8, 1u8, 67u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 46u8, 32u8, 66u8, 121u8,
32u8, 105u8, 110u8, 118u8, 111u8, 107u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 44u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 115u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 101u8, 1u8, 116u8, 111u8, 32u8,
98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 115u8, 115u8, 117u8, 105u8, 110u8, 103u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 32u8, 73u8, 102u8, 32u8, 97u8,
32u8, 67u8, 68u8, 68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8,
100u8, 37u8, 1u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8,
40u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 41u8, 44u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8,
116u8, 101u8, 100u8, 46u8, 0u8, 93u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 40u8, 110u8, 101u8, 119u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 41u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8,
32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 105u8, 115u8, 115u8, 117u8, 105u8, 110u8, 103u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 111u8, 114u8, 100u8, 117u8, 110u8, 108u8, 105u8,
110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 121u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 93u8, 1u8, 68u8, 105u8, 102u8, 102u8, 101u8,
114u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 114u8, 111u8, 116u8, 97u8, 116u8, 101u8,
95u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 95u8, 116u8,
111u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 105u8, 110u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
117u8, 110u8, 108u8, 105u8, 110u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 108u8, 100u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 164u8, 105u8,
110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8, 111u8, 102u8, 32u8, 108u8, 101u8, 97u8, 118u8,
105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 29u8, 1u8, 42u8, 32u8, 96u8, 111u8,
119u8, 110u8, 101u8, 114u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8,
32u8, 119u8, 104u8, 111u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 228u8, 42u8, 32u8, 96u8,
99u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 65u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8, 99u8,
101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 152u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 95u8, 99u8, 100u8, 100u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 102u8, 111u8, 114u8, 95u8, 109u8, 107u8, 95u8, 114u8,
111u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 4u8, 1u8, 52u8, 97u8, 117u8, 116u8, 104u8, 95u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8,
108u8, 0u8, 4u8, 20u8, 53u8, 1u8, 83u8, 101u8, 116u8, 32u8, 105u8, 102u8, 32u8, 67u8, 68u8, 68u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8, 114u8,
105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 97u8,
110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 120u8, 67u8, 97u8,
108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 118u8, 105u8, 97u8, 32u8, 114u8, 111u8, 111u8,
116u8, 32u8, 40u8, 103u8, 111u8, 118u8, 101u8, 114u8, 110u8, 97u8, 110u8, 99u8, 101u8, 41u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 204u8, 42u8,
32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
100u8, 96u8, 32u8, 67u8, 68u8, 68u8, 32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8,
32u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 80u8, 106u8, 111u8, 105u8, 110u8, 95u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 97u8, 115u8, 95u8, 107u8, 101u8, 121u8,
4u8, 1u8, 28u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8,
52u8, 0u8, 5u8, 4u8, 144u8, 74u8, 111u8, 105u8, 110u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 46u8, 84u8, 108u8,
101u8, 97u8, 118u8, 101u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8,
97u8, 115u8, 95u8, 107u8, 101u8, 121u8, 0u8, 6u8, 4u8, 140u8, 76u8, 101u8, 97u8, 118u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8,
32u8, 107u8, 101u8, 121u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 46u8, 36u8, 97u8, 100u8, 100u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 12u8, 1u8, 24u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 20u8, 99u8, 108u8, 97u8, 105u8, 109u8, 244u8, 1u8,
20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8,
240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 7u8, 12u8, 196u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8,
32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 114u8, 101u8, 99u8,
111u8, 114u8, 100u8, 32u8, 111u8, 114u8, 32u8, 101u8, 100u8, 105u8, 116u8, 115u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 111u8, 110u8, 101u8,
46u8, 0u8, 168u8, 79u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 100u8, 105u8, 100u8, 95u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 39u8,
115u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 46u8, 48u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 95u8, 99u8, 108u8, 97u8, 105u8,
109u8, 8u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 20u8, 99u8, 108u8, 97u8, 105u8,
109u8, 244u8, 1u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 8u8, 4u8, 148u8, 77u8, 97u8,
114u8, 107u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 97u8, 115u8, 32u8, 114u8,
101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 46u8, 96u8, 115u8, 101u8, 116u8, 95u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 116u8, 111u8, 95u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 8u8, 1u8, 12u8, 107u8, 101u8, 121u8, 105u8, 1u8, 1u8, 92u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 20u8, 112u8, 101u8, 114u8, 109u8, 115u8,
148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
0u8, 9u8, 4u8, 224u8, 68u8, 101u8, 112u8, 114u8, 101u8, 99u8, 97u8, 116u8, 101u8, 100u8, 46u8,
32u8, 85u8, 115u8, 101u8, 32u8, 96u8, 115u8, 101u8, 116u8, 95u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 95u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 96u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8,
97u8, 100u8, 46u8, 172u8, 112u8, 108u8, 97u8, 99u8, 101u8, 104u8, 111u8, 108u8, 100u8, 101u8,
114u8, 95u8, 108u8, 101u8, 103u8, 97u8, 99u8, 121u8, 95u8, 115u8, 101u8, 116u8, 95u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 116u8, 111u8, 95u8, 115u8,
105u8, 103u8, 110u8, 101u8, 114u8, 0u8, 10u8, 4u8, 232u8, 80u8, 108u8, 97u8, 99u8, 101u8, 104u8,
111u8, 108u8, 100u8, 101u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 32u8, 96u8, 108u8, 101u8, 103u8, 97u8, 99u8, 121u8, 95u8, 115u8, 101u8,
116u8, 95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 116u8,
111u8, 95u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 96u8, 46u8, 84u8, 102u8, 114u8, 101u8,
101u8, 122u8, 101u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8,
107u8, 101u8, 121u8, 115u8, 0u8, 11u8, 16u8, 196u8, 73u8, 116u8, 32u8, 100u8, 105u8, 115u8, 97u8,
98u8, 108u8, 101u8, 115u8, 32u8, 97u8, 108u8, 108u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8,
100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 97u8, 116u8, 32u8, 96u8,
100u8, 105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8,
0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 0u8, 92u8, 117u8, 110u8, 102u8,
114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 0u8, 12u8, 4u8, 220u8, 82u8, 101u8, 45u8, 101u8, 110u8,
97u8, 98u8, 108u8, 101u8, 115u8, 32u8, 97u8, 108u8, 108u8, 32u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 68u8, 97u8, 100u8, 100u8, 95u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 12u8, 1u8,
24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 105u8, 1u8, 1u8, 92u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8, 9u8, 1u8, 1u8, 124u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 68u8, 97u8,
116u8, 97u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
62u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
62u8, 0u8, 13u8, 4u8, 88u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 80u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 12u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
105u8, 1u8, 1u8, 92u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 28u8,
97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8,
68u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 95u8,
112u8, 97u8, 121u8, 115u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 14u8, 8u8,
100u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 117u8, 1u8,
95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 95u8, 112u8,
97u8, 121u8, 115u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 115u8,
32u8, 119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8,
115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 115u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8,
97u8, 121u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 101u8, 101u8, 164u8, 97u8, 100u8, 100u8, 95u8,
115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8,
95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 111u8, 108u8, 100u8, 8u8, 1u8, 60u8, 97u8, 100u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 95u8, 107u8, 101u8, 121u8, 115u8, 137u8, 5u8,
1u8, 164u8, 86u8, 101u8, 99u8, 60u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8,
75u8, 101u8, 121u8, 87u8, 105u8, 116u8, 104u8, 65u8, 117u8, 116u8, 104u8, 86u8, 49u8, 60u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 1u8,
40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 116u8, 32u8, 1u8, 36u8, 84u8,
58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 15u8, 4u8, 1u8, 1u8, 68u8, 101u8,
112u8, 114u8, 101u8, 99u8, 97u8, 116u8, 101u8, 100u8, 46u8, 32u8, 85u8, 115u8, 101u8, 32u8, 96u8,
97u8, 100u8, 100u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8,
107u8, 101u8, 121u8, 115u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8, 105u8, 110u8, 115u8,
116u8, 101u8, 97u8, 100u8, 46u8, 116u8, 97u8, 100u8, 100u8, 95u8, 105u8, 110u8, 118u8, 101u8,
115u8, 116u8, 111u8, 114u8, 95u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8,
115u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 16u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
1u8, 20u8, 99u8, 108u8, 97u8, 105u8, 109u8, 244u8, 1u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8,
0u8, 1u8, 20u8, 112u8, 114u8, 111u8, 111u8, 102u8, 153u8, 5u8, 1u8, 76u8, 73u8, 110u8, 118u8,
101u8, 115u8, 116u8, 111u8, 114u8, 90u8, 75u8, 80u8, 114u8, 111u8, 111u8, 102u8, 68u8, 97u8,
116u8, 97u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 62u8, 0u8, 16u8, 80u8, 9u8, 1u8, 65u8, 100u8, 100u8, 32u8, 96u8, 67u8, 108u8, 97u8, 105u8,
109u8, 58u8, 58u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8,
113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 96u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8,
97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 65u8, 1u8,
32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 32u8, 111u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 37u8, 1u8, 32u8, 116u8, 104u8,
101u8, 32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 111u8, 102u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 44u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 32u8,
105u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 105u8, 110u8, 112u8, 117u8, 116u8, 115u8, 46u8, 44u8,
35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 181u8, 1u8, 42u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 87u8, 104u8, 111u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8,
63u8, 32u8, 73u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 115u8, 101u8, 44u8,
32u8, 105u8, 116u8, 39u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8,
39u8, 115u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 100u8, 32u8, 97u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 115u8, 46u8, 228u8, 42u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 32u8, 45u8, 32u8, 96u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 96u8, 32u8, 116u8, 111u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 97u8,
115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 180u8, 42u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 45u8, 32u8, 96u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8,
85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 96u8, 32u8, 99u8, 108u8,
97u8, 105u8, 109u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 46u8, 172u8, 42u8,
32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 45u8, 32u8, 84u8, 111u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 108u8, 102u8,
32u8, 97u8, 116u8, 116u8, 101u8, 115u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 108u8,
42u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 45u8, 32u8, 69u8, 120u8, 112u8,
105u8, 114u8, 121u8, 32u8, 111u8, 102u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 0u8, 32u8,
35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 68u8, 105u8,
100u8, 77u8, 117u8, 115u8, 116u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8,
105u8, 115u8, 116u8, 96u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 101u8, 99u8, 111u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 46u8,
145u8, 1u8, 42u8, 32u8, 96u8, 67u8, 108u8, 97u8, 105u8, 109u8, 86u8, 97u8, 114u8, 105u8, 97u8,
110u8, 116u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 96u8, 32u8,
87u8, 104u8, 101u8, 110u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 116u8, 114u8,
121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 115u8, 115u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8,
116u8, 104u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 96u8, 73u8, 110u8, 118u8,
101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8,
115u8, 96u8, 46u8, 185u8, 1u8, 42u8, 32u8, 96u8, 67u8, 111u8, 110u8, 102u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 97u8, 108u8, 83u8, 99u8, 111u8, 112u8, 101u8, 67u8, 108u8, 97u8, 105u8,
109u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 96u8, 32u8, 87u8,
104u8, 101u8, 110u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8,
100u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 111u8, 114u8, 32u8, 67u8, 68u8, 68u8, 95u8,
73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8,
102u8, 111u8, 114u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 117u8, 115u8, 101u8, 114u8,
46u8, 172u8, 42u8, 32u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 99u8, 111u8,
112u8, 101u8, 67u8, 108u8, 97u8, 105u8, 109u8, 32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 112u8,
114u8, 111u8, 111u8, 102u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 46u8, 236u8, 42u8, 32u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 67u8, 68u8,
68u8, 73u8, 100u8, 96u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 121u8, 111u8, 117u8, 32u8, 97u8,
114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 67u8, 68u8, 68u8, 95u8,
73u8, 68u8, 46u8, 64u8, 103u8, 99u8, 95u8, 97u8, 100u8, 100u8, 95u8, 99u8, 100u8, 100u8, 95u8,
99u8, 108u8, 97u8, 105u8, 109u8, 4u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8,
1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 17u8, 4u8,
69u8, 1u8, 65u8, 115u8, 115u8, 117u8, 109u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 71u8, 67u8, 32u8, 118u8, 111u8, 116u8, 105u8,
110u8, 103u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 44u8, 32u8, 97u8,
100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 100u8, 100u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 46u8, 76u8, 103u8,
99u8, 95u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 95u8, 99u8, 100u8, 100u8, 95u8, 99u8,
108u8, 97u8, 105u8, 109u8, 4u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 18u8, 4u8, 105u8,
1u8, 65u8, 115u8, 115u8, 117u8, 109u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 71u8, 67u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8,
103u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 44u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
105u8, 110u8, 103u8, 32u8, 99u8, 100u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8,
114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 46u8, 128u8, 97u8, 100u8, 100u8, 95u8, 105u8, 110u8,
118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 95u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8,
101u8, 115u8, 115u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 118u8, 50u8, 20u8, 1u8, 24u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 20u8, 115u8, 99u8, 111u8, 112u8, 101u8, 248u8, 1u8,
20u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 20u8, 99u8, 108u8, 97u8, 105u8, 109u8, 244u8,
1u8, 20u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 1u8, 20u8, 112u8, 114u8, 111u8, 111u8, 102u8,
157u8, 5u8, 1u8, 60u8, 83u8, 99u8, 111u8, 112u8, 101u8, 67u8, 108u8, 97u8, 105u8, 109u8, 80u8,
114u8, 111u8, 111u8, 102u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8,
68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 62u8, 0u8, 19u8, 0u8, 84u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 95u8, 99u8,
108u8, 97u8, 105u8, 109u8, 95u8, 98u8, 121u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 12u8, 1u8,
24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 40u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
116u8, 121u8, 112u8, 101u8, 201u8, 2u8, 1u8, 36u8, 67u8, 108u8, 97u8, 105u8, 109u8, 84u8, 121u8,
112u8, 101u8, 0u8, 1u8, 20u8, 115u8, 99u8, 111u8, 112u8, 101u8, 105u8, 5u8, 1u8, 52u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 83u8, 99u8, 111u8, 112u8, 101u8, 62u8, 0u8, 20u8, 32u8,
245u8, 1u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 117u8,
115u8, 105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 115u8, 32u8, 91u8, 67u8, 108u8, 97u8, 105u8,
109u8, 32u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 32u8, 73u8, 110u8, 100u8, 101u8, 120u8,
93u8, 40u8, 47u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 47u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 104u8, 116u8, 109u8,
108u8, 35u8, 99u8, 108u8, 97u8, 105u8, 109u8, 45u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8,
45u8, 105u8, 110u8, 100u8, 101u8, 120u8, 41u8, 32u8, 99u8, 111u8, 109u8, 112u8, 111u8, 115u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 96u8, 44u8,
104u8, 96u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8, 44u8, 32u8,
97u8, 110u8, 100u8, 32u8, 96u8, 115u8, 99u8, 111u8, 112u8, 101u8, 96u8, 46u8, 0u8, 5u8, 1u8,
80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 110u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 115u8, 115u8, 117u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 97u8, 114u8, 103u8,
101u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 77u8, 1u8, 45u8, 32u8, 96u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
72u8, 97u8, 115u8, 78u8, 111u8, 110u8, 90u8, 101u8, 114u8, 111u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 65u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 96u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 121u8, 111u8, 117u8, 32u8, 116u8, 114u8, 121u8, 32u8, 116u8, 111u8, 32u8,
114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 32u8, 97u8, 32u8, 96u8, 73u8, 110u8, 118u8, 101u8,
115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8,
42u8, 96u8, 37u8, 1u8, 99u8, 108u8, 97u8, 105u8, 109u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8,
96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 104u8, 97u8, 118u8, 101u8,
32u8, 97u8, 110u8, 121u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 115u8, 99u8,
111u8, 112u8, 101u8, 96u8, 46u8, 124u8, 114u8, 111u8, 116u8, 97u8, 116u8, 101u8, 95u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 95u8, 116u8, 111u8, 95u8,
115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 8u8, 1u8, 28u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 80u8, 111u8, 112u8,
116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 95u8, 99u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 240u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
117u8, 54u8, 52u8, 62u8, 0u8, 21u8, 56u8, 101u8, 1u8, 67u8, 97u8, 108u8, 108u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
101u8, 119u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8,
46u8, 32u8, 66u8, 121u8, 32u8, 105u8, 110u8, 118u8, 111u8, 107u8, 105u8, 110u8, 103u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 44u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 115u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 101u8, 1u8,
116u8, 111u8, 32u8, 98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 101u8, 119u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 115u8, 115u8, 117u8, 105u8,
110u8, 103u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 32u8, 73u8,
102u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8,
32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 32u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 101u8, 100u8, 41u8, 1u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 44u8, 32u8, 40u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
100u8, 41u8, 44u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 105u8, 115u8,
32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 93u8, 1u8, 84u8, 104u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 40u8, 110u8, 101u8, 119u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 41u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8,
32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 115u8, 115u8, 117u8, 105u8, 110u8,
103u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 44u8, 32u8, 111u8, 114u8,
100u8, 117u8, 110u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8,
110u8, 121u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 97u8, 1u8,
68u8, 105u8, 102u8, 102u8, 101u8, 114u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8,
99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 95u8,
107u8, 101u8, 121u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 116u8,
32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 108u8, 101u8, 97u8, 118u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 111u8, 108u8, 100u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8,
100u8, 97u8, 114u8, 121u8, 133u8, 1u8, 107u8, 101u8, 121u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 105u8,
110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 115u8, 112u8, 111u8,
110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 82u8, 111u8, 116u8, 97u8, 116u8, 101u8, 80u8, 114u8,
105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 84u8, 111u8, 83u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 164u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8,
111u8, 102u8, 32u8, 117u8, 110u8, 108u8, 105u8, 110u8, 107u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 111u8, 108u8, 100u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8,
32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 29u8, 1u8, 42u8, 32u8, 96u8, 111u8, 119u8, 110u8, 101u8, 114u8, 95u8, 97u8,
117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8,
104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 119u8, 104u8, 111u8, 32u8, 105u8,
110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 228u8, 42u8, 32u8, 96u8, 99u8, 100u8, 100u8, 95u8, 97u8, 117u8,
116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 32u8,
67u8, 68u8, 68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 148u8, 97u8, 100u8, 100u8, 95u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 95u8, 119u8, 105u8,
116u8, 104u8, 95u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 8u8, 1u8, 60u8, 97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8,
95u8, 107u8, 101u8, 121u8, 115u8, 173u8, 5u8, 1u8, 156u8, 86u8, 101u8, 99u8, 60u8, 83u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 87u8, 105u8, 116u8, 104u8,
65u8, 117u8, 116u8, 104u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 62u8, 62u8, 0u8, 1u8, 40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8,
97u8, 116u8, 32u8, 1u8, 36u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8,
22u8, 52u8, 176u8, 65u8, 100u8, 100u8, 115u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 97u8,
114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8,
96u8, 105u8, 100u8, 96u8, 46u8, 0u8, 57u8, 1u8, 75u8, 101u8, 121u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 100u8, 105u8, 114u8, 101u8, 99u8, 116u8, 108u8, 121u8, 32u8, 97u8, 100u8, 100u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 109u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8,
48u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 9u8, 1u8,
32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 32u8, 96u8, 105u8, 100u8, 96u8, 46u8, 212u8, 32u8, 32u8, 32u8, 32u8, 45u8,
32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 116u8, 111u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 97u8,
100u8, 100u8, 101u8, 100u8, 46u8, 216u8, 32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 96u8, 97u8, 100u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 95u8, 107u8, 101u8, 121u8, 115u8, 96u8,
32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 115u8, 44u8, 9u8, 1u8, 32u8, 32u8, 32u8, 32u8, 32u8, 32u8, 32u8, 99u8, 111u8, 117u8,
112u8, 108u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 97u8, 116u8, 97u8,
44u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 172u8, 32u8, 32u8, 32u8, 32u8, 45u8,
32u8, 67u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8,
101u8, 121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 46u8, 208u8, 32u8, 32u8, 32u8, 32u8, 45u8,
32u8, 75u8, 101u8, 121u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 108u8, 105u8, 110u8, 107u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 121u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 46u8, 116u8, 115u8, 101u8, 116u8, 95u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 95u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 8u8, 1u8, 12u8, 107u8, 101u8, 121u8, 0u8, 1u8,
48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
20u8, 112u8, 101u8, 114u8, 109u8, 115u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 23u8, 12u8, 200u8, 83u8, 101u8, 116u8, 115u8,
32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8,
32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8,
107u8, 101u8, 121u8, 46u8, 0u8, 53u8, 1u8, 79u8, 110u8, 108u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
102u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8,
105u8, 115u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 115u8, 101u8, 116u8,
32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8,
32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 84u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 4u8, 1u8, 56u8, 107u8, 101u8, 121u8, 115u8, 95u8,
116u8, 111u8, 95u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 232u8, 1u8, 68u8, 86u8, 101u8,
99u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8,
0u8, 24u8, 20u8, 212u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 115u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 68u8,
73u8, 68u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 0u8, 204u8, 84u8, 104u8, 101u8, 32u8,
101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8, 99u8, 97u8, 110u8, 32u8,
111u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
119u8, 110u8, 101u8, 114u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
137u8, 5u8, 0u8, 0u8, 2u8, 141u8, 5u8, 0u8, 141u8, 5u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 88u8, 83u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 87u8, 105u8, 116u8, 104u8, 65u8, 117u8,
116u8, 104u8, 86u8, 49u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
1u8, 0u8, 0u8, 8u8, 1u8, 52u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8,
107u8, 101u8, 121u8, 145u8, 5u8, 1u8, 108u8, 118u8, 49u8, 58u8, 58u8, 83u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 56u8, 97u8, 117u8, 116u8, 104u8, 95u8, 115u8, 105u8,
103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 149u8, 5u8, 1u8, 16u8, 72u8, 53u8, 49u8, 50u8,
0u8, 0u8, 145u8, 5u8, 16u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 52u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 8u8, 118u8, 49u8, 48u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 4u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 8u8, 1u8, 24u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 105u8, 1u8, 1u8, 80u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8,
114u8, 121u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8,
44u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 148u8, 1u8,
44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 0u8,
149u8, 5u8, 8u8, 60u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 95u8,
116u8, 121u8, 112u8, 101u8, 115u8, 16u8, 72u8, 53u8, 49u8, 50u8, 0u8, 0u8, 4u8, 0u8, 13u8, 2u8,
1u8, 88u8, 91u8, 117u8, 56u8, 59u8, 32u8, 47u8, 42u8, 194u8, 171u8, 42u8, 47u8, 32u8, 54u8, 52u8,
32u8, 47u8, 42u8, 194u8, 187u8, 42u8, 47u8, 93u8, 0u8, 0u8, 153u8, 5u8, 0u8, 0u8, 3u8, 64u8, 0u8,
0u8, 0u8, 8u8, 0u8, 157u8, 5u8, 12u8, 96u8, 99u8, 111u8, 110u8, 102u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 97u8, 108u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
95u8, 118u8, 50u8, 48u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 112u8, 114u8, 111u8, 111u8,
102u8, 115u8, 60u8, 83u8, 99u8, 111u8, 112u8, 101u8, 67u8, 108u8, 97u8, 105u8, 109u8, 80u8,
114u8, 111u8, 111u8, 102u8, 0u8, 0u8, 12u8, 1u8, 100u8, 112u8, 114u8, 111u8, 111u8, 102u8, 95u8,
115u8, 99u8, 111u8, 112u8, 101u8, 95u8, 105u8, 100u8, 95u8, 119u8, 101u8, 108u8, 108u8, 102u8,
111u8, 114u8, 109u8, 101u8, 100u8, 161u8, 5u8, 1u8, 36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 0u8, 1u8, 108u8, 112u8, 114u8, 111u8, 111u8, 102u8, 95u8, 115u8, 99u8,
111u8, 112u8, 101u8, 95u8, 105u8, 100u8, 95u8, 99u8, 100u8, 100u8, 95u8, 105u8, 100u8, 95u8,
109u8, 97u8, 116u8, 99u8, 104u8, 165u8, 5u8, 1u8, 44u8, 90u8, 107u8, 80u8, 114u8, 111u8, 111u8,
102u8, 68u8, 97u8, 116u8, 97u8, 0u8, 1u8, 32u8, 115u8, 99u8, 111u8, 112u8, 101u8, 95u8, 105u8,
100u8, 4u8, 1u8, 76u8, 67u8, 111u8, 109u8, 112u8, 114u8, 101u8, 115u8, 115u8, 101u8, 100u8, 82u8,
105u8, 115u8, 116u8, 114u8, 101u8, 116u8, 116u8, 111u8, 0u8, 0u8, 161u8, 5u8, 12u8, 96u8, 99u8,
111u8, 110u8, 102u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 95u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 95u8, 118u8, 50u8, 16u8, 115u8, 105u8, 103u8, 110u8,
36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 8u8, 1u8, 4u8,
114u8, 4u8, 1u8, 76u8, 67u8, 111u8, 109u8, 112u8, 114u8, 101u8, 115u8, 115u8, 101u8, 100u8, 82u8,
105u8, 115u8, 116u8, 114u8, 101u8, 116u8, 116u8, 111u8, 0u8, 1u8, 4u8, 115u8, 4u8, 1u8, 24u8,
83u8, 99u8, 97u8, 108u8, 97u8, 114u8, 0u8, 0u8, 165u8, 5u8, 12u8, 96u8, 99u8, 111u8, 110u8,
102u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 95u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 95u8, 118u8, 50u8, 48u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
112u8, 114u8, 111u8, 111u8, 102u8, 115u8, 44u8, 90u8, 107u8, 80u8, 114u8, 111u8, 111u8, 102u8,
68u8, 97u8, 116u8, 97u8, 0u8, 0u8, 12u8, 1u8, 76u8, 99u8, 104u8, 97u8, 108u8, 108u8, 101u8,
110u8, 103u8, 101u8, 95u8, 114u8, 101u8, 115u8, 112u8, 111u8, 110u8, 115u8, 101u8, 115u8, 169u8,
5u8, 1u8, 148u8, 91u8, 83u8, 99u8, 97u8, 108u8, 97u8, 114u8, 59u8, 32u8, 90u8, 75u8, 95u8, 80u8,
82u8, 79u8, 79u8, 70u8, 95u8, 68u8, 65u8, 84u8, 65u8, 95u8, 67u8, 72u8, 71u8, 95u8, 82u8, 69u8,
83u8, 80u8, 79u8, 78u8, 83u8, 69u8, 83u8, 93u8, 0u8, 1u8, 96u8, 115u8, 117u8, 98u8, 116u8, 114u8,
97u8, 99u8, 116u8, 95u8, 101u8, 120u8, 112u8, 114u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 95u8, 114u8, 101u8, 115u8, 4u8, 1u8, 76u8, 67u8, 111u8, 109u8, 112u8, 114u8, 101u8, 115u8,
115u8, 101u8, 100u8, 82u8, 105u8, 115u8, 116u8, 114u8, 101u8, 116u8, 116u8, 111u8, 0u8, 1u8,
88u8, 98u8, 108u8, 105u8, 110u8, 100u8, 101u8, 100u8, 95u8, 115u8, 99u8, 111u8, 112u8, 101u8,
95u8, 100u8, 105u8, 100u8, 95u8, 104u8, 97u8, 115u8, 104u8, 4u8, 1u8, 76u8, 67u8, 111u8, 109u8,
112u8, 114u8, 101u8, 115u8, 115u8, 101u8, 100u8, 82u8, 105u8, 115u8, 116u8, 114u8, 101u8, 116u8,
116u8, 111u8, 0u8, 0u8, 169u8, 5u8, 0u8, 0u8, 3u8, 2u8, 0u8, 0u8, 0u8, 4u8, 0u8, 173u8, 5u8, 0u8,
0u8, 2u8, 177u8, 5u8, 0u8, 177u8, 5u8, 16u8, 100u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8, 117u8, 116u8, 105u8, 108u8,
105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 80u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 87u8, 105u8, 116u8, 104u8, 65u8, 117u8, 116u8, 104u8,
4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 8u8, 1u8,
52u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8,
144u8, 1u8, 92u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8,
60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 56u8, 97u8,
117u8, 116u8, 104u8, 95u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 149u8,
5u8, 1u8, 16u8, 72u8, 53u8, 49u8, 50u8, 0u8, 0u8, 181u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 20u8, 69u8,
114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 132u8, 52u8, 65u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 76u8, 105u8, 110u8, 107u8, 101u8, 100u8, 0u8, 0u8, 4u8, 220u8, 79u8, 110u8,
101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 111u8, 114u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8,
97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8, 103u8,
32u8, 116u8, 111u8, 32u8, 111u8, 110u8, 101u8, 32u8, 68u8, 73u8, 68u8, 88u8, 77u8, 105u8, 115u8,
115u8, 105u8, 110u8, 103u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 1u8, 4u8, 172u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8,
103u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 48u8, 85u8, 110u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 0u8, 2u8, 4u8, 188u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
112u8, 114u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 75u8, 101u8, 121u8, 0u8, 3u8, 4u8, 168u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 73u8, 100u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8,
32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 92u8, 85u8, 110u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 100u8, 100u8, 80u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 114u8, 0u8, 4u8, 4u8, 156u8, 79u8, 110u8, 108u8, 121u8, 32u8, 67u8, 68u8,
68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 114u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 108u8, 108u8, 111u8,
119u8, 101u8, 100u8, 46u8, 116u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 65u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 70u8, 114u8, 111u8,
109u8, 79u8, 119u8, 110u8, 101u8, 114u8, 0u8, 5u8, 4u8, 160u8, 65u8, 110u8, 32u8, 105u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 46u8, 140u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
70u8, 114u8, 111u8, 109u8, 67u8, 100u8, 100u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
114u8, 0u8, 6u8, 4u8, 188u8, 65u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8,
114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 46u8, 100u8, 78u8, 111u8, 116u8, 67u8, 100u8,
100u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 65u8, 116u8, 116u8, 101u8, 115u8,
116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 7u8, 4u8, 184u8, 65u8, 116u8, 116u8, 101u8, 115u8,
116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 98u8, 121u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 115u8, 101u8, 114u8, 118u8, 105u8,
99u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 46u8, 112u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 78u8,
111u8, 116u8, 70u8, 111u8, 114u8, 83u8, 97u8, 109u8, 101u8, 68u8, 105u8, 100u8, 115u8, 0u8, 8u8,
4u8, 160u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 68u8, 73u8, 68u8, 46u8, 76u8,
68u8, 105u8, 100u8, 77u8, 117u8, 115u8, 116u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
69u8, 120u8, 105u8, 115u8, 116u8, 0u8, 9u8, 4u8, 108u8, 84u8, 104u8, 101u8, 32u8, 68u8, 73u8,
68u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 128u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 67u8, 97u8, 110u8, 110u8, 111u8,
116u8, 66u8, 101u8, 70u8, 111u8, 114u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 0u8, 10u8, 4u8,
77u8, 1u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8,
32u8, 102u8, 111u8, 114u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 44u8, 32u8, 105u8, 116u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8,
97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 80u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8,
110u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 11u8, 4u8, 156u8, 84u8, 104u8, 101u8,
32u8, 111u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 56u8, 84u8, 97u8, 114u8, 103u8, 101u8,
116u8, 72u8, 97u8, 115u8, 78u8, 111u8, 67u8, 100u8, 100u8, 0u8, 12u8, 4u8, 128u8, 84u8, 104u8,
101u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 68u8, 73u8, 68u8, 32u8, 104u8, 97u8,
115u8, 32u8, 110u8, 111u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 46u8,
108u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
72u8, 97u8, 115u8, 66u8, 101u8, 101u8, 110u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8,
0u8, 13u8, 4u8, 168u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8,
112u8, 108u8, 105u8, 99u8, 105u8, 116u8, 108u8, 121u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8,
101u8, 100u8, 46u8, 116u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 14u8, 4u8, 140u8, 65u8, 110u8, 32u8, 105u8, 110u8, 118u8,
97u8, 108u8, 105u8, 100u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8,
46u8, 52u8, 75u8, 101u8, 121u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8,
100u8, 0u8, 15u8, 4u8, 212u8, 84u8, 104u8, 105u8, 115u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 97u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8,
46u8, 52u8, 78u8, 111u8, 116u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8,
121u8, 0u8, 16u8, 4u8, 97u8, 1u8, 79u8, 110u8, 108u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 115u8,
32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8,
118u8, 111u8, 107u8, 101u8, 32u8, 97u8, 110u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 32u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 32u8, 111u8,
102u8, 102u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 60u8, 68u8, 105u8, 100u8, 68u8,
111u8, 101u8, 115u8, 78u8, 111u8, 116u8, 69u8, 120u8, 105u8, 115u8, 116u8, 0u8, 17u8, 4u8, 92u8,
84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 64u8, 68u8, 105u8, 100u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 0u8, 18u8, 4u8, 92u8,
84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8, 120u8, 83u8, 101u8, 99u8, 111u8, 110u8,
100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8,
110u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 0u8, 19u8, 4u8, 172u8,
84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 115u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8,
46u8, 68u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 67u8, 104u8, 97u8, 114u8, 103u8,
101u8, 70u8, 101u8, 101u8, 0u8, 20u8, 4u8, 160u8, 67u8, 111u8, 117u8, 108u8, 100u8, 110u8, 39u8,
116u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8, 83u8, 105u8, 103u8, 110u8,
101u8, 114u8, 0u8, 21u8, 4u8, 216u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 108u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 68u8, 101u8, 99u8, 111u8,
100u8, 101u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 22u8, 4u8, 21u8, 1u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
99u8, 111u8, 110u8, 118u8, 101u8, 114u8, 116u8, 32u8, 97u8, 32u8, 96u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 32u8, 116u8, 111u8, 32u8, 96u8, 65u8,
110u8, 121u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 58u8, 58u8, 83u8,
105u8, 103u8, 110u8, 101u8, 114u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 96u8, 46u8, 72u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 72u8, 97u8,
115u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 23u8, 4u8, 33u8, 1u8, 77u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8,
32u8, 98u8, 101u8, 32u8, 117u8, 110u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 32u8, 119u8, 104u8, 105u8, 108u8, 101u8, 32u8, 105u8, 116u8, 32u8, 115u8, 116u8, 105u8,
108u8, 108u8, 32u8, 104u8, 111u8, 108u8, 100u8, 115u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 128u8,
67u8, 111u8, 110u8, 102u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 83u8, 99u8,
111u8, 112u8, 101u8, 67u8, 108u8, 97u8, 105u8, 109u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8,
111u8, 119u8, 101u8, 100u8, 0u8, 24u8, 4u8, 5u8, 1u8, 67u8, 111u8, 110u8, 102u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 83u8, 99u8, 111u8, 112u8, 101u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8,
100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8, 45u8, 115u8, 101u8, 108u8,
102u8, 46u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 99u8, 111u8, 112u8,
101u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 25u8, 4u8, 188u8, 65u8, 100u8, 100u8, 105u8, 116u8,
105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8,
99u8, 111u8, 112u8, 101u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 103u8, 101u8, 116u8,
115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8,
88u8, 67u8, 108u8, 97u8, 105u8, 109u8, 86u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 78u8, 111u8,
116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 0u8, 26u8, 4u8, 228u8, 84u8, 114u8, 121u8,
32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 97u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8,
32u8, 117u8, 110u8, 45u8, 100u8, 101u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 101u8, 100u8,
32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 128u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 72u8, 97u8, 115u8, 78u8, 111u8, 110u8, 90u8, 101u8, 114u8, 111u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 65u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8,
100u8, 0u8, 27u8, 4u8, 81u8, 1u8, 84u8, 114u8, 121u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8,
108u8, 101u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 73u8, 85u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 101u8, 118u8, 101u8, 110u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8,
110u8, 32u8, 122u8, 101u8, 114u8, 111u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8,
97u8, 116u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 115u8, 99u8, 111u8, 112u8, 101u8,
73u8, 100u8, 46u8, 100u8, 67u8, 68u8, 68u8, 73u8, 100u8, 78u8, 111u8, 116u8, 85u8, 110u8, 105u8,
113u8, 117u8, 101u8, 70u8, 111u8, 114u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
0u8, 28u8, 4u8, 29u8, 1u8, 67u8, 68u8, 68u8, 73u8, 100u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 32u8, 38u8,
32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 105u8, 110u8, 32u8, 97u8,
108u8, 108u8, 32u8, 99u8, 100u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8,
112u8, 111u8, 115u8, 115u8, 101u8, 115u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8,
32u8, 68u8, 73u8, 68u8, 46u8, 48u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 67u8, 68u8,
68u8, 73u8, 100u8, 0u8, 29u8, 4u8, 9u8, 1u8, 78u8, 111u8, 110u8, 32u8, 115u8, 121u8, 115u8,
116u8, 101u8, 109u8, 97u8, 116u8, 105u8, 99u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 114u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8,
32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 99u8, 100u8, 100u8, 95u8, 105u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
115u8, 46u8, 124u8, 67u8, 108u8, 97u8, 105u8, 109u8, 65u8, 110u8, 100u8, 80u8, 114u8, 111u8,
111u8, 102u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 115u8, 68u8, 111u8, 78u8, 111u8,
116u8, 77u8, 97u8, 116u8, 99u8, 104u8, 0u8, 30u8, 4u8, 156u8, 67u8, 108u8, 97u8, 105u8, 109u8,
32u8, 97u8, 110u8, 100u8, 32u8, 80u8, 114u8, 111u8, 111u8, 102u8, 32u8, 118u8, 101u8, 114u8,
115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 100u8, 105u8, 102u8, 102u8,
101u8, 114u8, 101u8, 110u8, 116u8, 46u8, 84u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
75u8, 101u8, 121u8, 73u8, 115u8, 66u8, 101u8, 105u8, 110u8, 103u8, 85u8, 115u8, 101u8, 100u8,
0u8, 31u8, 4u8, 208u8, 84u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8,
117u8, 115u8, 101u8, 100u8, 44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 39u8, 116u8, 32u8,
98u8, 101u8, 32u8, 117u8, 110u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 46u8, 72u8, 67u8,
117u8, 115u8, 116u8, 111u8, 109u8, 83u8, 99u8, 111u8, 112u8, 101u8, 84u8, 111u8, 111u8, 76u8,
111u8, 110u8, 103u8, 0u8, 32u8, 8u8, 108u8, 65u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8,
32u8, 115u8, 99u8, 111u8, 112u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8,
108u8, 111u8, 110u8, 103u8, 46u8, 156u8, 73u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 116u8,
32u8, 109u8, 111u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 96u8, 51u8, 50u8, 96u8, 32u8, 99u8,
104u8, 97u8, 114u8, 97u8, 99u8, 116u8, 101u8, 114u8, 115u8, 32u8, 108u8, 111u8, 110u8, 103u8,
46u8, 0u8, 185u8, 5u8, 0u8, 0u8, 2u8, 189u8, 5u8, 0u8, 189u8, 5u8, 16u8, 100u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8,
117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 24u8, 116u8, 114u8, 97u8, 105u8,
116u8, 115u8, 20u8, 103u8, 114u8, 111u8, 117u8, 112u8, 56u8, 73u8, 110u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 24u8, 77u8, 111u8, 109u8,
101u8, 110u8, 116u8, 1u8, 32u8, 0u8, 12u8, 1u8, 8u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 56u8, 100u8, 101u8, 97u8, 99u8,
116u8, 105u8, 118u8, 97u8, 116u8, 101u8, 100u8, 95u8, 97u8, 116u8, 32u8, 1u8, 24u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8,
56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
62u8, 0u8, 0u8, 193u8, 5u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8,
114u8, 111u8, 117u8, 112u8, 16u8, 67u8, 97u8, 108u8, 108u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8,
1u8, 28u8, 96u8, 115u8, 101u8, 116u8, 95u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 4u8, 1u8, 20u8,
108u8, 105u8, 109u8, 105u8, 116u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8,
111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 53u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 39u8, 115u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 104u8, 111u8, 119u8, 32u8,
109u8, 97u8, 110u8, 121u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 13u8,
1u8, 42u8, 32u8, 96u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8,
104u8, 101u8, 114u8, 101u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8,
110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 46u8, 56u8, 100u8, 105u8,
115u8, 97u8, 98u8, 108u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 12u8, 1u8, 12u8,
119u8, 104u8, 111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 62u8, 0u8, 1u8, 8u8, 97u8, 116u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 64u8,
148u8, 68u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 32u8, 97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 99u8, 32u8, 109u8, 111u8, 109u8, 101u8, 110u8, 116u8, 46u8, 0u8, 65u8, 1u8, 80u8, 108u8,
101u8, 97u8, 115u8, 101u8, 32u8, 110u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 105u8, 102u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8,
97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8,
100u8, 32u8, 40u8, 97u8, 32u8, 34u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 34u8, 41u8, 44u8, 32u8, 105u8, 116u8, 115u8, 32u8, 114u8, 101u8, 118u8,
111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 108u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8,
116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8,
112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 77u8, 1u8, 65u8, 110u8, 121u8, 32u8, 100u8,
105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 78u8, 79u8, 84u8, 32u8, 97u8, 108u8, 108u8,
111u8, 119u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 108u8, 105u8, 107u8, 101u8,
32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8,
112u8, 46u8, 32u8, 70u8, 111u8, 114u8, 93u8, 1u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8,
101u8, 44u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 67u8,
68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 78u8, 79u8, 84u8, 32u8, 98u8, 101u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8,
116u8, 111u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 32u8,
67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 72u8, 111u8, 119u8, 101u8,
118u8, 101u8, 114u8, 32u8, 97u8, 110u8, 121u8, 25u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8,
97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8,
117u8, 101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 96u8, 97u8, 116u8,
96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8,
115u8, 105u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 32u8, 111u8, 110u8, 101u8, 46u8, 0u8, 81u8, 1u8, 73u8, 102u8, 32u8,
121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 117u8,
115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 124u8, 42u8, 32u8, 96u8, 97u8,
116u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 46u8, 148u8, 42u8,
32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 85u8, 1u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8,
105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8,
109u8, 112u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8,
105u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 67u8, 68u8, 68u8, 46u8, 32u8, 65u8, 115u8, 32u8, 115u8, 111u8, 111u8, 110u8, 32u8,
97u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8,
101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 81u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8,
97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 34u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
34u8, 32u8, 97u8, 115u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8,
97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 40u8, 97u8, 100u8, 100u8, 95u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 20u8, 57u8, 1u8, 65u8,
100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8,
119u8, 104u8, 111u8, 96u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8,
111u8, 117u8, 112u8, 46u8, 32u8, 77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8,
32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 208u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8,
114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 65u8, 100u8, 100u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8,
116u8, 184u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 46u8, 52u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 3u8, 40u8, 81u8, 1u8, 82u8,
101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 46u8, 32u8, 77u8, 97u8, 121u8, 32u8, 111u8, 110u8,
108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 65u8,
1u8, 65u8, 110u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 112u8, 114u8, 101u8, 118u8,
105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 70u8, 111u8, 114u8, 89u8, 1u8, 105u8, 110u8, 115u8, 116u8,
97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 105u8, 102u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 97u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 97u8, 110u8, 100u8,
32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 97u8, 1u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 32u8, 32u8, 73u8, 110u8, 32u8, 99u8, 97u8, 115u8,
101u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8,
107u8, 101u8, 101u8, 112u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8,
101u8, 100u8, 220u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 44u8, 32u8, 121u8, 111u8, 117u8,
32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 116u8, 111u8, 32u8, 117u8, 115u8, 101u8, 32u8, 96u8, 83u8,
101u8, 108u8, 102u8, 58u8, 58u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 95u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8,
110u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
220u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 200u8,
42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 44u8, 115u8, 119u8, 97u8, 112u8, 95u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 8u8, 1u8, 24u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8,
12u8, 97u8, 100u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 4u8, 32u8, 220u8, 83u8, 119u8, 97u8, 112u8, 115u8, 32u8, 111u8, 117u8,
116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8,
111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8,
97u8, 100u8, 100u8, 96u8, 46u8, 0u8, 180u8, 77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8,
32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8,
101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 83u8,
119u8, 97u8, 112u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8,
114u8, 111u8, 111u8, 116u8, 212u8, 42u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8,
46u8, 216u8, 42u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 112u8, 108u8, 97u8, 99u8, 101u8,
32u8, 111u8, 102u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 46u8, 52u8,
114u8, 101u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 4u8,
1u8, 28u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 33u8, 1u8, 1u8, 60u8, 86u8, 101u8,
99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8, 5u8,
24u8, 41u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 116u8, 44u8, 32u8, 100u8, 105u8, 115u8,
114u8, 101u8, 103u8, 97u8, 114u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 104u8, 105u8, 112u8, 46u8, 184u8, 77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 216u8, 42u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8,
32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 140u8, 42u8, 32u8, 96u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8, 119u8, 32u8, 115u8, 101u8,
116u8, 32u8, 111u8, 102u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8,
115u8, 76u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 0u8, 6u8, 40u8, 77u8, 1u8, 65u8, 108u8, 108u8, 111u8,
119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 42u8, 117u8, 110u8,
105u8, 108u8, 97u8, 116u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8, 32u8, 113u8, 117u8, 105u8,
116u8, 42u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 115u8, 117u8, 98u8, 106u8, 101u8, 99u8,
116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 71u8, 67u8, 20u8, 118u8, 111u8, 116u8, 101u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 204u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 32u8, 119u8, 104u8, 111u8, 32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8, 116u8,
111u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 0u8, 28u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 0u8, 128u8, 42u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8,
114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 98u8, 100u8, 105u8,
99u8, 97u8, 116u8, 101u8, 46u8, 164u8, 42u8, 32u8, 76u8, 97u8, 115u8, 116u8, 32u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 103u8, 114u8, 111u8, 117u8,
112u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8,
116u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8,
108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8,
104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8,
108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8,
116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 197u8, 5u8, 8u8, 48u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 20u8, 69u8,
114u8, 114u8, 111u8, 114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 84u8, 79u8, 110u8,
108u8, 121u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 65u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 0u8, 0u8, 4u8, 176u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 105u8,
115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 68u8, 117u8, 112u8,
108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 4u8,
124u8, 71u8, 114u8, 111u8, 117u8, 112u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
119u8, 97u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 97u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 46u8, 48u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 0u8, 2u8, 4u8, 164u8, 67u8, 97u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 46u8, 80u8, 76u8, 97u8, 115u8, 116u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 81u8, 117u8, 105u8, 116u8, 0u8, 3u8, 4u8, 168u8,
76u8, 97u8, 115u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 88u8,
77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 4u8, 4u8, 76u8, 77u8, 105u8, 115u8,
115u8, 105u8, 110u8, 103u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 68u8,
73u8, 68u8, 104u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 0u8, 5u8, 4u8, 93u8, 1u8, 84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8, 114u8,
111u8, 117u8, 112u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8,
120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 46u8, 104u8, 65u8, 99u8, 116u8, 105u8, 118u8,
101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 79u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 6u8, 4u8, 21u8, 1u8, 65u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8,
32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 0u8, 201u8, 5u8, 12u8, 96u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 95u8, 100u8, 101u8, 118u8, 101u8, 108u8, 111u8, 112u8, 28u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 16u8, 67u8, 97u8, 108u8, 108u8, 0u8, 1u8, 176u8, 24u8, 83u8, 121u8,
115u8, 116u8, 101u8, 109u8, 4u8, 0u8, 129u8, 4u8, 1u8, 173u8, 1u8, 115u8, 101u8, 108u8, 102u8,
58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8,
67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8,
60u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 0u8, 0u8, 16u8, 66u8, 97u8, 98u8, 101u8, 4u8, 0u8, 241u8, 4u8, 1u8,
165u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8,
97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 66u8, 97u8, 98u8, 101u8, 44u8, 32u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 1u8, 0u8, 36u8, 84u8, 105u8, 109u8, 101u8, 115u8,
116u8, 97u8, 109u8, 112u8, 4u8, 0u8, 9u8, 5u8, 1u8, 185u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8,
58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8,
58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8,
97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8,
84u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 2u8, 0u8, 28u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8,
115u8, 4u8, 0u8, 21u8, 5u8, 1u8, 177u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8,
112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8,
105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8,
58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8,
108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 73u8, 110u8,
100u8, 105u8, 99u8, 101u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
62u8, 0u8, 3u8, 0u8, 40u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8,
4u8, 0u8, 37u8, 5u8, 1u8, 189u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8,
97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8,
98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 4u8, 0u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 4u8,
0u8, 61u8, 5u8, 1u8, 181u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8,
97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8,
98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8,
5u8, 0u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 4u8, 0u8, 133u8, 5u8, 1u8,
181u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8,
97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 7u8, 0u8, 76u8,
67u8, 100u8, 100u8, 83u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 80u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 114u8, 115u8, 4u8, 0u8, 193u8, 5u8, 1u8, 225u8, 1u8, 115u8, 101u8, 108u8,
102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8,
111u8, 114u8, 60u8, 67u8, 100u8, 100u8, 83u8, 101u8, 114u8, 118u8, 105u8, 99u8, 101u8, 80u8,
114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 62u8, 0u8, 8u8, 0u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 205u8, 5u8, 1u8,
217u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8,
97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 44u8, 32u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 9u8, 0u8, 76u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8,
4u8, 0u8, 209u8, 5u8, 1u8, 225u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8,
95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8,
99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8,
100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8,
97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 67u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8,
105u8, 112u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 10u8, 0u8,
72u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 213u8, 5u8, 1u8, 221u8, 1u8, 115u8, 101u8, 108u8,
102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8,
111u8, 114u8, 60u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 11u8, 0u8, 112u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8,
108u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 4u8, 0u8, 217u8, 5u8, 1u8, 5u8, 2u8, 115u8, 101u8,
108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8,
111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8,
70u8, 111u8, 114u8, 60u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
104u8, 105u8, 112u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 12u8,
0u8, 64u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 221u8, 5u8, 1u8, 213u8, 1u8, 115u8, 101u8, 108u8, 102u8,
58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8,
67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8,
60u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 13u8,
0u8, 104u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8,
4u8, 0u8, 225u8, 5u8, 1u8, 253u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8,
95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8,
99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8,
100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8,
97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 85u8, 112u8, 103u8,
114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 14u8, 0u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8,
105u8, 103u8, 4u8, 0u8, 229u8, 5u8, 1u8, 181u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8,
115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8,
108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 77u8,
117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 15u8, 0u8, 24u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 4u8, 0u8,
233u8, 5u8, 1u8, 173u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8,
112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8,
108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 66u8, 114u8, 105u8, 100u8,
103u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 16u8, 0u8,
28u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 4u8, 0u8, 249u8, 5u8, 1u8, 177u8, 1u8,
115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8,
105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8,
95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8,
108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 44u8,
32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 17u8, 0u8, 28u8, 83u8, 101u8,
115u8, 115u8, 105u8, 111u8, 110u8, 4u8, 0u8, 237u8, 6u8, 1u8, 177u8, 1u8, 115u8, 101u8, 108u8,
102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8,
111u8, 114u8, 60u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 44u8, 32u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 19u8, 0u8, 28u8, 71u8, 114u8, 97u8, 110u8, 100u8,
112u8, 97u8, 4u8, 0u8, 249u8, 6u8, 1u8, 177u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8,
115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8,
108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 71u8,
114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 62u8, 0u8, 21u8, 0u8, 32u8, 73u8, 109u8, 79u8, 110u8, 108u8, 105u8, 110u8, 101u8, 4u8,
0u8, 37u8, 7u8, 1u8, 181u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8,
97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8,
98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 73u8, 109u8, 79u8, 110u8,
108u8, 105u8, 110u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8,
0u8, 23u8, 0u8, 16u8, 83u8, 117u8, 100u8, 111u8, 4u8, 0u8, 69u8, 7u8, 1u8, 165u8, 1u8, 115u8,
101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8,
100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8,
99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8,
99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8,
108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 117u8, 100u8, 111u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 25u8, 0u8, 20u8, 65u8, 115u8, 115u8, 101u8, 116u8, 4u8,
0u8, 73u8, 7u8, 1u8, 169u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8,
97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8,
98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 65u8, 115u8, 115u8,
101u8, 116u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 26u8, 0u8,
76u8, 67u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 105u8, 7u8, 1u8, 225u8, 1u8, 115u8, 101u8,
108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8,
111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8,
70u8, 111u8, 114u8, 60u8, 67u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 68u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 27u8, 0u8, 40u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8,
111u8, 105u8, 110u8, 116u8, 4u8, 0u8, 113u8, 7u8, 1u8, 189u8, 1u8, 115u8, 101u8, 108u8, 102u8,
58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8,
67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8,
60u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 44u8, 32u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 28u8, 0u8, 68u8, 67u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 77u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 4u8, 0u8,
121u8, 7u8, 1u8, 217u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8,
112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8,
108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 67u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 77u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 44u8, 32u8,
82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 29u8, 0u8, 60u8, 67u8, 111u8, 114u8,
112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 0u8, 125u8,
7u8, 1u8, 209u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8,
105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8,
101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 30u8, 0u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 4u8, 0u8, 149u8, 7u8, 1u8,
209u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8,
97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 62u8, 0u8, 31u8, 0u8, 16u8, 80u8, 105u8, 112u8, 115u8, 4u8, 0u8, 153u8, 7u8,
1u8, 165u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8,
95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8,
67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 80u8, 105u8, 112u8, 115u8, 44u8, 32u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 33u8, 0u8, 36u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 4u8, 0u8, 169u8, 7u8, 1u8, 185u8, 1u8, 115u8, 101u8, 108u8,
102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8,
111u8, 114u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 44u8, 32u8,
82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 34u8, 0u8, 44u8, 80u8, 114u8, 111u8,
116u8, 111u8, 99u8, 111u8, 108u8, 70u8, 101u8, 101u8, 4u8, 0u8, 181u8, 7u8, 1u8, 193u8, 1u8,
115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8,
105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8,
95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8,
108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 80u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8,
70u8, 101u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 35u8,
0u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 4u8, 0u8, 189u8, 7u8,
1u8, 185u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8,
95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8,
67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 114u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 36u8,
0u8, 40u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 4u8, 0u8, 201u8,
7u8, 1u8, 189u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8,
105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8,
101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
62u8, 0u8, 37u8, 0u8, 40u8, 83u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8,
4u8, 0u8, 221u8, 7u8, 1u8, 189u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8,
95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8,
99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8,
100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8,
97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 116u8, 97u8,
116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 38u8, 0u8, 12u8, 83u8, 116u8, 111u8, 4u8, 0u8, 241u8, 7u8, 1u8, 161u8,
1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8,
105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8,
95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8,
108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 83u8, 116u8, 111u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 39u8, 0u8, 32u8, 84u8, 114u8, 101u8, 97u8, 115u8, 117u8,
114u8, 121u8, 4u8, 0u8, 1u8, 8u8, 1u8, 181u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8,
112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8,
105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8,
58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8,
108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 84u8, 114u8,
101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 62u8, 0u8, 40u8, 0u8, 28u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 4u8, 0u8,
13u8, 8u8, 1u8, 177u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8,
112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8,
108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 85u8, 116u8, 105u8, 108u8,
105u8, 116u8, 121u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 41u8,
0u8, 16u8, 66u8, 97u8, 115u8, 101u8, 4u8, 0u8, 25u8, 8u8, 1u8, 165u8, 1u8, 115u8, 101u8, 108u8,
102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8,
101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8,
111u8, 114u8, 60u8, 66u8, 97u8, 115u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 62u8, 0u8, 42u8, 0u8, 56u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8,
65u8, 103u8, 101u8, 110u8, 116u8, 115u8, 4u8, 0u8, 29u8, 8u8, 1u8, 205u8, 1u8, 115u8, 101u8,
108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8,
111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8,
70u8, 111u8, 114u8, 60u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 65u8, 103u8,
101u8, 110u8, 116u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8,
0u8, 43u8, 0u8, 28u8, 82u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 4u8, 0u8, 33u8, 8u8, 1u8,
177u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8,
104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8,
105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8,
97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 82u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8,
44u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 44u8, 0u8, 28u8, 82u8,
101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 4u8, 0u8, 37u8, 8u8, 1u8, 177u8, 1u8, 115u8, 101u8,
108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8,
100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8,
111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8,
108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8,
70u8, 111u8, 114u8, 60u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 44u8, 32u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 45u8, 0u8, 36u8, 67u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 4u8, 0u8, 45u8, 8u8, 1u8, 185u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8,
58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8,
58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8,
97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8,
67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 46u8, 0u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 4u8, 0u8, 53u8, 8u8,
1u8, 217u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8,
95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8,
67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 44u8, 32u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 47u8, 0u8, 32u8, 80u8, 114u8, 101u8, 105u8,
109u8, 97u8, 103u8, 101u8, 4u8, 0u8, 57u8, 8u8, 1u8, 181u8, 1u8, 115u8, 101u8, 108u8, 102u8,
58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8,
110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8,
67u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8,
60u8, 80u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 48u8, 0u8, 36u8, 84u8, 101u8, 115u8, 116u8, 85u8, 116u8,
105u8, 108u8, 115u8, 4u8, 0u8, 61u8, 8u8, 1u8, 185u8, 1u8, 115u8, 101u8, 108u8, 102u8, 58u8,
58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8,
95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8, 99u8, 111u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 58u8,
58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8,
101u8, 58u8, 58u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 10u8, 58u8, 58u8, 67u8,
97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8, 67u8, 97u8, 108u8, 108u8, 70u8, 111u8, 114u8, 60u8,
84u8, 101u8, 115u8, 116u8, 85u8, 116u8, 105u8, 108u8, 115u8, 44u8, 32u8, 82u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 50u8, 0u8, 0u8, 205u8, 5u8, 8u8, 64u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 16u8,
67u8, 97u8, 108u8, 108u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 20u8, 72u8, 115u8, 101u8,
116u8, 95u8, 118u8, 111u8, 116u8, 101u8, 95u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8,
108u8, 100u8, 8u8, 1u8, 4u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 4u8, 100u8,
16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 24u8, 248u8, 67u8, 104u8, 97u8, 110u8, 103u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8,
101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 116u8,
101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 105u8,
110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
46u8, 85u8, 1u8, 70u8, 111u8, 114u8, 32u8, 101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 102u8, 111u8,
114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 109u8, 112u8, 108u8, 101u8, 32u8, 109u8, 97u8, 106u8,
111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 117u8, 115u8, 101u8, 32u8, 40u8, 49u8, 44u8, 32u8, 50u8,
41u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8,
101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 45u8, 101u8, 113u8,
117u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 34u8, 62u8, 61u8, 32u8, 49u8, 47u8, 50u8, 34u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 248u8,
42u8, 32u8, 96u8, 110u8, 96u8, 32u8, 45u8, 32u8, 78u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8,
111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 114u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8,
105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8,
104u8, 111u8, 108u8, 100u8, 46u8, 1u8, 1u8, 42u8, 32u8, 96u8, 100u8, 96u8, 32u8, 45u8, 32u8,
68u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 114u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8,
111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 46u8,
92u8, 115u8, 101u8, 116u8, 95u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 95u8, 99u8,
111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 4u8, 1u8, 8u8, 105u8, 100u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8,
28u8, 128u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8,
110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 192u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8,
104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
101u8, 119u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8,
114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
101u8, 119u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8,
32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 97u8,
114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 68u8, 115u8, 101u8, 116u8, 95u8, 101u8, 120u8, 112u8,
105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 102u8, 116u8, 101u8, 114u8, 4u8, 1u8, 24u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 53u8, 1u8, 1u8, 104u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8,
111u8, 99u8, 107u8, 60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 62u8, 0u8, 2u8, 16u8, 192u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8,
114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 132u8, 42u8,
32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8,
32u8, 110u8, 101u8, 119u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8,
109u8, 101u8, 46u8, 60u8, 118u8, 111u8, 116u8, 101u8, 95u8, 111u8, 114u8, 95u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 101u8, 8u8, 1u8, 28u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8,
101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8,
201u8, 5u8, 1u8, 152u8, 66u8, 111u8, 120u8, 60u8, 60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 102u8,
114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 58u8, 58u8, 67u8,
111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 3u8,
68u8, 21u8, 1u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 115u8, 104u8, 111u8,
117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8,
100u8, 32u8, 105u8, 110u8, 32u8, 105u8, 116u8, 115u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8,
93u8, 1u8, 65u8, 108u8, 116u8, 101u8, 114u8, 110u8, 97u8, 116u8, 105u8, 118u8, 101u8, 108u8,
121u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8,
32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8,
97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8,
101u8, 99u8, 111u8, 114u8, 100u8, 101u8, 100u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8,
97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
101u8, 100u8, 44u8, 29u8, 1u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 97u8, 115u8,
32u8, 97u8, 32u8, 118u8, 111u8, 116u8, 101u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8,
97u8, 115u8, 32u8, 105u8, 102u8, 32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 95u8, 98u8, 121u8, 95u8,
104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 45u8, 1u8,
84u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8,
98u8, 108u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 111u8, 102u8,
32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8,
32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8,
120u8, 105u8, 116u8, 121u8, 120u8, 102u8, 111u8, 114u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8,
105u8, 116u8, 115u8, 101u8, 108u8, 102u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 160u8, 42u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8,
116u8, 101u8, 63u8, 97u8, 1u8, 32u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8,
116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 44u8, 32u8, 112u8, 97u8, 115u8, 115u8, 105u8,
110u8, 103u8, 32u8, 96u8, 102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 105u8, 110u8, 32u8, 101u8, 114u8,
114u8, 111u8, 114u8, 32u8, 96u8, 70u8, 105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8,
82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 96u8, 46u8, 180u8, 42u8, 32u8, 96u8, 99u8, 97u8, 108u8,
108u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8,
111u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 70u8, 105u8, 114u8, 115u8, 116u8,
86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 96u8, 44u8, 32u8, 105u8,
102u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8,
32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8,
32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 32u8, 61u8,
61u8, 32u8, 102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8,
111u8, 116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 46u8, 16u8, 118u8, 111u8, 116u8, 101u8, 12u8, 1u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8,
115u8, 104u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 52u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 28u8, 97u8,
112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
4u8, 40u8, 164u8, 86u8, 111u8, 116u8, 101u8, 115u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 101u8, 96u8, 105u8, 110u8, 103u8, 108u8, 121u8, 32u8, 40u8, 111u8, 114u8, 32u8, 110u8,
111u8, 116u8, 44u8, 32u8, 105u8, 102u8, 32u8, 96u8, 102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 41u8,
212u8, 111u8, 110u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8,
103u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 121u8, 32u8, 105u8, 116u8, 115u8, 32u8, 104u8, 97u8,
115u8, 104u8, 44u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 46u8, 0u8, 44u8, 35u8,
32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8, 32u8, 96u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 65u8, 32u8, 104u8,
97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8, 111u8,
116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 46u8, 124u8, 42u8, 32u8, 96u8, 105u8, 110u8, 100u8,
101u8, 120u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 45u8, 1u8, 42u8, 32u8,
96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 102u8, 32u8,
96u8, 116u8, 114u8, 117u8, 101u8, 96u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 96u8, 102u8, 111u8, 114u8, 96u8, 32u8, 118u8,
111u8, 116u8, 101u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 97u8, 103u8, 97u8, 105u8, 110u8,
115u8, 116u8, 96u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 46u8,
0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8,
111u8, 116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
209u8, 5u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8,
112u8, 16u8, 67u8, 97u8, 108u8, 108u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 96u8,
115u8, 101u8, 116u8, 95u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 4u8, 1u8, 20u8, 108u8, 105u8,
109u8, 105u8, 116u8, 16u8, 1u8, 44u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 0u8, 0u8, 16u8, 53u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 39u8, 115u8, 32u8, 108u8, 105u8,
109u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8,
110u8, 121u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 13u8, 1u8, 42u8, 32u8,
96u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8,
114u8, 101u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 46u8, 56u8, 100u8, 105u8, 115u8, 97u8, 98u8,
108u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 12u8, 1u8, 12u8, 119u8, 104u8,
111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8,
8u8, 97u8, 116u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8,
58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 64u8, 148u8, 68u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
97u8, 116u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 109u8, 111u8,
109u8, 101u8, 110u8, 116u8, 46u8, 0u8, 65u8, 1u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
110u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 102u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 40u8, 97u8, 32u8,
34u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 34u8,
41u8, 44u8, 32u8, 105u8, 116u8, 115u8, 32u8, 114u8, 101u8, 118u8, 111u8, 99u8, 97u8, 116u8,
105u8, 111u8, 110u8, 108u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8,
32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8,
101u8, 100u8, 46u8, 0u8, 77u8, 1u8, 65u8, 110u8, 121u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8,
108u8, 101u8, 100u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 115u8, 104u8, 111u8,
117u8, 108u8, 100u8, 32u8, 78u8, 79u8, 84u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 116u8,
111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 108u8, 105u8, 107u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8,
99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 70u8,
111u8, 114u8, 93u8, 1u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 97u8,
32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 78u8,
79u8, 84u8, 32u8, 98u8, 101u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 72u8, 111u8, 119u8, 101u8, 118u8, 101u8, 114u8, 32u8,
97u8, 110u8, 121u8, 25u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8,
32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8,
98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 119u8, 111u8,
117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8,
114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8,
111u8, 110u8, 101u8, 46u8, 0u8, 81u8, 1u8, 73u8, 102u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8,
97u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8,
116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 44u8, 32u8, 121u8, 111u8, 117u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 117u8, 115u8, 101u8, 32u8, 96u8, 83u8,
101u8, 108u8, 102u8, 58u8, 58u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 124u8, 42u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 45u8, 32u8, 82u8,
101u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 105u8, 109u8, 101u8,
45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 46u8, 148u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8,
46u8, 85u8, 1u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8,
32u8, 84u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 67u8, 68u8, 68u8,
46u8, 32u8, 65u8, 115u8, 32u8, 115u8, 111u8, 111u8, 110u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8,
32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 44u8, 32u8, 116u8,
104u8, 101u8, 81u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8,
99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8,
32u8, 34u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 34u8, 32u8, 97u8, 115u8, 32u8, 96u8,
119u8, 104u8, 111u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 111u8,
110u8, 115u8, 105u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8,
117u8, 112u8, 46u8, 40u8, 97u8, 100u8, 100u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8,
1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 2u8, 20u8, 57u8, 1u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 116u8,
111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 77u8,
97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 208u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8,
110u8, 103u8, 32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 184u8, 42u8, 32u8, 96u8, 119u8, 104u8,
111u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 52u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8,
1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 3u8, 40u8, 81u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 46u8,
32u8, 77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8,
114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 65u8, 1u8, 65u8, 110u8, 121u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8,
103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8,
103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 70u8,
111u8, 114u8, 89u8, 1u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 105u8,
102u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8,
100u8, 32u8, 97u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 105u8, 116u8,
32u8, 105u8, 115u8, 97u8, 1u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 44u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 32u8, 32u8,
73u8, 110u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8,
116u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 103u8, 101u8,
110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 220u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8,
44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 116u8, 111u8, 32u8,
117u8, 115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 220u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8,
32u8, 114u8, 111u8, 111u8, 116u8, 200u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 44u8,
115u8, 119u8, 97u8, 112u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 8u8, 1u8, 24u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 12u8, 97u8, 100u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 4u8, 32u8, 220u8, 83u8, 119u8, 97u8,
112u8, 115u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8, 46u8, 0u8, 180u8, 77u8, 97u8, 121u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8,
110u8, 103u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 212u8, 42u8, 32u8, 96u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 216u8, 42u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8,
32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 96u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 96u8, 46u8, 52u8, 114u8, 101u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 4u8, 1u8, 28u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 62u8, 0u8, 5u8, 24u8, 41u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8,
105u8, 112u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8,
116u8, 44u8, 32u8, 100u8, 105u8, 115u8, 114u8, 101u8, 103u8, 97u8, 114u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 46u8, 184u8, 77u8,
97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8,
116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
216u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 140u8, 42u8,
32u8, 96u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8,
119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 76u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8,
95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 0u8, 6u8, 40u8, 77u8,
1u8, 65u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 105u8, 110u8, 103u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 111u8,
32u8, 42u8, 117u8, 110u8, 105u8, 108u8, 97u8, 116u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8,
32u8, 113u8, 117u8, 105u8, 116u8, 42u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 115u8, 117u8,
98u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 71u8, 67u8, 20u8, 118u8,
111u8, 116u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 204u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
45u8, 32u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 119u8, 104u8, 111u8, 32u8, 119u8, 97u8, 110u8,
116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 0u8, 28u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 128u8, 42u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8,
32u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 164u8, 42u8, 32u8, 76u8, 97u8,
115u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8,
0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8,
109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 213u8, 5u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 16u8, 67u8, 97u8, 108u8, 108u8, 8u8, 4u8,
84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 20u8, 72u8, 115u8, 101u8, 116u8, 95u8, 118u8, 111u8, 116u8,
101u8, 95u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 8u8, 1u8, 4u8, 110u8,
16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 4u8, 100u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 0u8, 24u8, 248u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 85u8, 1u8, 70u8, 111u8, 114u8, 32u8,
101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 109u8,
112u8, 108u8, 101u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 117u8,
115u8, 101u8, 32u8, 40u8, 49u8, 44u8, 32u8, 50u8, 41u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8,
32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 105u8, 110u8, 45u8, 101u8, 113u8, 117u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
34u8, 62u8, 61u8, 32u8, 49u8, 47u8, 50u8, 34u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 248u8, 42u8, 32u8, 96u8, 110u8, 96u8, 32u8, 45u8, 32u8,
78u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 114u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8,
101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 46u8, 1u8, 1u8, 42u8,
32u8, 96u8, 100u8, 96u8, 32u8, 45u8, 32u8, 68u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 114u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 46u8, 92u8, 115u8, 101u8, 116u8, 95u8, 114u8, 101u8, 108u8,
101u8, 97u8, 115u8, 101u8, 95u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 4u8, 1u8, 8u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 28u8, 128u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 0u8, 44u8, 35u8,
32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 192u8, 42u8, 32u8, 96u8,
105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 101u8, 108u8, 101u8,
97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 42u8,
32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8,
73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 111u8,
114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
46u8, 68u8, 115u8, 101u8, 116u8, 95u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8,
97u8, 102u8, 116u8, 101u8, 114u8, 4u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 53u8,
1u8, 1u8, 104u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8,
2u8, 16u8, 192u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 109u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 132u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8,
120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 60u8, 118u8, 111u8,
116u8, 101u8, 95u8, 111u8, 114u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 8u8,
1u8, 28u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 201u8, 5u8, 1u8, 152u8, 66u8, 111u8,
120u8, 60u8, 60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8,
121u8, 115u8, 116u8, 101u8, 109u8, 58u8, 58u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 3u8, 68u8, 21u8, 1u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8,
99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
105u8, 116u8, 115u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8, 93u8, 1u8, 65u8, 108u8, 116u8, 101u8,
114u8, 110u8, 97u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 44u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 101u8,
100u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 44u8, 29u8, 1u8, 116u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 118u8, 111u8,
116u8, 101u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8, 97u8, 115u8, 32u8, 105u8, 102u8,
32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 95u8, 98u8, 121u8, 95u8, 104u8, 97u8, 115u8, 104u8, 96u8,
32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 46u8, 0u8, 32u8, 35u8,
32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8,
96u8, 32u8, 97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 120u8, 102u8,
111u8, 114u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 105u8, 116u8, 115u8, 101u8, 108u8, 102u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 160u8,
42u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 63u8, 97u8, 1u8, 32u8, 32u8,
73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8,
116u8, 44u8, 32u8, 112u8, 97u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 96u8, 102u8, 97u8,
108u8, 115u8, 101u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8, 115u8, 117u8,
108u8, 116u8, 32u8, 105u8, 110u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 96u8, 70u8,
105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8,
96u8, 46u8, 180u8, 42u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 45u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
45u8, 1u8, 42u8, 32u8, 96u8, 70u8, 105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 108u8,
108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8,
97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 32u8, 61u8, 61u8, 32u8, 102u8, 97u8, 108u8,
115u8, 101u8, 96u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
16u8, 118u8, 111u8, 116u8, 101u8, 12u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 20u8, 105u8,
110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 28u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8,
101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 4u8, 40u8, 164u8, 86u8, 111u8,
116u8, 101u8, 115u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 96u8, 105u8,
110u8, 103u8, 108u8, 121u8, 32u8, 40u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 44u8, 32u8,
105u8, 102u8, 32u8, 96u8, 102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 41u8, 212u8, 111u8, 110u8,
32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 98u8, 121u8, 32u8, 105u8, 116u8, 115u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8,
96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 65u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8,
111u8, 110u8, 46u8, 124u8, 42u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 45u8,
32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 45u8, 1u8, 42u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 102u8, 32u8, 96u8, 116u8, 114u8, 117u8, 101u8,
96u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8,
32u8, 97u8, 32u8, 96u8, 102u8, 111u8, 114u8, 96u8, 32u8, 118u8, 111u8, 116u8, 101u8, 44u8, 32u8,
97u8, 110u8, 100u8, 32u8, 96u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 96u8, 32u8, 111u8,
116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 217u8, 5u8, 8u8, 48u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 16u8, 67u8, 97u8, 108u8, 108u8,
8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 96u8, 115u8, 101u8, 116u8, 95u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 4u8, 1u8, 20u8, 108u8, 105u8, 109u8, 105u8, 116u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 53u8,
1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 39u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8,
111u8, 114u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 99u8, 111u8,
110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8,
101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 121u8,
32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 13u8, 1u8, 42u8, 32u8, 96u8, 108u8, 105u8, 109u8,
105u8, 116u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 109u8,
97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 108u8, 121u8, 46u8, 56u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 95u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 12u8, 1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 8u8, 97u8, 116u8,
240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 64u8, 148u8, 68u8, 105u8, 115u8, 97u8, 98u8, 108u8,
101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 97u8, 116u8, 32u8,
115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 109u8, 111u8, 109u8, 101u8, 110u8,
116u8, 46u8, 0u8, 65u8, 1u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 110u8, 111u8, 116u8,
101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 102u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 40u8, 97u8, 32u8, 34u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 34u8, 41u8, 44u8, 32u8,
105u8, 116u8, 115u8, 32u8, 114u8, 101u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
108u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8,
77u8, 1u8, 65u8, 110u8, 121u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
78u8, 79u8, 84u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
116u8, 32u8, 108u8, 105u8, 107u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 70u8, 111u8, 114u8, 93u8, 1u8,
105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 97u8, 32u8, 100u8, 105u8,
115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 78u8, 79u8, 84u8, 32u8, 98u8,
101u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 103u8, 101u8, 110u8, 101u8,
114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 46u8, 32u8, 72u8, 111u8, 119u8, 101u8, 118u8, 101u8, 114u8, 32u8, 97u8, 110u8, 121u8,
25u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8,
114u8, 101u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 97u8,
115u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 111u8, 110u8, 101u8, 46u8, 0u8,
81u8, 1u8, 73u8, 102u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8,
111u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 97u8,
110u8, 121u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 117u8, 115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 124u8,
42u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 118u8, 111u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8,
112u8, 46u8, 148u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 85u8, 1u8, 42u8, 32u8,
96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 105u8, 109u8,
101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8,
119u8, 104u8, 111u8, 96u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 67u8, 68u8, 68u8, 46u8, 32u8, 65u8, 115u8, 32u8,
115u8, 111u8, 111u8, 110u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 81u8, 1u8,
103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 34u8, 105u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 34u8, 32u8, 97u8, 115u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8,
101u8, 114u8, 101u8, 100u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 40u8,
97u8, 100u8, 100u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8, 104u8,
111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
2u8, 20u8, 57u8, 1u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 77u8, 97u8, 121u8, 32u8, 111u8,
110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 208u8, 42u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8,
32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8,
114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 184u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 52u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8,
104u8, 111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 3u8, 40u8, 81u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 46u8, 32u8,
77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8,
111u8, 111u8, 116u8, 46u8, 0u8, 65u8, 1u8, 65u8, 110u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 70u8, 111u8,
114u8, 89u8, 1u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 105u8, 102u8,
32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8,
32u8, 97u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 105u8, 116u8, 32u8,
105u8, 115u8, 97u8, 1u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 44u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 32u8, 32u8, 73u8,
110u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8,
116u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 103u8, 101u8,
110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 220u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8,
44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 116u8, 111u8, 32u8,
117u8, 115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 220u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8,
32u8, 114u8, 111u8, 111u8, 116u8, 200u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 44u8,
115u8, 119u8, 97u8, 112u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 8u8, 1u8, 24u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 12u8, 97u8, 100u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 4u8, 32u8, 220u8, 83u8, 119u8, 97u8,
112u8, 115u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8, 46u8, 0u8, 180u8, 77u8, 97u8, 121u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8,
110u8, 103u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 212u8, 42u8, 32u8, 96u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 216u8, 42u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8,
32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 96u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 96u8, 46u8, 52u8, 114u8, 101u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 4u8, 1u8, 28u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 62u8, 0u8, 5u8, 24u8, 41u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8,
105u8, 112u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8,
116u8, 44u8, 32u8, 100u8, 105u8, 115u8, 114u8, 101u8, 103u8, 97u8, 114u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 46u8, 184u8, 77u8,
97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8,
116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
216u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 140u8, 42u8,
32u8, 96u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8,
119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 76u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8,
95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 0u8, 6u8, 40u8, 77u8,
1u8, 65u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 105u8, 110u8, 103u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 111u8,
32u8, 42u8, 117u8, 110u8, 105u8, 108u8, 97u8, 116u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8,
32u8, 113u8, 117u8, 105u8, 116u8, 42u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 115u8, 117u8,
98u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 71u8, 67u8, 20u8, 118u8,
111u8, 116u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 204u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
45u8, 32u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 119u8, 104u8, 111u8, 32u8, 119u8, 97u8, 110u8,
116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 0u8, 28u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 128u8, 42u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8,
32u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 164u8, 42u8, 32u8, 76u8, 97u8,
115u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8,
0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8,
109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 221u8, 5u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 16u8, 67u8, 97u8, 108u8, 108u8, 8u8, 4u8,
84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 20u8, 72u8, 115u8, 101u8, 116u8, 95u8, 118u8, 111u8, 116u8,
101u8, 95u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 8u8, 1u8, 4u8, 110u8,
16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 4u8, 100u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 0u8, 24u8, 248u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 85u8, 1u8, 70u8, 111u8, 114u8, 32u8,
101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 109u8,
112u8, 108u8, 101u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 117u8,
115u8, 101u8, 32u8, 40u8, 49u8, 44u8, 32u8, 50u8, 41u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8,
32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 105u8, 110u8, 45u8, 101u8, 113u8, 117u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
34u8, 62u8, 61u8, 32u8, 49u8, 47u8, 50u8, 34u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 248u8, 42u8, 32u8, 96u8, 110u8, 96u8, 32u8, 45u8, 32u8,
78u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 114u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8,
101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 46u8, 1u8, 1u8, 42u8,
32u8, 96u8, 100u8, 96u8, 32u8, 45u8, 32u8, 68u8, 101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 114u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 46u8, 92u8, 115u8, 101u8, 116u8, 95u8, 114u8, 101u8, 108u8,
101u8, 97u8, 115u8, 101u8, 95u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 4u8, 1u8, 8u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 28u8, 128u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 0u8, 44u8, 35u8,
32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 192u8, 42u8, 32u8, 96u8,
105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 114u8, 101u8, 108u8, 101u8,
97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 42u8,
32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8,
73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 111u8,
114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
46u8, 68u8, 115u8, 101u8, 116u8, 95u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8,
97u8, 102u8, 116u8, 101u8, 114u8, 4u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 53u8,
1u8, 1u8, 104u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8,
2u8, 16u8, 192u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 109u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 132u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8,
120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 60u8, 118u8, 111u8,
116u8, 101u8, 95u8, 111u8, 114u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 8u8,
1u8, 28u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 201u8, 5u8, 1u8, 152u8, 66u8, 111u8,
120u8, 60u8, 60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8,
121u8, 115u8, 116u8, 101u8, 109u8, 58u8, 58u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8,
58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 3u8, 68u8, 21u8, 1u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8,
99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
105u8, 116u8, 115u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8, 93u8, 1u8, 65u8, 108u8, 116u8, 101u8,
114u8, 110u8, 97u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 44u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 101u8,
100u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 44u8, 29u8, 1u8, 116u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 118u8, 111u8,
116u8, 101u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 44u8, 32u8, 97u8, 115u8, 32u8, 105u8, 102u8,
32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 95u8, 98u8, 121u8, 95u8, 104u8, 97u8, 115u8, 104u8, 96u8,
32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 46u8, 0u8, 32u8, 35u8,
32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8,
96u8, 32u8, 97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 120u8, 102u8,
111u8, 114u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 105u8, 116u8, 115u8, 101u8, 108u8, 102u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 160u8,
42u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 63u8, 97u8, 1u8, 32u8, 32u8,
73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8,
116u8, 44u8, 32u8, 112u8, 97u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 96u8, 102u8, 97u8,
108u8, 115u8, 101u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8, 115u8, 117u8,
108u8, 116u8, 32u8, 105u8, 110u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 96u8, 70u8,
105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8,
96u8, 46u8, 180u8, 42u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 45u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
45u8, 1u8, 42u8, 32u8, 96u8, 70u8, 105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 108u8,
108u8, 96u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8,
97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 32u8, 61u8, 61u8, 32u8, 102u8, 97u8, 108u8,
115u8, 101u8, 96u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
16u8, 118u8, 111u8, 116u8, 101u8, 12u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 20u8, 105u8,
110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 28u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8,
101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 4u8, 40u8, 164u8, 86u8, 111u8,
116u8, 101u8, 115u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 96u8, 105u8,
110u8, 103u8, 108u8, 121u8, 32u8, 40u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 44u8, 32u8,
105u8, 102u8, 32u8, 96u8, 102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 41u8, 212u8, 111u8, 110u8,
32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 98u8, 121u8, 32u8, 105u8, 116u8, 115u8, 32u8, 104u8, 97u8, 115u8, 104u8, 44u8, 32u8,
96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 65u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8,
111u8, 110u8, 46u8, 124u8, 42u8, 32u8, 96u8, 105u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 45u8,
32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 45u8, 1u8, 42u8, 32u8, 96u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 102u8, 32u8, 96u8, 116u8, 114u8, 117u8, 101u8,
96u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8,
32u8, 97u8, 32u8, 96u8, 102u8, 111u8, 114u8, 96u8, 32u8, 118u8, 111u8, 116u8, 101u8, 44u8, 32u8,
97u8, 110u8, 100u8, 32u8, 96u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 96u8, 32u8, 111u8,
116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 9u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 225u8, 5u8, 8u8, 48u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 16u8, 67u8, 97u8, 108u8, 108u8,
8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 96u8, 115u8, 101u8, 116u8, 95u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 4u8, 1u8, 20u8, 108u8, 105u8, 109u8, 105u8, 116u8, 16u8, 1u8, 44u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 53u8,
1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 39u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8,
111u8, 114u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 99u8, 111u8,
110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8,
101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 121u8,
32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 13u8, 1u8, 42u8, 32u8, 96u8, 108u8, 105u8, 109u8,
105u8, 116u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 109u8,
97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 108u8, 121u8, 46u8, 56u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 95u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 12u8, 1u8, 12u8, 119u8, 104u8, 111u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 8u8, 97u8, 116u8,
240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 64u8, 148u8, 68u8, 105u8, 115u8, 97u8, 98u8, 108u8,
101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 97u8, 116u8, 32u8,
115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 109u8, 111u8, 109u8, 101u8, 110u8,
116u8, 46u8, 0u8, 65u8, 1u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 110u8, 111u8, 116u8,
101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 102u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
114u8, 101u8, 118u8, 111u8, 107u8, 101u8, 100u8, 32u8, 40u8, 97u8, 32u8, 34u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 34u8, 41u8, 44u8, 32u8,
105u8, 116u8, 115u8, 32u8, 114u8, 101u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
108u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8,
77u8, 1u8, 65u8, 110u8, 121u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
78u8, 79u8, 84u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
116u8, 32u8, 108u8, 105u8, 107u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 70u8, 111u8, 114u8, 93u8, 1u8,
105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 97u8, 32u8, 100u8, 105u8,
115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 78u8, 79u8, 84u8, 32u8, 98u8,
101u8, 32u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 103u8, 101u8, 110u8, 101u8,
114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 46u8, 32u8, 72u8, 111u8, 119u8, 101u8, 118u8, 101u8, 114u8, 32u8, 97u8, 110u8, 121u8,
25u8, 1u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8,
114u8, 101u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 97u8,
115u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 111u8, 110u8, 101u8, 46u8, 0u8,
81u8, 1u8, 73u8, 102u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8,
111u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 97u8,
110u8, 121u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 117u8, 115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 124u8,
42u8, 32u8, 96u8, 97u8, 116u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 118u8, 111u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 105u8, 109u8, 101u8, 45u8, 115u8, 116u8, 97u8, 109u8,
112u8, 46u8, 148u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 85u8, 1u8, 42u8, 32u8,
96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 84u8, 105u8, 109u8,
101u8, 45u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8,
119u8, 104u8, 111u8, 96u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 67u8, 68u8, 68u8, 46u8, 32u8, 65u8, 115u8, 32u8,
115u8, 111u8, 111u8, 110u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 81u8, 1u8,
103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 34u8, 105u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 34u8, 32u8, 97u8, 115u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8,
101u8, 114u8, 101u8, 100u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 40u8,
97u8, 100u8, 100u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8, 104u8,
111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
2u8, 20u8, 57u8, 1u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 32u8, 77u8, 97u8, 121u8, 32u8, 111u8,
110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 208u8, 42u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8,
32u8, 96u8, 65u8, 100u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8,
114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 184u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8,
32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 52u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 4u8, 1u8, 12u8, 119u8,
104u8, 111u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8,
100u8, 0u8, 3u8, 40u8, 81u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 46u8, 32u8,
77u8, 97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8,
111u8, 111u8, 116u8, 46u8, 0u8, 65u8, 1u8, 65u8, 110u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 32u8, 70u8, 111u8,
114u8, 89u8, 1u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 44u8, 32u8, 105u8, 102u8,
32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8,
32u8, 97u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 105u8, 116u8, 32u8,
105u8, 115u8, 97u8, 1u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 44u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 32u8, 32u8, 73u8,
110u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 97u8, 110u8,
116u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 103u8, 101u8,
110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 220u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8,
44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 116u8, 111u8, 32u8,
117u8, 115u8, 101u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 220u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8,
32u8, 114u8, 111u8, 111u8, 116u8, 200u8, 42u8, 32u8, 96u8, 119u8, 104u8, 111u8, 96u8, 32u8, 45u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 44u8,
115u8, 119u8, 97u8, 112u8, 95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 8u8, 1u8, 24u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 12u8, 97u8, 100u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 4u8, 32u8, 220u8, 83u8, 119u8, 97u8,
112u8, 115u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8, 46u8, 0u8, 180u8, 77u8, 97u8, 121u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8,
110u8, 103u8, 32u8, 96u8, 83u8, 119u8, 97u8, 112u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 212u8, 42u8, 32u8, 96u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 46u8, 216u8, 42u8, 32u8, 96u8, 97u8, 100u8, 100u8, 96u8,
32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 112u8, 108u8, 97u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 96u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 96u8, 46u8, 52u8, 114u8, 101u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 4u8, 1u8, 28u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 62u8, 0u8, 5u8, 24u8, 41u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8,
105u8, 112u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8,
116u8, 44u8, 32u8, 100u8, 105u8, 115u8, 114u8, 101u8, 103u8, 97u8, 114u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 46u8, 184u8, 77u8,
97u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8,
116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
216u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8,
116u8, 105u8, 110u8, 103u8, 32u8, 96u8, 82u8, 101u8, 115u8, 101u8, 116u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 111u8, 114u8, 32u8, 114u8, 111u8, 111u8, 116u8, 140u8, 42u8,
32u8, 96u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8,
119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 76u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8,
95u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 0u8, 6u8, 40u8, 77u8,
1u8, 65u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 105u8, 110u8, 103u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 111u8,
32u8, 42u8, 117u8, 110u8, 105u8, 108u8, 97u8, 116u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8,
32u8, 113u8, 117u8, 105u8, 116u8, 42u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 115u8, 117u8,
98u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 71u8, 67u8, 20u8, 118u8,
111u8, 116u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 204u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
45u8, 32u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 119u8, 104u8, 111u8, 32u8, 119u8, 97u8, 110u8,
116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 0u8, 28u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 0u8, 128u8, 42u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8,
32u8, 97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 164u8, 42u8, 32u8, 76u8, 97u8,
115u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
97u8, 98u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8,
0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8,
109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 229u8, 5u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8,
0u8, 1u8, 76u8, 60u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 8u8, 1u8, 28u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8,
101u8, 1u8, 1u8, 112u8, 86u8, 101u8, 99u8, 60u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8,
114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
62u8, 62u8, 0u8, 1u8, 52u8, 115u8, 105u8, 103u8, 115u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 0u8, 20u8, 72u8, 67u8, 114u8,
101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 165u8, 1u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 96u8, 32u8,
45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 40u8, 84u8,
104u8, 101u8, 121u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
99u8, 101u8, 112u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8,
101u8, 121u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 108u8,
121u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 41u8, 46u8, 25u8, 1u8, 42u8, 32u8, 96u8, 115u8,
105u8, 103u8, 115u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 96u8, 32u8,
45u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 105u8,
103u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 45u8, 115u8, 105u8, 103u8, 32u8, 116u8, 120u8, 46u8, 152u8, 99u8, 114u8, 101u8,
97u8, 116u8, 101u8, 95u8, 111u8, 114u8, 95u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8,
95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 97u8, 115u8, 95u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 16u8, 1u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
201u8, 5u8, 1u8, 64u8, 66u8, 111u8, 120u8, 60u8, 84u8, 58u8, 58u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 62u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8,
1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8,
101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8,
115u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 32u8, 61u8, 1u8, 67u8,
114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8,
102u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8,
97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 102u8,
32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8,
105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 156u8, 42u8, 32u8,
96u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8,
111u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 46u8, 172u8, 42u8, 32u8, 96u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 5u8, 1u8, 42u8, 32u8, 96u8,
97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8, 115u8, 101u8, 96u8, 32u8, 45u8, 32u8, 67u8,
108u8, 111u8, 115u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
111u8, 110u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 105u8, 110u8, 103u8, 32u8, 101u8,
110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 118u8,
111u8, 116u8, 101u8, 115u8, 46u8, 49u8, 1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
105u8, 115u8, 32u8, 49u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 109u8, 96u8,
32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 116u8, 104u8, 101u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8, 108u8,
121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 132u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 95u8, 111u8, 114u8, 95u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8,
101u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 97u8, 115u8, 95u8,
107u8, 101u8, 121u8, 16u8, 1u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 201u8, 5u8, 1u8, 64u8, 66u8,
111u8, 120u8, 60u8, 84u8, 58u8, 58u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 62u8,
0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8,
1u8, 40u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8, 115u8, 101u8, 21u8, 1u8, 1u8,
16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 2u8, 32u8, 61u8, 1u8, 67u8, 114u8, 101u8, 97u8, 116u8,
101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8,
32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 101u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8, 104u8,
97u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8,
32u8, 45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 46u8, 156u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8, 111u8,
110u8, 46u8, 172u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8,
32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8,
109u8, 101u8, 46u8, 5u8, 1u8, 42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8,
111u8, 115u8, 101u8, 96u8, 32u8, 45u8, 32u8, 67u8, 108u8, 111u8, 115u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 111u8, 110u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 118u8, 105u8, 110u8, 103u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8,
114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 46u8, 49u8,
1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 49u8, 32u8, 111u8,
117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 109u8, 96u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8,
109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 101u8, 120u8, 101u8,
99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 108u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 97u8, 115u8, 95u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 16u8, 1u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 201u8,
5u8, 1u8, 64u8, 66u8, 111u8, 120u8, 60u8, 84u8, 58u8, 58u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 62u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8,
68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8, 115u8,
101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 3u8, 32u8, 108u8, 67u8, 114u8,
101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 128u8, 42u8, 32u8, 96u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 77u8, 117u8, 108u8,
116u8, 105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8,
156u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8, 32u8, 45u8,
32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 98u8,
101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 46u8, 172u8, 42u8, 32u8,
96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8, 32u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 5u8, 1u8,
42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8, 115u8, 101u8, 96u8, 32u8,
45u8, 32u8, 67u8, 108u8, 111u8, 115u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 111u8, 110u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 105u8, 110u8,
103u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8,
116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 46u8, 49u8, 1u8, 73u8, 102u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 49u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8,
32u8, 96u8, 109u8, 96u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8,
32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8,
97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8,
46u8, 88u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 95u8, 97u8, 115u8, 95u8, 107u8, 101u8, 121u8, 16u8, 1u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 201u8, 5u8, 1u8, 64u8, 66u8, 111u8, 120u8, 60u8, 84u8, 58u8, 58u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 62u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 97u8, 117u8, 116u8, 111u8, 95u8,
99u8, 108u8, 111u8, 115u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 4u8,
32u8, 108u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8, 32u8,
45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 46u8, 156u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8, 111u8,
110u8, 46u8, 172u8, 42u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 45u8,
32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8,
109u8, 101u8, 46u8, 5u8, 1u8, 42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8,
111u8, 115u8, 101u8, 96u8, 32u8, 45u8, 32u8, 67u8, 108u8, 111u8, 115u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 111u8, 110u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 118u8, 105u8, 110u8, 103u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8,
114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 46u8, 49u8,
1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 49u8, 32u8, 111u8,
117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 109u8, 96u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8,
109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 101u8, 120u8, 101u8,
99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 76u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8,
95u8, 97u8, 115u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 8u8, 1u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 5u8,
24u8, 228u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8,
32u8, 45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 46u8, 164u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 101u8, 46u8, 1u8, 1u8, 73u8, 102u8, 32u8, 113u8, 117u8, 111u8, 114u8, 117u8, 109u8,
32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 44u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8,
101u8, 108u8, 121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 56u8,
97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 95u8, 97u8, 115u8, 95u8, 107u8, 101u8, 121u8,
8u8, 1u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8,
52u8, 0u8, 6u8, 24u8, 49u8, 1u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 115u8, 32u8,
97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 40u8, 96u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 41u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 128u8, 42u8, 32u8, 96u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 77u8, 117u8, 108u8, 116u8,
105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 164u8,
42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8,
96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8,
32u8, 116u8, 111u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 46u8, 1u8, 1u8, 73u8,
102u8, 32u8, 113u8, 117u8, 111u8, 114u8, 117u8, 109u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8,
97u8, 99u8, 104u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8,
105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 101u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 72u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8,
95u8, 97u8, 115u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 8u8, 1u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 7u8,
24u8, 224u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8, 32u8,
45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 46u8, 160u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8,
99u8, 116u8, 46u8, 1u8, 1u8, 73u8, 102u8, 32u8, 113u8, 117u8, 111u8, 114u8, 117u8, 109u8, 32u8,
105u8, 115u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8,
101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8,
108u8, 121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 52u8, 114u8,
101u8, 106u8, 101u8, 99u8, 116u8, 95u8, 97u8, 115u8, 95u8, 107u8, 101u8, 121u8, 8u8, 1u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 8u8,
24u8, 45u8, 1u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 40u8, 96u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 96u8, 41u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 128u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 32u8,
97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 160u8, 42u8, 32u8, 96u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8,
101u8, 106u8, 101u8, 99u8, 116u8, 46u8, 1u8, 1u8, 73u8, 102u8, 32u8, 113u8, 117u8, 111u8, 114u8,
117u8, 109u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 44u8,
32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8,
97u8, 116u8, 101u8, 108u8, 121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8,
46u8, 136u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 95u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 95u8, 97u8, 115u8, 95u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 4u8, 1u8, 28u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 9u8, 16u8, 13u8, 1u8, 65u8,
99u8, 99u8, 101u8, 112u8, 116u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 116u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 39u8, 115u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 172u8, 42u8, 32u8, 96u8, 97u8, 117u8,
116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 65u8, 117u8, 116u8, 104u8, 32u8, 105u8,
100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 116u8, 97u8, 99u8, 99u8, 101u8,
112u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 95u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 95u8, 97u8, 115u8, 95u8, 107u8, 101u8, 121u8, 4u8, 1u8, 28u8, 97u8,
117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 10u8, 16u8,
41u8, 1u8, 65u8, 99u8, 99u8, 101u8, 112u8, 116u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
39u8, 115u8, 32u8, 107u8, 101u8, 121u8, 32u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 41u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 172u8, 42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8,
45u8, 32u8, 65u8, 117u8, 116u8, 104u8, 32u8, 105u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 76u8, 97u8, 100u8, 100u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 95u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 4u8, 1u8, 24u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 105u8, 1u8, 1u8, 92u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8,
114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
62u8, 0u8, 11u8, 16u8, 41u8, 1u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
32u8, 105u8, 116u8, 115u8, 101u8, 108u8, 102u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 120u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8,
121u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 46u8, 88u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 95u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 4u8, 1u8, 24u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 105u8, 1u8,
1u8, 92u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 12u8, 16u8, 61u8, 1u8,
82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
32u8, 105u8, 116u8, 115u8, 101u8, 108u8, 102u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 132u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8,
121u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 46u8, 128u8, 97u8,
100u8, 100u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 95u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 115u8, 95u8, 118u8, 105u8, 97u8, 95u8, 99u8, 114u8, 101u8, 97u8,
116u8, 111u8, 114u8, 8u8, 1u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
28u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 101u8, 1u8, 1u8, 112u8, 86u8, 101u8, 99u8,
60u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 13u8, 36u8, 69u8, 1u8,
65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 36u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 156u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 32u8,
115u8, 105u8, 103u8, 132u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8,
96u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 105u8, 101u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 164u8, 96u8, 57u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8,
48u8, 48u8, 32u8, 43u8, 32u8, 51u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 42u8,
32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8,
96u8, 140u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 95u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 95u8, 118u8, 105u8,
97u8, 95u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 8u8, 1u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 28u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
115u8, 101u8, 1u8, 1u8, 112u8, 86u8, 101u8, 99u8, 60u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8,
111u8, 114u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 62u8, 0u8, 14u8, 36u8, 140u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8,
97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 240u8,
84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 111u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 156u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8,
32u8, 45u8, 32u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 144u8,
42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 111u8, 114u8, 105u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 164u8, 96u8, 57u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8,
32u8, 43u8, 32u8, 51u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 42u8, 32u8, 115u8,
105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 80u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 115u8, 105u8, 103u8, 115u8, 95u8, 114u8, 101u8,
113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 4u8, 1u8, 52u8, 115u8, 105u8, 103u8, 115u8, 95u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8,
15u8, 20u8, 77u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8,
98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 64u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 105u8, 116u8, 115u8,
101u8, 108u8, 102u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 216u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 115u8, 95u8, 114u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 100u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8, 119u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8,
46u8, 92u8, 109u8, 97u8, 107u8, 101u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 95u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 4u8, 1u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 16u8, 20u8, 105u8, 1u8, 65u8, 100u8, 100u8,
115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 97u8,
115u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 100u8, 105u8, 100u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 100u8, 105u8, 100u8, 32u8, 105u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 36u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 128u8, 42u8,
32u8, 96u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 32u8, 115u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8,
101u8, 115u8, 115u8, 84u8, 109u8, 97u8, 107u8, 101u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 95u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 8u8, 1u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 80u8, 111u8, 112u8, 116u8, 105u8, 111u8,
110u8, 97u8, 108u8, 95u8, 99u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8,
100u8, 240u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 54u8, 52u8, 62u8,
0u8, 17u8, 20u8, 93u8, 1u8, 65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 100u8, 105u8,
100u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 64u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 132u8, 42u8, 32u8, 96u8, 109u8, 117u8, 108u8,
116u8, 105u8, 95u8, 115u8, 105u8, 103u8, 96u8, 32u8, 45u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 32u8, 115u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 104u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 100u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 16u8, 1u8,
32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8,
1u8, 48u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 95u8, 100u8, 105u8, 100u8,
120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8,
64u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 95u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 18u8, 4u8,
113u8, 1u8, 82u8, 111u8, 111u8, 116u8, 32u8, 99u8, 97u8, 108u8, 108u8, 97u8, 98u8, 108u8, 101u8,
32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 44u8, 32u8, 117u8, 115u8,
101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8,
110u8, 97u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 110u8, 103u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 100u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8,
46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8,
32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8,
117u8, 108u8, 101u8, 46u8, 233u8, 5u8, 8u8, 52u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8,
1u8, 68u8, 68u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8,
111u8, 108u8, 108u8, 101u8, 114u8, 4u8, 1u8, 40u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8,
108u8, 108u8, 101u8, 114u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 16u8, 160u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8,
114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 100u8,
109u8, 105u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8,
105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 48u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 97u8, 100u8, 109u8, 105u8, 110u8, 4u8, 1u8, 20u8,
97u8, 100u8, 109u8, 105u8, 110u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 16u8, 116u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 97u8,
100u8, 109u8, 105u8, 110u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8,
109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 60u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 116u8,
105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 4u8, 1u8, 32u8, 116u8, 105u8, 109u8, 101u8,
108u8, 111u8, 99u8, 107u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8,
78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 2u8, 16u8, 112u8, 67u8, 104u8, 97u8, 110u8, 103u8,
101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8,
107u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8,
109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 24u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 0u8, 3u8, 20u8,
93u8, 1u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 105u8,
110u8, 103u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8,
103u8, 101u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 32u8, 105u8, 102u8, 32u8, 105u8,
116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 32u8, 87u8, 104u8, 101u8,
110u8, 32u8, 116u8, 104u8, 101u8, 73u8, 1u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8,
105u8, 115u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 44u8, 32u8, 97u8, 116u8, 116u8,
101u8, 109u8, 112u8, 116u8, 101u8, 100u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 103u8, 101u8, 116u8, 32u8, 112u8, 111u8, 115u8, 116u8,
112u8, 111u8, 110u8, 101u8, 100u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8,
111u8, 102u8, 32u8, 103u8, 101u8, 116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 104u8, 97u8, 110u8,
100u8, 108u8, 101u8, 100u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8,
105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 32u8,
117u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 0u8, 4u8, 16u8, 17u8, 1u8, 85u8, 110u8,
102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 105u8, 110u8, 103u8,
32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8,
105u8, 115u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8,
109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 76u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 98u8,
114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 8u8, 1u8, 24u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 1u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 16u8, 1u8, 56u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 5u8,
20u8, 104u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 115u8, 46u8,
0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8,
66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 164u8, 45u8, 32u8, 96u8, 68u8, 105u8,
118u8, 105u8, 115u8, 105u8, 111u8, 110u8, 66u8, 121u8, 90u8, 101u8, 114u8, 111u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8,
105u8, 115u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 88u8, 99u8, 104u8, 97u8, 110u8, 103u8,
101u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 101u8, 120u8, 101u8, 109u8, 112u8,
116u8, 101u8, 100u8, 4u8, 1u8, 32u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 101u8, 100u8,
237u8, 5u8, 1u8, 92u8, 86u8, 101u8, 99u8, 60u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 98u8, 111u8, 111u8, 108u8, 41u8, 62u8, 0u8, 6u8, 16u8,
156u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8,
114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 101u8, 120u8,
101u8, 109u8, 112u8, 116u8, 101u8, 100u8, 32u8, 108u8, 105u8, 115u8, 116u8, 46u8, 0u8, 36u8,
35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8,
100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8,
83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 88u8, 102u8, 111u8, 114u8, 99u8, 101u8, 95u8,
104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8,
116u8, 120u8, 4u8, 1u8, 36u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 113u8,
1u8, 1u8, 88u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 7u8, 20u8, 37u8, 1u8, 70u8,
111u8, 114u8, 99u8, 101u8, 115u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 105u8, 110u8, 103u8,
32u8, 97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
98u8, 121u8, 32u8, 98u8, 121u8, 112u8, 97u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8,
46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8, 45u8, 32u8,
96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8,
96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8,
78u8, 111u8, 86u8, 97u8, 108u8, 105u8, 100u8, 67u8, 100u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 46u8, 114u8, 101u8, 99u8,
105u8, 112u8, 105u8, 101u8, 110u8, 116u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 46u8, 92u8, 98u8, 97u8,
116u8, 99u8, 104u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 95u8, 98u8, 114u8,
105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 4u8, 1u8, 40u8, 98u8, 114u8, 105u8, 100u8, 103u8,
101u8, 95u8, 116u8, 120u8, 115u8, 245u8, 5u8, 1u8, 108u8, 86u8, 101u8, 99u8, 60u8, 66u8, 114u8,
105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 8u8, 36u8, 69u8, 1u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 115u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8,
111u8, 102u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8,
118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 112u8, 114u8, 111u8, 99u8,
101u8, 115u8, 115u8, 101u8, 100u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 77u8, 1u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 99u8, 97u8, 117u8, 115u8,
101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 44u8, 32u8, 105u8,
110u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8,
116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8,
32u8, 114u8, 101u8, 115u8, 116u8, 32u8, 111u8, 102u8, 112u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8,
114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 101u8, 100u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 200u8, 45u8, 32u8, 96u8, 67u8, 111u8, 110u8, 116u8, 114u8,
111u8, 108u8, 108u8, 101u8, 114u8, 78u8, 111u8, 116u8, 83u8, 101u8, 116u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 115u8,
96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 115u8, 101u8, 116u8, 46u8, 0u8,
32u8, 35u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 176u8, 96u8, 53u8, 48u8, 48u8, 95u8,
48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 43u8, 32u8, 55u8, 95u8, 48u8, 48u8, 48u8, 95u8,
48u8, 48u8, 48u8, 32u8, 42u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8,
115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 68u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 101u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 4u8, 1u8, 36u8,
98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 113u8, 1u8, 1u8, 88u8, 66u8, 114u8,
105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 9u8, 24u8, 73u8, 1u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 101u8, 115u8, 32u8, 97u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8,
32u8, 109u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 85u8, 1u8, 98u8, 114u8, 105u8, 100u8, 103u8,
101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 110u8, 101u8, 119u8, 32u8, 111u8, 114u8,
32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 97u8, 110u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 152u8, 116u8, 114u8, 97u8,
110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 200u8, 45u8, 32u8, 96u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8,
108u8, 101u8, 114u8, 78u8, 111u8, 116u8, 83u8, 101u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 115u8, 96u8, 32u8,
119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 115u8, 101u8, 116u8, 46u8, 64u8, 104u8,
97u8, 110u8, 100u8, 108u8, 101u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8,
120u8, 4u8, 1u8, 36u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 113u8, 1u8,
1u8, 88u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 10u8, 24u8, 192u8, 72u8, 97u8,
110u8, 100u8, 108u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 101u8, 100u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
25u8, 1u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 99u8, 111u8,
110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 96u8, 32u8, 111u8, 114u8, 32u8, 32u8,
96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8, 110u8, 96u8, 46u8, 236u8,
45u8, 32u8, 96u8, 84u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 84u8,
120u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
32u8, 105u8, 115u8, 32u8, 96u8, 84u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 101u8,
100u8, 96u8, 46u8, 9u8, 1u8, 45u8, 32u8, 96u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8,
100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
32u8, 105u8, 115u8, 32u8, 96u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 96u8, 46u8, 40u8,
102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 116u8, 120u8, 115u8, 4u8, 1u8, 40u8, 98u8, 114u8,
105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 115u8, 245u8, 5u8, 1u8, 108u8, 86u8, 101u8, 99u8,
60u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 11u8, 32u8, 136u8, 70u8, 114u8,
101u8, 101u8, 122u8, 101u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 114u8,
105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 115u8, 46u8, 133u8, 1u8, 73u8, 102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 98u8, 114u8,
105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 120u8, 110u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 32u8,
116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 106u8, 117u8, 115u8, 116u8,
32u8, 105u8, 103u8, 110u8, 111u8, 114u8, 101u8, 32u8, 105u8, 116u8, 32u8, 97u8, 110u8, 100u8,
32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8,
111u8, 110u8, 101u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8,
105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8,
32u8, 35u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 176u8, 96u8, 52u8, 48u8, 48u8, 95u8,
48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 43u8, 32u8, 50u8, 95u8, 48u8, 48u8, 48u8, 95u8,
48u8, 48u8, 48u8, 32u8, 42u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8,
115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 48u8, 117u8, 110u8, 102u8, 114u8, 101u8,
101u8, 122u8, 101u8, 95u8, 116u8, 120u8, 115u8, 4u8, 1u8, 40u8, 98u8, 114u8, 105u8, 100u8, 103u8,
101u8, 95u8, 116u8, 120u8, 115u8, 245u8, 5u8, 1u8, 108u8, 86u8, 101u8, 99u8, 60u8, 66u8, 114u8,
105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 12u8, 32u8, 144u8, 85u8, 110u8, 102u8, 114u8, 101u8,
101u8, 122u8, 101u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 46u8, 133u8, 1u8, 73u8, 102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 32u8, 116u8, 120u8, 110u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 32u8, 116u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 106u8, 117u8, 115u8, 116u8, 32u8,
105u8, 103u8, 110u8, 111u8, 114u8, 101u8, 32u8, 105u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8,
112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 111u8,
110u8, 101u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8,
45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8,
110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 32u8,
35u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 176u8, 96u8, 52u8, 48u8, 48u8, 95u8, 48u8,
48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 43u8, 32u8, 55u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8,
48u8, 48u8, 32u8, 42u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 115u8,
46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 104u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8,
95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 95u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 4u8, 1u8, 36u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8,
95u8, 116u8, 120u8, 113u8, 1u8, 1u8, 88u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8,
60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8,
13u8, 24u8, 153u8, 1u8, 82u8, 111u8, 111u8, 116u8, 32u8, 99u8, 97u8, 108u8, 108u8, 97u8, 98u8,
108u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 44u8, 32u8,
117u8, 115u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 116u8,
101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8,
104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 100u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 101u8,
100u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 152u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 248u8,
45u8, 32u8, 96u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 65u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 32u8, 105u8, 115u8, 32u8, 96u8, 72u8, 97u8, 110u8,
100u8, 108u8, 101u8, 100u8, 96u8, 46u8, 188u8, 45u8, 32u8, 96u8, 70u8, 114u8, 111u8, 122u8,
101u8, 110u8, 84u8, 120u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 32u8,
105u8, 115u8, 32u8, 96u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 96u8, 46u8, 64u8, 97u8, 100u8,
100u8, 95u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 97u8, 100u8, 109u8, 105u8, 110u8,
4u8, 1u8, 48u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 97u8, 100u8, 109u8, 105u8, 110u8,
0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
14u8, 16u8, 76u8, 65u8, 100u8, 100u8, 32u8, 97u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8,
32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8,
110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8,
97u8, 100u8, 109u8, 105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 76u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 102u8, 114u8, 101u8, 101u8,
122u8, 101u8, 95u8, 97u8, 100u8, 109u8, 105u8, 110u8, 4u8, 1u8, 48u8, 102u8, 114u8, 101u8, 101u8,
122u8, 101u8, 95u8, 97u8, 100u8, 109u8, 105u8, 110u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 15u8, 16u8, 88u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 97u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 97u8,
100u8, 109u8, 105u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 224u8, 45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8,
105u8, 110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 40u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 116u8, 120u8, 115u8, 4u8, 1u8, 40u8, 98u8, 114u8,
105u8, 100u8, 103u8, 101u8, 95u8, 116u8, 120u8, 115u8, 245u8, 5u8, 1u8, 108u8, 86u8, 101u8, 99u8,
60u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 62u8, 0u8, 16u8, 20u8, 132u8, 82u8, 101u8,
109u8, 111u8, 118u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 224u8,
45u8, 32u8, 96u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 97u8, 100u8, 109u8, 105u8,
110u8, 40u8, 41u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 208u8, 45u8,
32u8, 96u8, 78u8, 111u8, 116u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 96u8, 32u8, 105u8,
102u8, 32u8, 97u8, 32u8, 116u8, 120u8, 32u8, 105u8, 110u8, 32u8, 96u8, 98u8, 114u8, 105u8, 100u8,
103u8, 101u8, 95u8, 116u8, 120u8, 115u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8,
0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8,
109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 237u8, 5u8, 0u8, 0u8, 2u8, 241u8, 5u8, 0u8, 241u8, 5u8, 0u8, 0u8, 4u8, 8u8,
120u8, 21u8, 1u8, 0u8, 245u8, 5u8, 0u8, 0u8, 2u8, 113u8, 1u8, 0u8, 249u8, 5u8, 8u8, 56u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 16u8,
67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 128u8, 16u8, 98u8, 111u8, 110u8, 100u8, 12u8,
1u8, 40u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 65u8, 5u8, 1u8,
140u8, 60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8,
83u8, 116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8,
83u8, 111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8,
1u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8,
1u8, 20u8, 112u8, 97u8, 121u8, 101u8, 101u8, 253u8, 5u8, 1u8, 124u8, 82u8, 101u8, 119u8, 97u8,
114u8, 100u8, 68u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 60u8,
84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8,
88u8, 97u8, 1u8, 84u8, 97u8, 107u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 115u8, 32u8,
97u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 110u8, 100u8, 32u8, 108u8, 111u8, 99u8,
107u8, 32u8, 117u8, 112u8, 32u8, 96u8, 118u8, 97u8, 108u8, 117u8, 101u8, 96u8, 32u8, 111u8,
102u8, 32u8, 105u8, 116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 32u8,
96u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 96u8, 32u8, 119u8,
105u8, 108u8, 108u8, 128u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 111u8, 108u8, 115u8, 32u8, 105u8, 116u8, 46u8, 0u8, 45u8, 1u8, 96u8, 118u8, 97u8, 108u8,
117u8, 101u8, 96u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 109u8, 111u8,
114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 109u8,
105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 96u8, 84u8, 58u8, 58u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 46u8,
0u8, 33u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8,
101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 46u8, 0u8, 60u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 66u8, 111u8, 110u8,
100u8, 101u8, 100u8, 96u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 208u8, 45u8, 32u8, 73u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 32u8, 77u8, 111u8, 100u8, 101u8, 114u8, 97u8, 116u8,
101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 28u8,
45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 100u8, 45u8, 32u8, 84u8, 104u8, 114u8, 101u8, 101u8,
32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 32u8, 68u8, 66u8, 32u8, 101u8, 110u8, 116u8, 114u8,
105u8, 101u8, 115u8, 46u8, 0u8, 77u8, 1u8, 78u8, 79u8, 84u8, 69u8, 58u8, 32u8, 84u8, 119u8,
111u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 40u8, 96u8, 83u8, 101u8,
108u8, 102u8, 58u8, 58u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 44u8, 32u8, 96u8, 83u8,
101u8, 108u8, 102u8, 58u8, 58u8, 112u8, 97u8, 121u8, 101u8, 101u8, 96u8, 41u8, 32u8, 97u8, 114u8,
101u8, 32u8, 95u8, 110u8, 101u8, 118u8, 101u8, 114u8, 95u8, 32u8, 99u8, 108u8, 101u8, 97u8,
110u8, 101u8, 100u8, 61u8, 1u8, 117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 102u8, 97u8, 108u8,
108u8, 115u8, 32u8, 98u8, 101u8, 108u8, 111u8, 119u8, 32u8, 95u8, 101u8, 120u8, 105u8, 115u8,
116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 95u8, 32u8, 97u8, 110u8, 100u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 100u8, 117u8, 115u8, 116u8, 46u8,
72u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 48u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8,
41u8, 40u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 45u8, 1u8, 45u8,
32u8, 82u8, 101u8, 97u8, 100u8, 58u8, 32u8, 66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8,
76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 67u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 32u8, 69u8, 114u8, 97u8, 44u8, 32u8, 72u8, 105u8, 115u8, 116u8,
111u8, 114u8, 121u8, 32u8, 68u8, 101u8, 112u8, 116u8, 104u8, 44u8, 32u8, 76u8, 111u8, 99u8,
107u8, 115u8, 220u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 66u8, 111u8,
110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 80u8, 97u8, 121u8, 101u8, 101u8, 44u8, 32u8, 91u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8,
44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8,
44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 40u8, 98u8, 111u8,
110u8, 100u8, 95u8, 101u8, 120u8, 116u8, 114u8, 97u8, 4u8, 1u8, 56u8, 109u8, 97u8, 120u8, 95u8,
97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 201u8, 1u8, 1u8, 48u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 1u8, 84u8, 97u8, 1u8,
65u8, 100u8, 100u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8,
32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8,
97u8, 118u8, 101u8, 32u8, 97u8, 112u8, 112u8, 101u8, 97u8, 114u8, 101u8, 100u8, 32u8, 105u8,
110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 96u8, 102u8,
114u8, 101u8, 101u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 110u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8,
117u8, 112u8, 48u8, 102u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8,
46u8, 0u8, 77u8, 1u8, 85u8, 115u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 100u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 32u8,
105u8, 110u8, 32u8, 121u8, 111u8, 117u8, 114u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 121u8,
111u8, 117u8, 32u8, 119u8, 105u8, 115u8, 104u8, 32u8, 116u8, 111u8, 32u8, 98u8, 111u8, 110u8,
100u8, 46u8, 97u8, 1u8, 85u8, 110u8, 108u8, 105u8, 107u8, 101u8, 32u8, 91u8, 96u8, 98u8, 111u8,
110u8, 100u8, 96u8, 93u8, 32u8, 111u8, 114u8, 32u8, 91u8, 96u8, 117u8, 110u8, 98u8, 111u8, 110u8,
100u8, 96u8, 93u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8,
109u8, 112u8, 111u8, 115u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 72u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8,
110u8, 32u8, 98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 46u8, 0u8, 93u8, 1u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8,
105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 97u8, 115u8, 104u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 110u8,
100u8, 244u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 111u8, 110u8,
108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8,
115u8, 101u8, 100u8, 96u8, 46u8, 0u8, 60u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 66u8,
111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 228u8, 45u8, 32u8, 73u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8,
100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 32u8, 73u8, 110u8, 115u8, 105u8, 103u8,
110u8, 105u8, 102u8, 105u8, 99u8, 97u8, 110u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8,
101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 28u8, 45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 60u8,
45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 68u8, 66u8, 32u8, 101u8, 110u8, 116u8, 114u8, 121u8, 46u8,
48u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 40u8, 68u8, 66u8,
32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 17u8, 1u8, 45u8, 32u8, 82u8, 101u8, 97u8,
100u8, 58u8, 32u8, 69u8, 114u8, 97u8, 32u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 44u8, 32u8, 66u8, 111u8, 110u8, 100u8, 101u8,
100u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 91u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 76u8,
111u8, 99u8, 107u8, 115u8, 160u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 91u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
93u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8,
114u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 24u8, 117u8,
110u8, 98u8, 111u8, 110u8, 100u8, 4u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8,
1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 2u8,
128u8, 81u8, 1u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 97u8, 32u8, 112u8,
111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 117u8, 110u8,
108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 111u8, 117u8,
116u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 111u8,
110u8, 100u8, 252u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 101u8, 110u8, 100u8, 115u8,
46u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 108u8, 101u8, 97u8, 118u8,
101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8,
108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 33u8, 1u8, 84u8, 58u8, 58u8, 67u8,
117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 58u8, 58u8, 109u8, 105u8, 110u8, 105u8, 109u8,
117u8, 109u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 40u8, 41u8, 44u8, 32u8, 116u8,
104u8, 101u8, 110u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 99u8, 114u8,
101u8, 97u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8,
117u8, 108u8, 108u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 69u8, 1u8, 79u8,
110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8,
32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 105u8, 115u8, 32u8, 100u8, 111u8, 110u8,
101u8, 44u8, 32u8, 121u8, 111u8, 117u8, 32u8, 99u8, 97u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 96u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 95u8, 117u8, 110u8, 98u8,
111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 117u8,
97u8, 108u8, 108u8, 121u8, 32u8, 109u8, 111u8, 118u8, 101u8, 188u8, 116u8, 104u8, 101u8, 32u8,
102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 109u8,
97u8, 110u8, 97u8, 103u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
46u8, 0u8, 57u8, 1u8, 78u8, 111u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8,
110u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8,
105u8, 110u8, 103u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 32u8, 40u8, 115u8, 101u8,
101u8, 32u8, 96u8, 77u8, 65u8, 88u8, 95u8, 85u8, 78u8, 76u8, 79u8, 67u8, 75u8, 73u8, 78u8, 71u8,
95u8, 67u8, 72u8, 85u8, 78u8, 75u8, 83u8, 96u8, 41u8, 57u8, 1u8, 99u8, 97u8, 110u8, 32u8, 99u8,
111u8, 45u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 32u8, 73u8,
110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 115u8, 101u8, 44u8, 32u8, 91u8, 96u8,
67u8, 97u8, 108u8, 108u8, 58u8, 58u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8,
95u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 93u8, 32u8, 110u8, 101u8,
101u8, 100u8, 248u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 32u8, 40u8, 105u8, 102u8, 32u8, 112u8,
111u8, 115u8, 115u8, 105u8, 98u8, 108u8, 101u8, 41u8, 46u8, 0u8, 81u8, 1u8, 84u8, 104u8, 101u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8,
103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 110u8, 111u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 9u8, 1u8, 65u8, 110u8,
100u8, 44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 111u8, 110u8,
108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8,
115u8, 101u8, 100u8, 96u8, 46u8, 0u8, 68u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 85u8,
110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 46u8, 0u8, 148u8, 83u8, 101u8, 101u8, 32u8,
97u8, 108u8, 115u8, 111u8, 32u8, 91u8, 96u8, 67u8, 97u8, 108u8, 108u8, 58u8, 58u8, 119u8, 105u8,
116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 95u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8,
100u8, 96u8, 93u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 61u8, 1u8, 45u8, 32u8, 73u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 46u8, 32u8, 76u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8,
98u8, 117u8, 116u8, 32u8, 112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 108u8,
121u8, 32u8, 101u8, 120u8, 112u8, 108u8, 111u8, 105u8, 116u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 148u8, 45u8, 32u8,
67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 101u8, 100u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 97u8, 1u8, 45u8, 32u8, 69u8, 97u8, 99u8, 104u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 40u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 100u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 111u8, 110u8, 100u8, 101u8,
100u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 97u8, 98u8, 111u8, 118u8, 101u8, 32u8, 96u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8,
109u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 41u8, 109u8, 1u8, 32u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 97u8, 32u8, 110u8,
101u8, 119u8, 32u8, 101u8, 110u8, 116u8, 114u8, 121u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 105u8, 110u8, 115u8, 101u8, 114u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 116u8, 111u8,
32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 40u8, 96u8, 76u8, 101u8, 100u8,
103u8, 101u8, 114u8, 46u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 105u8, 110u8, 103u8, 96u8,
41u8, 32u8, 107u8, 101u8, 112u8, 116u8, 32u8, 105u8, 110u8, 32u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 46u8, 77u8, 1u8, 32u8, 32u8, 84u8, 104u8, 101u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 119u8, 97u8, 121u8, 32u8, 116u8, 111u8, 32u8, 99u8, 108u8, 101u8, 97u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 102u8, 111u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 105u8,
111u8, 110u8, 101u8, 100u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8,
116u8, 101u8, 109u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 117u8, 115u8,
101u8, 114u8, 45u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 100u8, 32u8,
118u8, 105u8, 97u8, 88u8, 32u8, 32u8, 96u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8,
119u8, 95u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8, 46u8, 60u8, 45u8, 32u8,
79u8, 110u8, 101u8, 32u8, 68u8, 66u8, 32u8, 101u8, 110u8, 116u8, 114u8, 121u8, 46u8, 40u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8, 40u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 58u8, 33u8, 1u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 58u8, 32u8, 69u8, 114u8,
97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8,
115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 67u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 69u8, 114u8, 97u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8,
32u8, 92u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 92u8, 93u8, 168u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 76u8,
111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 92u8,
91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 92u8, 93u8, 36u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 68u8, 119u8,
105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 95u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8,
101u8, 100u8, 4u8, 1u8, 72u8, 110u8, 117u8, 109u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 95u8, 115u8, 112u8, 97u8, 110u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
3u8, 124u8, 41u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8,
117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8,
115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 117u8, 110u8,
108u8, 111u8, 99u8, 107u8, 105u8, 110u8, 103u8, 96u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 111u8, 117u8, 114u8, 32u8, 109u8, 97u8, 110u8, 97u8,
103u8, 101u8, 109u8, 101u8, 110u8, 116u8, 46u8, 0u8, 49u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8,
101u8, 115u8, 115u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 102u8, 114u8,
101u8, 101u8, 115u8, 32u8, 117u8, 112u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8,
104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 100u8,
111u8, 72u8, 119u8, 104u8, 97u8, 116u8, 101u8, 118u8, 101u8, 114u8, 32u8, 105u8, 116u8, 32u8,
119u8, 97u8, 110u8, 116u8, 115u8, 46u8, 0u8, 81u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8, 101u8,
100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 9u8, 1u8, 65u8, 110u8, 100u8, 44u8, 32u8,
105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 69u8,
114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8,
117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8, 101u8,
100u8, 96u8, 46u8, 0u8, 72u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 96u8, 87u8, 105u8, 116u8,
104u8, 100u8, 114u8, 97u8, 119u8, 110u8, 96u8, 46u8, 0u8, 104u8, 83u8, 101u8, 101u8, 32u8, 97u8,
108u8, 115u8, 111u8, 32u8, 91u8, 96u8, 67u8, 97u8, 108u8, 108u8, 58u8, 58u8, 117u8, 110u8, 98u8,
111u8, 110u8, 100u8, 96u8, 93u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 81u8, 1u8, 45u8, 32u8, 67u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8,
32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 97u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 104u8, 111u8,
119u8, 32u8, 109u8, 117u8, 99u8, 104u8, 32u8, 96u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8,
105u8, 110u8, 103u8, 96u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 46u8, 65u8, 1u8, 32u8, 73u8, 116u8, 32u8, 105u8, 109u8, 112u8, 108u8, 105u8,
101u8, 115u8, 32u8, 96u8, 99u8, 111u8, 110u8, 115u8, 111u8, 108u8, 105u8, 100u8, 97u8, 116u8,
101u8, 95u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 96u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 108u8, 111u8, 111u8, 112u8, 115u8, 32u8, 111u8, 118u8, 101u8, 114u8,
32u8, 96u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 46u8, 117u8, 110u8, 108u8, 111u8, 99u8,
107u8, 105u8, 110u8, 103u8, 96u8, 44u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8,
115u8, 240u8, 32u8, 105u8, 110u8, 100u8, 105u8, 114u8, 101u8, 99u8, 116u8, 108u8, 121u8, 32u8,
117u8, 115u8, 101u8, 114u8, 45u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8,
100u8, 46u8, 32u8, 83u8, 101u8, 101u8, 32u8, 91u8, 96u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8,
96u8, 93u8, 32u8, 102u8, 111u8, 114u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 100u8, 101u8,
116u8, 97u8, 105u8, 108u8, 46u8, 117u8, 1u8, 45u8, 32u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8,
110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 97u8, 100u8, 115u8,
44u8, 32u8, 121u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 105u8, 122u8, 101u8,
32u8, 111u8, 102u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 99u8, 111u8, 117u8, 108u8,
100u8, 32u8, 98u8, 101u8, 32u8, 108u8, 97u8, 114u8, 103u8, 101u8, 32u8, 98u8, 97u8, 115u8, 101u8,
100u8, 32u8, 111u8, 110u8, 32u8, 96u8, 108u8, 101u8, 100u8, 103u8, 101u8, 114u8, 96u8, 46u8,
196u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 107u8, 101u8, 121u8, 46u8, 60u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 5u8, 1u8, 67u8, 111u8, 109u8, 112u8, 108u8,
101u8, 120u8, 105u8, 116u8, 121u8, 32u8, 79u8, 40u8, 83u8, 41u8, 32u8, 119u8, 104u8, 101u8,
114u8, 101u8, 32u8, 83u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 32u8, 115u8, 112u8, 97u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 28u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 58u8, 33u8, 1u8, 45u8,
32u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8,
116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 44u8, 32u8, 76u8, 101u8,
100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
69u8, 114u8, 97u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 91u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8, 164u8,
45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8,
105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 76u8, 111u8,
99u8, 107u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 20u8, 75u8, 105u8,
108u8, 108u8, 58u8, 65u8, 1u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 69u8,
114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8,
117u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 67u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 69u8, 114u8, 97u8, 44u8, 32u8, 66u8, 111u8, 110u8,
100u8, 101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8,
83u8, 112u8, 97u8, 110u8, 115u8, 44u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 68u8,
32u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 76u8, 111u8, 99u8,
107u8, 115u8, 77u8, 1u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 66u8,
111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8,
103u8, 32u8, 83u8, 112u8, 97u8, 110u8, 115u8, 32u8, 40u8, 105u8, 102u8, 32u8, 83u8, 32u8, 62u8,
32u8, 48u8, 41u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 80u8, 97u8,
121u8, 101u8, 101u8, 44u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
115u8, 44u8, 32u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8,
100u8, 32u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 112u8, 45u8, 32u8, 87u8,
114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 83u8, 112u8, 97u8,
110u8, 83u8, 108u8, 97u8, 115u8, 104u8, 32u8, 42u8, 32u8, 83u8, 9u8, 1u8, 78u8, 79u8, 84u8, 69u8,
58u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 97u8, 110u8, 110u8, 111u8, 116u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 107u8,
105u8, 108u8, 108u8, 32u8, 115u8, 99u8, 101u8, 110u8, 97u8, 114u8, 105u8, 111u8, 44u8, 32u8,
119u8, 101u8, 32u8, 114u8, 101u8, 102u8, 117u8, 110u8, 100u8, 32u8, 111u8, 116u8, 104u8, 101u8,
114u8, 119u8, 105u8, 115u8, 101u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 4u8, 1u8,
20u8, 112u8, 114u8, 101u8, 102u8, 115u8, 1u8, 6u8, 1u8, 56u8, 86u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 80u8, 114u8, 101u8, 102u8, 115u8, 0u8, 4u8, 68u8, 228u8, 68u8, 101u8,
99u8, 108u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 115u8, 105u8,
114u8, 101u8, 32u8, 116u8, 111u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 46u8, 0u8,
216u8, 69u8, 102u8, 102u8, 101u8, 99u8, 116u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
98u8, 101u8, 32u8, 102u8, 101u8, 108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 81u8,
1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8,
83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 110u8,
111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 9u8, 1u8,
65u8, 110u8, 100u8, 44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8,
111u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8,
108u8, 111u8, 115u8, 101u8, 100u8, 96u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 228u8, 45u8, 32u8, 73u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8,
100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 32u8, 73u8, 110u8, 115u8, 105u8, 103u8,
110u8, 105u8, 102u8, 105u8, 99u8, 97u8, 110u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8,
101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 148u8, 45u8, 32u8, 67u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 97u8, 100u8,
115u8, 46u8, 196u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 107u8, 101u8, 121u8, 46u8, 44u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8,
79u8, 40u8, 49u8, 41u8, 40u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8,
140u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 58u8, 32u8, 69u8, 114u8, 97u8, 32u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 44u8,
32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 124u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8,
101u8, 58u8, 32u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8,
32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 35u8, 32u8, 60u8,
47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8,
97u8, 116u8, 101u8, 4u8, 1u8, 28u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 9u8, 6u8,
1u8, 160u8, 86u8, 101u8, 99u8, 60u8, 60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8,
112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8,
117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8, 117u8, 114u8, 99u8, 101u8, 62u8, 0u8, 5u8, 76u8,
13u8, 1u8, 68u8, 101u8, 99u8, 108u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8,
101u8, 115u8, 105u8, 114u8, 101u8, 32u8, 116u8, 111u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8,
97u8, 116u8, 101u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 96u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 46u8, 0u8, 77u8, 1u8,
69u8, 102u8, 102u8, 101u8, 99u8, 116u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8,
101u8, 32u8, 102u8, 101u8, 108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 32u8, 84u8,
104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 136u8,
91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8,
97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8,
101u8, 100u8, 96u8, 46u8, 0u8, 81u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8,
98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8,
108u8, 101u8, 114u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
116u8, 97u8, 115u8, 104u8, 46u8, 9u8, 1u8, 65u8, 110u8, 100u8, 44u8, 32u8, 105u8, 116u8, 32u8,
99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8,
108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8,
93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 96u8, 46u8, 0u8,
40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 45u8, 1u8, 45u8, 32u8,
84u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 39u8, 115u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8,
32u8, 105u8, 115u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8,
97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 105u8, 122u8, 101u8,
32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 96u8, 32u8, 40u8,
78u8, 41u8, 252u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 112u8,
112u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 65u8,
115u8, 115u8, 105u8, 103u8, 110u8, 109u8, 101u8, 110u8, 116u8, 115u8, 58u8, 58u8, 76u8, 73u8,
77u8, 73u8, 84u8, 32u8, 40u8, 77u8, 65u8, 88u8, 95u8, 78u8, 79u8, 77u8, 73u8, 78u8, 65u8, 84u8,
73u8, 79u8, 78u8, 83u8, 41u8, 46u8, 212u8, 45u8, 32u8, 66u8, 111u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8,
114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8, 32u8, 97u8,
32u8, 115u8, 105u8, 109u8, 105u8, 108u8, 97u8, 114u8, 32u8, 112u8, 97u8, 116u8, 116u8, 101u8,
114u8, 110u8, 46u8, 36u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 78u8, 41u8, 128u8, 119u8, 104u8,
101u8, 114u8, 101u8, 32u8, 78u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 115u8, 40u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 196u8, 45u8,
32u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 69u8, 114u8, 97u8, 32u8, 69u8, 108u8, 101u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 44u8, 32u8, 76u8,
101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 69u8, 114u8, 97u8, 128u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8,
86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 32u8, 78u8, 111u8,
109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 20u8, 99u8, 104u8, 105u8, 108u8, 108u8, 0u8, 6u8, 68u8,
196u8, 68u8, 101u8, 99u8, 108u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 32u8, 100u8, 101u8,
115u8, 105u8, 114u8, 101u8, 32u8, 116u8, 111u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8,
32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8, 114u8, 32u8, 110u8,
111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 46u8, 0u8, 216u8, 69u8, 102u8, 102u8, 101u8,
99u8, 116u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 102u8, 101u8,
108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 101u8, 103u8, 105u8,
110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
101u8, 120u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 81u8, 1u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8,
110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8,
110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 9u8, 1u8, 65u8, 110u8, 100u8,
44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8,
91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8,
97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8,
101u8, 100u8, 96u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 228u8, 45u8, 32u8, 73u8, 110u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 46u8, 32u8, 73u8, 110u8, 115u8, 105u8, 103u8, 110u8, 105u8, 102u8,
105u8, 99u8, 97u8, 110u8, 116u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8,
116u8, 121u8, 46u8, 80u8, 45u8, 32u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8,
111u8, 110u8, 101u8, 32u8, 114u8, 101u8, 97u8, 100u8, 46u8, 196u8, 45u8, 32u8, 87u8, 114u8,
105u8, 116u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 107u8,
101u8, 121u8, 46u8, 32u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8, 40u8, 68u8, 66u8, 32u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 132u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 58u8, 32u8,
69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8,
116u8, 117u8, 115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 124u8, 45u8, 32u8,
87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 115u8, 44u8, 32u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8,
115u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 36u8, 115u8,
101u8, 116u8, 95u8, 112u8, 97u8, 121u8, 101u8, 101u8, 4u8, 1u8, 20u8, 112u8, 97u8, 121u8, 101u8,
101u8, 253u8, 5u8, 1u8, 124u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 68u8, 101u8, 115u8, 116u8,
105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 7u8, 64u8, 180u8, 40u8, 82u8, 101u8, 45u8, 41u8,
115u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8,
116u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 46u8, 0u8, 216u8,
69u8, 102u8, 102u8, 101u8, 99u8, 116u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8,
101u8, 32u8, 102u8, 101u8, 108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 81u8, 1u8,
84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8,
83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 110u8,
111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 228u8, 45u8, 32u8, 73u8, 110u8,
100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 32u8,
73u8, 110u8, 115u8, 105u8, 103u8, 110u8, 105u8, 102u8, 105u8, 99u8, 97u8, 110u8, 116u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 148u8, 45u8, 32u8,
67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 101u8, 100u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 196u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8,
101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 107u8, 101u8, 121u8, 46u8,
36u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 56u8, 45u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8, 48u8, 45u8, 32u8, 68u8, 66u8, 32u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 72u8, 32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 82u8,
101u8, 97u8, 100u8, 58u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 72u8, 32u8, 32u8, 32u8,
32u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 80u8, 97u8, 121u8, 101u8, 101u8,
44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 56u8, 115u8, 101u8,
116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 4u8, 1u8, 40u8,
99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 65u8, 5u8, 1u8, 140u8, 60u8,
84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8,
97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8,
117u8, 114u8, 99u8, 101u8, 0u8, 8u8, 64u8, 140u8, 40u8, 82u8, 101u8, 45u8, 41u8, 115u8, 101u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8, 0u8,
216u8, 69u8, 102u8, 102u8, 101u8, 99u8, 116u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
98u8, 101u8, 32u8, 102u8, 101u8, 108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 81u8,
1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8,
83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 44u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 46u8, 0u8,
40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 228u8, 45u8, 32u8, 73u8,
110u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8,
32u8, 73u8, 110u8, 115u8, 105u8, 103u8, 110u8, 105u8, 102u8, 105u8, 99u8, 97u8, 110u8, 116u8,
32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 46u8, 148u8, 45u8,
32u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 97u8, 32u8, 108u8, 105u8,
109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 196u8, 45u8, 32u8, 87u8, 114u8, 105u8,
116u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 107u8, 101u8,
121u8, 46u8, 40u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 48u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8, 40u8, 68u8, 66u8, 32u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 240u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 58u8, 32u8,
66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8,
32u8, 78u8, 101u8, 119u8, 32u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8,
114u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 32u8, 79u8, 108u8, 100u8, 32u8, 67u8,
111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 244u8, 45u8, 32u8, 87u8, 114u8,
105u8, 116u8, 101u8, 58u8, 32u8, 66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 76u8,
101u8, 100u8, 103u8, 101u8, 114u8, 32u8, 78u8, 101u8, 119u8, 32u8, 67u8, 111u8, 110u8, 116u8,
114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8,
32u8, 79u8, 108u8, 100u8, 32u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8,
114u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 76u8, 115u8,
101u8, 116u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8,
111u8, 117u8, 110u8, 116u8, 4u8, 1u8, 12u8, 110u8, 101u8, 119u8, 121u8, 4u8, 1u8, 12u8, 117u8,
51u8, 50u8, 0u8, 9u8, 32u8, 144u8, 83u8, 101u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
105u8, 100u8, 101u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 46u8, 0u8,
132u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8,
32u8, 82u8, 111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 48u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8,
41u8, 88u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 32u8, 67u8, 111u8, 117u8, 110u8, 116u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 96u8, 105u8, 110u8, 99u8, 114u8, 101u8, 97u8, 115u8,
101u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8, 111u8,
117u8, 110u8, 116u8, 4u8, 1u8, 40u8, 97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8,
108u8, 121u8, 4u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 10u8, 28u8, 168u8, 73u8, 110u8, 99u8,
114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8,
101u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 46u8, 0u8, 132u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 82u8,
111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 128u8, 83u8, 97u8, 109u8, 101u8, 32u8, 97u8, 115u8, 32u8, 91u8, 96u8, 115u8, 101u8, 116u8,
95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 96u8, 93u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 84u8, 115u8, 99u8, 97u8, 108u8, 101u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 4u8, 1u8, 24u8, 102u8, 97u8, 99u8,
116u8, 111u8, 114u8, 13u8, 6u8, 1u8, 28u8, 80u8, 101u8, 114u8, 99u8, 101u8, 110u8, 116u8, 0u8,
11u8, 28u8, 208u8, 83u8, 99u8, 97u8, 108u8, 101u8, 32u8, 117u8, 112u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 100u8, 101u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8,
98u8, 121u8, 32u8, 97u8, 32u8, 102u8, 97u8, 99u8, 116u8, 111u8, 114u8, 46u8, 0u8, 132u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 82u8,
111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 128u8, 83u8, 97u8, 109u8, 101u8, 32u8, 97u8, 115u8, 32u8, 91u8, 96u8, 115u8, 101u8, 116u8,
95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 96u8, 93u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 104u8, 97u8, 100u8, 100u8, 95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 101u8, 100u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 8u8, 1u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 56u8, 105u8, 110u8,
116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 17u8, 6u8, 1u8,
44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 51u8, 50u8, 62u8, 0u8, 12u8, 32u8,
61u8, 1u8, 71u8, 111u8, 118u8, 101u8, 114u8, 110u8, 97u8, 110u8, 99u8, 101u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 111u8, 110u8, 32u8, 50u8, 47u8, 51u8,
32u8, 114u8, 100u8, 115u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8,
99u8, 97u8, 110u8, 32u8, 105u8, 110u8, 116u8, 114u8, 111u8, 100u8, 117u8, 99u8, 101u8, 32u8,
97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8,
108u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 157u8, 1u8, 116u8, 111u8,
32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 101u8, 110u8,
116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 119u8, 104u8, 111u8, 32u8, 99u8, 97u8, 110u8,
32u8, 114u8, 117u8, 110u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
115u8, 46u8, 32u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 109u8, 111u8, 100u8,
117u8, 108u8, 101u8, 32u8, 117u8, 115u8, 101u8, 115u8, 32u8, 96u8, 80u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 96u8, 85u8, 1u8, 116u8, 111u8, 32u8, 101u8, 110u8, 115u8, 117u8, 114u8, 101u8,
32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 104u8, 97u8,
118u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 75u8,
89u8, 66u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 97u8,
110u8, 100u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8, 114u8, 115u8, 32u8, 116u8,
104u8, 101u8, 109u8, 32u8, 102u8, 111u8, 114u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 232u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 82u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8,
112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 136u8, 42u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 39u8,
115u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 46u8, 5u8, 1u8,
42u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 78u8, 111u8, 46u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8,
115u8, 32u8, 116u8, 111u8, 32u8, 114u8, 117u8, 110u8, 46u8, 116u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8,
100u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 4u8, 1u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 13u8, 28u8, 169u8, 1u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 111u8, 108u8,
32u8, 111u8, 102u8, 32u8, 40u8, 119u8, 97u8, 110u8, 110u8, 97u8, 98u8, 101u8, 41u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 46u8, 32u8, 69u8, 102u8, 102u8, 101u8, 99u8, 116u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 107u8, 110u8, 111u8, 119u8, 110u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 46u8, 25u8, 1u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 109u8, 111u8,
100u8, 117u8, 108u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 115u8, 32u8, 96u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 96u8, 32u8, 116u8, 111u8, 32u8, 101u8, 110u8, 115u8, 117u8,
114u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8,
104u8, 97u8, 118u8, 101u8, 96u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 100u8,
32u8, 75u8, 89u8, 66u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 240u8, 42u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 100u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 112u8, 111u8, 116u8,
101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 46u8, 136u8, 42u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 39u8, 115u8, 32u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 46u8, 120u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 101u8, 95u8, 99u8, 100u8, 100u8, 95u8, 101u8, 120u8, 112u8, 105u8, 114u8,
121u8, 95u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 4u8, 1u8, 28u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 232u8, 1u8, 68u8, 86u8, 101u8, 99u8, 60u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 14u8, 40u8,
160u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 67u8, 68u8, 68u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 0u8,
240u8, 73u8, 102u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 115u8,
101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8,
116u8, 104u8, 101u8, 110u8, 208u8, 99u8, 104u8, 101u8, 99u8, 107u8, 32u8, 116u8, 104u8, 101u8,
32u8, 67u8, 68u8, 68u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 116u8, 105u8,
109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 105u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8,
102u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 49u8, 1u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8,
32u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8,
112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 46u8, 0u8, 36u8, 35u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 152u8, 45u8, 32u8, 68u8, 101u8, 112u8, 101u8, 110u8, 100u8, 115u8,
32u8, 111u8, 110u8, 32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 32u8, 108u8, 105u8, 115u8,
116u8, 32u8, 111u8, 102u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 46u8,
41u8, 1u8, 45u8, 32u8, 68u8, 101u8, 112u8, 101u8, 110u8, 100u8, 115u8, 32u8, 111u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 111u8, 46u8, 32u8, 111u8, 102u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 115u8, 32u8, 97u8, 110u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 32u8, 104u8, 97u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 101u8, 120u8, 112u8,
105u8, 114u8, 121u8, 46u8, 40u8, 35u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 72u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 95u8, 99u8, 97u8, 112u8, 4u8, 1u8, 28u8, 110u8, 101u8, 119u8, 95u8, 99u8, 97u8,
112u8, 137u8, 1u8, 1u8, 28u8, 80u8, 101u8, 114u8, 98u8, 105u8, 108u8, 108u8, 0u8, 15u8, 20u8,
33u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 114u8, 97u8, 116u8, 101u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 108u8, 108u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8,
46u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 71u8, 111u8, 118u8, 101u8, 114u8, 110u8, 97u8,
110u8, 99u8, 101u8, 168u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8,
105u8, 115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 140u8, 42u8, 32u8, 96u8, 110u8, 101u8, 119u8, 95u8, 99u8, 97u8, 112u8, 96u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 112u8, 46u8, 88u8, 115u8, 101u8, 116u8, 95u8,
109u8, 105u8, 110u8, 95u8, 98u8, 111u8, 110u8, 100u8, 95u8, 116u8, 104u8, 114u8, 101u8, 115u8,
104u8, 111u8, 108u8, 100u8, 4u8, 1u8, 36u8, 110u8, 101u8, 119u8, 95u8, 118u8, 97u8, 108u8, 117u8,
101u8, 24u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8,
62u8, 0u8, 16u8, 20u8, 1u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 109u8,
105u8, 110u8, 32u8, 98u8, 111u8, 110u8, 100u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 40u8, 41u8, 46u8, 32u8, 79u8, 110u8, 108u8,
121u8, 32u8, 71u8, 111u8, 118u8, 101u8, 114u8, 110u8, 97u8, 110u8, 99u8, 101u8, 168u8, 99u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8,
101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 116u8, 42u8, 32u8,
96u8, 110u8, 101u8, 119u8, 95u8, 118u8, 97u8, 108u8, 117u8, 101u8, 96u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 52u8,
102u8, 111u8, 114u8, 99u8, 101u8, 95u8, 110u8, 111u8, 95u8, 101u8, 114u8, 97u8, 115u8, 0u8, 17u8,
36u8, 172u8, 70u8, 111u8, 114u8, 99u8, 101u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 110u8, 111u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8,
114u8, 97u8, 115u8, 32u8, 105u8, 110u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 101u8,
108u8, 121u8, 46u8, 0u8, 132u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 98u8, 101u8, 32u8, 82u8, 111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 60u8, 45u8, 32u8, 78u8, 111u8, 32u8, 97u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 56u8, 45u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8, 68u8, 45u8, 32u8, 87u8, 114u8, 105u8,
116u8, 101u8, 58u8, 32u8, 70u8, 111u8, 114u8, 99u8, 101u8, 69u8, 114u8, 97u8, 44u8, 35u8, 32u8,
60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 52u8, 102u8, 111u8, 114u8, 99u8,
101u8, 95u8, 110u8, 101u8, 119u8, 95u8, 101u8, 114u8, 97u8, 0u8, 18u8, 40u8, 73u8, 1u8, 70u8,
111u8, 114u8, 99u8, 101u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 116u8, 111u8, 32u8,
98u8, 101u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8, 114u8, 97u8, 32u8, 97u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8,
46u8, 32u8, 65u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 44u8, 32u8,
105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 156u8, 114u8, 101u8, 115u8,
101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 110u8, 111u8, 114u8, 109u8, 97u8, 108u8, 32u8, 40u8,
110u8, 111u8, 110u8, 45u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 41u8, 32u8, 98u8, 101u8,
104u8, 97u8, 118u8, 105u8, 111u8, 117u8, 114u8, 46u8, 0u8, 132u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 82u8, 111u8, 111u8, 116u8,
46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 60u8, 45u8,
32u8, 78u8, 111u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8,
56u8, 45u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8, 40u8, 49u8, 41u8,
64u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 32u8, 70u8, 111u8, 114u8, 99u8, 101u8, 69u8,
114u8, 97u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 68u8,
115u8, 101u8, 116u8, 95u8, 105u8, 110u8, 118u8, 117u8, 108u8, 110u8, 101u8, 114u8, 97u8, 98u8,
108u8, 101u8, 115u8, 4u8, 1u8, 52u8, 105u8, 110u8, 118u8, 117u8, 108u8, 110u8, 101u8, 114u8,
97u8, 98u8, 108u8, 101u8, 115u8, 232u8, 1u8, 68u8, 86u8, 101u8, 99u8, 60u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 19u8, 32u8, 200u8, 83u8,
101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 115u8, 32u8, 119u8, 104u8, 111u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8,
32u8, 98u8, 101u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 100u8, 32u8, 40u8, 105u8,
102u8, 32u8, 97u8, 110u8, 121u8, 41u8, 46u8, 0u8, 132u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8,
109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 82u8, 111u8, 111u8, 116u8, 46u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 24u8, 45u8, 32u8, 79u8, 40u8,
86u8, 41u8, 88u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 73u8, 110u8, 118u8,
117u8, 108u8, 110u8, 101u8, 114u8, 97u8, 98u8, 108u8, 101u8, 115u8, 44u8, 35u8, 32u8, 60u8, 47u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 52u8, 102u8, 111u8, 114u8, 99u8, 101u8, 95u8,
117u8, 110u8, 115u8, 116u8, 97u8, 107u8, 101u8, 8u8, 1u8, 20u8, 115u8, 116u8, 97u8, 115u8, 104u8,
0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
1u8, 72u8, 110u8, 117u8, 109u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8,
95u8, 115u8, 112u8, 97u8, 110u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 20u8, 40u8, 9u8,
1u8, 70u8, 111u8, 114u8, 99u8, 101u8, 32u8, 97u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
99u8, 111u8, 109u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 108u8,
121u8, 32u8, 117u8, 110u8, 115u8, 116u8, 97u8, 107u8, 101u8, 100u8, 44u8, 32u8, 105u8, 109u8,
109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 46u8, 0u8, 132u8, 84u8, 104u8,
101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 82u8, 111u8,
111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8,
232u8, 79u8, 40u8, 83u8, 41u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 83u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 115u8, 112u8, 97u8,
110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 100u8, 180u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 66u8, 111u8, 110u8, 100u8,
101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 83u8,
112u8, 97u8, 110u8, 115u8, 44u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8,
76u8, 111u8, 99u8, 107u8, 115u8, 129u8, 1u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8,
66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 32u8, 83u8, 112u8, 97u8, 110u8, 115u8, 32u8, 40u8, 105u8, 102u8, 32u8, 83u8, 32u8,
62u8, 32u8, 48u8, 41u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 80u8,
97u8, 121u8, 101u8, 101u8, 44u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 115u8, 44u8, 32u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8,
44u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8,
115u8, 104u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8,
83u8, 112u8, 97u8, 110u8, 83u8, 108u8, 97u8, 115u8, 104u8, 32u8, 42u8, 32u8, 83u8, 44u8, 35u8,
32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 80u8, 102u8, 111u8, 114u8,
99u8, 101u8, 95u8, 110u8, 101u8, 119u8, 95u8, 101u8, 114u8, 97u8, 95u8, 97u8, 108u8, 119u8, 97u8,
121u8, 115u8, 0u8, 21u8, 32u8, 1u8, 1u8, 70u8, 111u8, 114u8, 99u8, 101u8, 32u8, 116u8, 104u8,
101u8, 114u8, 101u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 110u8, 101u8,
119u8, 32u8, 101u8, 114u8, 97u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8,
110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
32u8, 105u8, 110u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 101u8, 108u8, 121u8, 46u8,
0u8, 132u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8,
32u8, 82u8, 111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 56u8, 45u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 32u8, 79u8,
40u8, 49u8, 41u8, 68u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 58u8, 32u8, 70u8, 111u8,
114u8, 99u8, 101u8, 69u8, 114u8, 97u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 84u8, 99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 95u8, 100u8, 101u8, 102u8,
101u8, 114u8, 114u8, 101u8, 100u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 8u8, 1u8, 12u8, 101u8,
114u8, 97u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8,
52u8, 115u8, 108u8, 97u8, 115u8, 104u8, 95u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8,
53u8, 4u8, 1u8, 32u8, 86u8, 101u8, 99u8, 60u8, 117u8, 51u8, 50u8, 62u8, 0u8, 22u8, 52u8, 148u8,
67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 100u8, 101u8, 102u8, 101u8, 114u8, 114u8,
101u8, 100u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 46u8, 0u8, 176u8, 67u8, 97u8, 110u8, 32u8,
98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 84u8, 58u8, 58u8, 83u8, 108u8, 97u8, 115u8, 104u8, 67u8, 97u8, 110u8, 99u8,
101u8, 108u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 46u8, 0u8, 1u8, 1u8, 80u8, 97u8,
114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 32u8, 101u8, 114u8, 97u8, 32u8,
97u8, 110u8, 100u8, 32u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 101u8, 114u8, 97u8, 32u8, 116u8, 111u8,
32u8, 107u8, 105u8, 108u8, 108u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 80u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8,
58u8, 32u8, 79u8, 40u8, 85u8, 32u8, 43u8, 32u8, 83u8, 41u8, 180u8, 119u8, 105u8, 116u8, 104u8,
32u8, 85u8, 32u8, 117u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 115u8,
108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 101u8,
100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 85u8, 61u8, 49u8, 48u8, 48u8, 48u8, 208u8, 97u8,
110u8, 100u8, 32u8, 83u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 32u8,
105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 101u8, 100u8, 46u8, 100u8, 45u8, 32u8, 82u8, 101u8, 97u8,
100u8, 58u8, 32u8, 85u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 83u8,
108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 104u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8,
58u8, 32u8, 85u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 83u8, 108u8, 97u8,
115u8, 104u8, 101u8, 115u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 56u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8,
101u8, 114u8, 115u8, 8u8, 1u8, 60u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
95u8, 115u8, 116u8, 97u8, 115u8, 104u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 12u8, 101u8, 114u8, 97u8, 16u8, 1u8, 32u8,
69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 23u8, 100u8, 13u8, 1u8, 80u8, 97u8,
121u8, 32u8, 111u8, 117u8, 116u8, 32u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 32u8, 98u8, 101u8, 104u8, 105u8, 110u8, 100u8,
32u8, 97u8, 32u8, 115u8, 105u8, 110u8, 103u8, 108u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8,
110u8, 103u8, 108u8, 101u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 73u8, 1u8, 45u8, 32u8, 96u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 115u8, 116u8, 97u8, 115u8,
104u8, 96u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8,
104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 32u8,
84u8, 104u8, 101u8, 105u8, 114u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 115u8, 44u8, 32u8, 117u8, 112u8, 32u8, 116u8, 111u8, 37u8, 1u8, 32u8, 32u8, 96u8, 84u8,
58u8, 58u8, 77u8, 97u8, 120u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 82u8,
101u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 80u8, 101u8, 114u8, 86u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 96u8, 44u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 97u8,
108u8, 115u8, 111u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 32u8, 116u8, 104u8,
101u8, 105u8, 114u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 46u8, 49u8, 1u8, 45u8,
32u8, 96u8, 101u8, 114u8, 97u8, 96u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 97u8,
110u8, 121u8, 32u8, 101u8, 114u8, 97u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8,
32u8, 96u8, 91u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 95u8, 101u8, 114u8, 97u8, 32u8,
45u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 95u8, 100u8, 101u8, 112u8, 116u8,
104u8, 59u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 95u8, 101u8, 114u8, 97u8,
93u8, 96u8, 46u8, 0u8, 85u8, 1u8, 84u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8, 110u8,
101u8, 100u8, 95u8, 46u8, 32u8, 65u8, 110u8, 121u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 101u8, 118u8, 101u8,
110u8, 32u8, 105u8, 102u8, 116u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 111u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8,
97u8, 107u8, 101u8, 114u8, 115u8, 46u8, 0u8, 252u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8,
110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8,
32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 96u8, 46u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 252u8, 45u8, 32u8, 84u8, 105u8,
109u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 58u8,
32u8, 97u8, 116u8, 32u8, 109u8, 111u8, 115u8, 116u8, 32u8, 79u8, 40u8, 77u8, 97u8, 120u8, 78u8,
111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8,
101u8, 100u8, 80u8, 101u8, 114u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
41u8, 46u8, 192u8, 45u8, 32u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 97u8,
32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 32u8, 97u8, 110u8, 100u8,
32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 115u8, 46u8, 44u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
45u8, 45u8, 45u8, 45u8, 45u8, 25u8, 1u8, 78u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 112u8, 97u8, 121u8,
111u8, 117u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 40u8, 105u8, 110u8, 99u8, 108u8,
117u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 41u8, 28u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8,
132u8, 45u8, 32u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 68u8, 101u8, 115u8, 116u8,
105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 83u8, 116u8, 97u8, 107u8, 101u8, 100u8,
58u8, 32u8, 79u8, 40u8, 78u8, 41u8, 192u8, 45u8, 32u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8,
32u8, 68u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 67u8,
111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8, 40u8, 67u8, 114u8, 101u8,
97u8, 116u8, 105u8, 110u8, 103u8, 41u8, 58u8, 32u8, 79u8, 40u8, 78u8, 41u8, 40u8, 68u8, 66u8,
32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 37u8, 1u8, 45u8, 32u8, 82u8, 101u8, 97u8,
100u8, 58u8, 32u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 44u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
69u8, 114u8, 97u8, 44u8, 32u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 68u8, 101u8,
112u8, 116u8, 104u8, 44u8, 32u8, 69u8, 114u8, 97u8, 115u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 44u8, 41u8, 1u8, 32u8, 32u8, 32u8,
32u8, 32u8, 32u8, 32u8, 32u8, 69u8, 114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 107u8, 101u8, 114u8,
115u8, 67u8, 108u8, 105u8, 112u8, 112u8, 101u8, 100u8, 44u8, 32u8, 69u8, 114u8, 97u8, 115u8,
82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 111u8, 105u8, 110u8, 116u8, 115u8, 44u8, 32u8,
69u8, 114u8, 97u8, 115u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 80u8,
114u8, 101u8, 102u8, 115u8, 32u8, 40u8, 56u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 41u8,
13u8, 1u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 66u8,
111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8,
32u8, 80u8, 97u8, 121u8, 101u8, 101u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8, 32u8,
83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
32u8, 40u8, 53u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 41u8, 212u8, 45u8, 32u8, 87u8, 114u8,
105u8, 116u8, 101u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 83u8, 121u8, 115u8, 116u8, 101u8,
109u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8,
115u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 32u8, 40u8, 51u8, 32u8, 105u8, 116u8,
101u8, 109u8, 115u8, 41u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 24u8, 114u8, 101u8, 98u8, 111u8, 110u8, 100u8, 4u8, 1u8, 20u8, 118u8, 97u8, 108u8,
117u8, 101u8, 201u8, 1u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8,
60u8, 84u8, 62u8, 0u8, 24u8, 56u8, 220u8, 82u8, 101u8, 98u8, 111u8, 110u8, 100u8, 32u8, 97u8,
32u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 117u8, 110u8, 108u8, 111u8,
99u8, 107u8, 101u8, 100u8, 46u8, 0u8, 81u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8,
108u8, 101u8, 114u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 136u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8,
32u8, 105u8, 115u8, 32u8, 96u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 96u8, 46u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 208u8, 45u8, 32u8, 84u8, 105u8,
109u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 58u8,
32u8, 79u8, 40u8, 76u8, 41u8, 44u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 76u8, 32u8,
105u8, 115u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 105u8, 110u8, 103u8, 32u8, 99u8,
104u8, 117u8, 110u8, 107u8, 115u8, 144u8, 45u8, 32u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 77u8, 65u8, 88u8, 95u8, 85u8, 78u8, 76u8, 79u8, 67u8, 75u8,
73u8, 78u8, 71u8, 95u8, 67u8, 72u8, 85u8, 78u8, 75u8, 83u8, 96u8, 46u8, 240u8, 45u8, 32u8, 83u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8,
58u8, 32u8, 67u8, 97u8, 110u8, 39u8, 116u8, 32u8, 105u8, 110u8, 99u8, 114u8, 101u8, 97u8, 115u8,
101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 44u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 100u8, 101u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 32u8, 105u8, 116u8, 46u8,
60u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8, 45u8,
48u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 252u8, 32u8,
32u8, 32u8, 32u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 69u8, 114u8, 97u8,
69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8,
44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8,
44u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 93u8, 180u8, 32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8,
115u8, 58u8, 32u8, 91u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 93u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 76u8, 101u8,
100u8, 103u8, 101u8, 114u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 68u8, 115u8, 101u8, 116u8, 95u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8,
95u8, 100u8, 101u8, 112u8, 116u8, 104u8, 8u8, 1u8, 68u8, 110u8, 101u8, 119u8, 95u8, 104u8, 105u8,
115u8, 116u8, 111u8, 114u8, 121u8, 95u8, 100u8, 101u8, 112u8, 116u8, 104u8, 121u8, 4u8, 1u8,
32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 72u8, 95u8, 101u8, 114u8,
97u8, 95u8, 105u8, 116u8, 101u8, 109u8, 115u8, 95u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8,
100u8, 121u8, 4u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 25u8, 84u8, 45u8, 1u8, 83u8, 101u8, 116u8,
32u8, 96u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 68u8, 101u8, 112u8, 116u8, 104u8,
96u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 100u8,
101u8, 108u8, 101u8, 116u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 104u8, 105u8, 115u8, 116u8,
111u8, 114u8, 121u8, 32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 124u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8,
121u8, 68u8, 101u8, 112u8, 116u8, 104u8, 96u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 100u8,
117u8, 99u8, 101u8, 100u8, 46u8, 0u8, 44u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8,
114u8, 115u8, 58u8, 13u8, 1u8, 45u8, 32u8, 96u8, 110u8, 101u8, 119u8, 95u8, 104u8, 105u8, 115u8,
116u8, 111u8, 114u8, 121u8, 95u8, 100u8, 101u8, 112u8, 116u8, 104u8, 96u8, 58u8, 32u8, 84u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8,
32u8, 100u8, 101u8, 112u8, 116u8, 104u8, 32u8, 121u8, 111u8, 117u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 108u8, 105u8, 107u8, 101u8, 32u8, 116u8, 111u8, 32u8, 115u8, 101u8, 116u8,
46u8, 69u8, 1u8, 45u8, 32u8, 96u8, 101u8, 114u8, 97u8, 95u8, 105u8, 116u8, 101u8, 109u8, 115u8,
95u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 105u8, 116u8, 101u8,
109u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8,
101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 46u8, 65u8, 1u8,
32u8, 32u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8,
32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8,
32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 99u8, 108u8,
101u8, 97u8, 114u8, 105u8, 110u8, 103u8, 32u8, 111u8, 108u8, 100u8, 65u8, 1u8, 32u8, 32u8, 32u8,
101u8, 114u8, 97u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 46u8, 32u8, 78u8,
101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8,
116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 117u8, 114u8, 97u8, 116u8, 101u8, 32u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 46u8, 32u8, 84u8, 114u8, 117u8, 115u8,
116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 156u8, 32u8, 32u8, 32u8, 96u8, 82u8, 111u8, 111u8, 116u8,
96u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 97u8, 110u8,
32u8, 97u8, 99u8, 99u8, 117u8, 114u8, 97u8, 116u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 46u8, 0u8, 80u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 220u8, 45u8, 32u8, 69u8, 58u8, 32u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8,
121u8, 32u8, 100u8, 101u8, 112u8, 116u8, 104u8, 115u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 100u8, 44u8, 32u8, 105u8, 46u8, 101u8, 46u8, 32u8, 49u8, 48u8, 32u8, 45u8, 62u8, 32u8,
55u8, 32u8, 61u8, 32u8, 51u8, 56u8, 45u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 58u8,
32u8, 79u8, 40u8, 69u8, 41u8, 48u8, 45u8, 32u8, 68u8, 66u8, 32u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 58u8, 156u8, 32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8,
58u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 69u8, 114u8, 97u8, 44u8, 32u8,
72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 32u8, 68u8, 101u8, 112u8, 116u8, 104u8, 108u8,
32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 72u8,
105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 32u8, 68u8, 101u8, 112u8, 116u8, 104u8, 45u8, 1u8,
32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 67u8, 108u8, 101u8, 97u8, 114u8, 32u8, 80u8, 114u8, 101u8,
102u8, 105u8, 120u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 69u8, 114u8, 97u8, 32u8, 83u8,
116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 44u8, 32u8, 69u8, 114u8, 97u8, 83u8, 116u8, 97u8, 107u8,
101u8, 114u8, 115u8, 67u8, 108u8, 105u8, 112u8, 112u8, 101u8, 100u8, 44u8, 32u8, 69u8, 114u8,
97u8, 115u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 80u8, 114u8, 101u8,
102u8, 115u8, 125u8, 1u8, 32u8, 32u8, 32u8, 32u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8,
115u8, 32u8, 69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 69u8, 114u8, 97u8, 115u8, 86u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 44u8, 32u8,
69u8, 114u8, 97u8, 115u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 111u8, 105u8, 110u8,
116u8, 115u8, 44u8, 32u8, 69u8, 114u8, 97u8, 115u8, 84u8, 111u8, 116u8, 97u8, 108u8, 83u8, 116u8,
97u8, 107u8, 101u8, 44u8, 32u8, 69u8, 114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 114u8, 116u8, 83u8,
101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 44u8, 35u8, 32u8,
60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 40u8, 114u8, 101u8, 97u8, 112u8,
95u8, 115u8, 116u8, 97u8, 115u8, 104u8, 8u8, 1u8, 20u8, 115u8, 116u8, 97u8, 115u8, 104u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
72u8, 110u8, 117u8, 109u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 95u8,
115u8, 112u8, 97u8, 110u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 26u8, 60u8, 93u8, 1u8,
82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 108u8, 108u8, 32u8, 100u8, 97u8, 116u8,
97u8, 32u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 117u8, 114u8, 101u8, 32u8, 99u8, 111u8,
110u8, 99u8, 101u8, 114u8, 110u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 115u8, 116u8, 97u8,
107u8, 101u8, 114u8, 47u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 111u8, 110u8, 99u8, 101u8,
32u8, 105u8, 116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 115u8,
32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8,
109u8, 46u8, 93u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 101u8, 115u8, 115u8,
101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8,
97u8, 108u8, 101u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 96u8, 119u8, 105u8, 116u8, 104u8,
100u8, 114u8, 97u8, 119u8, 95u8, 117u8, 110u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 96u8,
32u8, 101u8, 120u8, 99u8, 101u8, 112u8, 116u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8,
98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8,
121u8, 111u8, 110u8, 101u8, 244u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 96u8, 115u8, 116u8, 97u8, 115u8, 104u8, 96u8, 32u8,
109u8, 117u8, 115u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 110u8, 111u8, 32u8, 102u8,
117u8, 110u8, 100u8, 115u8, 32u8, 108u8, 101u8, 102u8, 116u8, 32u8, 98u8, 101u8, 121u8, 111u8,
110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 69u8, 68u8, 46u8, 0u8, 140u8, 84u8, 104u8, 105u8,
115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 110u8, 121u8, 32u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 46u8, 0u8, 252u8, 45u8, 32u8, 96u8, 115u8, 116u8, 97u8, 115u8, 104u8, 96u8, 58u8,
32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 97u8, 112u8, 46u8, 32u8, 73u8,
116u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 98u8, 101u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 33u8, 1u8, 67u8, 111u8, 109u8, 112u8, 108u8,
101u8, 120u8, 105u8, 116u8, 121u8, 58u8, 32u8, 79u8, 40u8, 83u8, 41u8, 32u8, 119u8, 104u8, 101u8,
114u8, 101u8, 32u8, 83u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8,
110u8, 103u8, 32u8, 115u8, 112u8, 97u8, 110u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 40u8, 68u8, 66u8, 32u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 58u8, 212u8, 45u8, 32u8, 82u8, 101u8, 97u8, 100u8, 115u8,
58u8, 32u8, 83u8, 116u8, 97u8, 115u8, 104u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
44u8, 32u8, 66u8, 111u8, 110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8,
105u8, 110u8, 103u8, 32u8, 83u8, 112u8, 97u8, 110u8, 115u8, 44u8, 32u8, 76u8, 111u8, 99u8, 107u8,
115u8, 161u8, 1u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 66u8, 111u8,
110u8, 100u8, 101u8, 100u8, 44u8, 32u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8,
32u8, 83u8, 112u8, 97u8, 110u8, 115u8, 32u8, 40u8, 105u8, 102u8, 32u8, 83u8, 32u8, 62u8, 32u8,
48u8, 41u8, 44u8, 32u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 44u8, 32u8, 80u8, 97u8, 121u8,
101u8, 101u8, 44u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8,
44u8, 32u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 32u8, 83u8,
116u8, 97u8, 115u8, 104u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 76u8,
111u8, 99u8, 107u8, 115u8, 112u8, 45u8, 32u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8,
69u8, 97u8, 99u8, 104u8, 58u8, 32u8, 83u8, 112u8, 97u8, 110u8, 83u8, 108u8, 97u8, 115u8, 104u8,
32u8, 42u8, 32u8, 83u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 96u8, 115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 95u8, 101u8, 108u8, 101u8, 99u8, 116u8,
105u8, 111u8, 110u8, 95u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 20u8, 1u8,
28u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 115u8, 21u8, 6u8, 1u8, 76u8, 86u8, 101u8, 99u8,
60u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 73u8, 110u8, 100u8, 101u8,
120u8, 62u8, 0u8, 1u8, 28u8, 99u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 25u8, 6u8, 1u8, 72u8,
67u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 109u8,
101u8, 110u8, 116u8, 115u8, 0u8, 1u8, 20u8, 115u8, 99u8, 111u8, 114u8, 101u8, 229u8, 6u8, 1u8,
52u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 99u8, 111u8, 114u8, 101u8, 0u8,
1u8, 12u8, 101u8, 114u8, 97u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8,
120u8, 0u8, 1u8, 16u8, 115u8, 105u8, 122u8, 101u8, 233u8, 6u8, 1u8, 48u8, 69u8, 108u8, 101u8,
99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 105u8, 122u8, 101u8, 0u8, 27u8, 196u8, 224u8, 83u8,
117u8, 98u8, 109u8, 105u8, 116u8, 32u8, 97u8, 110u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 116u8, 111u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 32u8, 73u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 58u8, 0u8, 48u8,
49u8, 46u8, 32u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 17u8, 1u8, 50u8,
46u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 32u8, 98u8, 101u8, 116u8, 116u8, 101u8, 114u8, 32u8,
115u8, 99u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 97u8, 32u8, 112u8,
111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 101u8, 120u8, 105u8,
115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8,
32u8, 111u8, 110u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 0u8, 128u8, 116u8, 104u8, 101u8,
110u8, 44u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 95u8,
112u8, 117u8, 116u8, 95u8, 32u8, 111u8, 110u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 0u8,
168u8, 65u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 111u8,
110u8, 115u8, 105u8, 115u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 119u8, 111u8, 32u8,
112u8, 105u8, 101u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 100u8, 97u8, 116u8, 97u8,
58u8, 0u8, 240u8, 49u8, 46u8, 32u8, 96u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 115u8, 96u8,
58u8, 32u8, 97u8, 32u8, 102u8, 108u8, 97u8, 116u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8,
32u8, 111u8, 102u8, 32u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 105u8,
110u8, 110u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8,
111u8, 117u8, 110u8, 100u8, 46u8, 77u8, 1u8, 50u8, 46u8, 32u8, 96u8, 97u8, 115u8, 115u8, 105u8,
103u8, 110u8, 109u8, 101u8, 110u8, 116u8, 115u8, 96u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8,
109u8, 101u8, 110u8, 116u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 101u8, 110u8, 99u8, 111u8, 100u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 100u8, 103u8, 101u8, 44u8, 32u8, 32u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 115u8, 46u8, 0u8, 29u8, 1u8, 66u8, 111u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 109u8,
112u8, 117u8, 116u8, 101u8, 100u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 95u8, 112u8,
104u8, 114u8, 97u8, 103u8, 109u8, 101u8, 110u8, 95u8, 44u8, 32u8, 111u8, 114u8, 32u8, 97u8,
110u8, 121u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 108u8, 103u8, 111u8, 114u8,
105u8, 116u8, 104u8, 109u8, 46u8, 0u8, 164u8, 65u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8,
110u8, 97u8, 108u8, 108u8, 121u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8,
109u8, 105u8, 116u8, 116u8, 101u8, 114u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 58u8, 0u8, 196u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 96u8,
115u8, 99u8, 111u8, 114u8, 101u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8,
32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 46u8,
0u8, 73u8, 1u8, 66u8, 111u8, 116u8, 104u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 114u8,
101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 84u8, 104u8, 101u8,
25u8, 1u8, 105u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 115u8, 112u8, 111u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 32u8, 40u8, 91u8, 96u8, 86u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 73u8, 110u8, 100u8, 101u8, 120u8, 96u8, 93u8, 32u8, 97u8, 110u8,
100u8, 45u8, 1u8, 91u8, 96u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 73u8,
110u8, 100u8, 101u8, 120u8, 96u8, 93u8, 41u8, 46u8, 32u8, 77u8, 111u8, 114u8, 101u8, 111u8,
118u8, 101u8, 114u8, 44u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 100u8,
101u8, 120u8, 32u8, 105u8, 110u8, 116u8, 111u8, 77u8, 1u8, 91u8, 96u8, 83u8, 110u8, 97u8, 112u8,
115u8, 104u8, 111u8, 116u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8,
96u8, 93u8, 32u8, 97u8, 110u8, 100u8, 32u8, 91u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 96u8, 93u8,
46u8, 32u8, 65u8, 110u8, 121u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 99u8, 97u8, 117u8,
115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 93u8, 1u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8,
116u8, 101u8, 100u8, 46u8, 32u8, 84u8, 104u8, 101u8, 115u8, 101u8, 32u8, 116u8, 119u8, 111u8,
32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 32u8, 97u8, 110u8, 100u8, 148u8, 109u8, 97u8,
121u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 100u8,
101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8,
110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 46u8, 0u8, 92u8, 65u8, 32u8, 115u8, 111u8, 108u8, 117u8,
116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8,
105u8, 102u8, 58u8, 0u8, 224u8, 48u8, 46u8, 32u8, 73u8, 116u8, 32u8, 105u8, 115u8, 32u8, 115u8,
117u8, 98u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8,
91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8,
97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 96u8, 79u8, 112u8, 101u8, 110u8,
96u8, 46u8, 244u8, 49u8, 46u8, 32u8, 73u8, 116u8, 115u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 32u8, 115u8, 99u8, 111u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 101u8, 113u8,
117u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8, 111u8,
114u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 168u8, 50u8, 46u8, 32u8, 80u8, 114u8, 101u8, 115u8,
101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 114u8, 114u8, 101u8,
99u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 119u8,
105u8, 110u8, 110u8, 101u8, 114u8, 115u8, 46u8, 81u8, 1u8, 51u8, 46u8, 32u8, 65u8, 108u8, 108u8,
32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 101u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8,
98u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 114u8, 100u8,
105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 110u8, 97u8,
112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 115u8, 46u8,
32u8, 65u8, 108u8, 108u8, 32u8, 101u8, 100u8, 103u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 89u8, 1u8, 32u8, 32u8, 32u8, 97u8, 108u8, 115u8,
111u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 32u8, 97u8, 110u8,
100u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 111u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8,
97u8, 110u8, 117u8, 108u8, 97u8, 114u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 97u8, 116u8, 105u8, 111u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8,
40u8, 105u8, 46u8, 101u8, 46u8, 32u8, 50u8, 53u8, 54u8, 60u8, 32u8, 32u8, 32u8, 111u8, 114u8,
32u8, 98u8, 105u8, 108u8, 108u8, 105u8, 111u8, 110u8, 41u8, 46u8, 9u8, 1u8, 52u8, 46u8, 32u8,
70u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 101u8, 100u8, 103u8, 101u8, 44u8, 32u8,
97u8, 108u8, 108u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 108u8, 121u8, 32u8, 110u8, 111u8, 109u8,
105u8, 110u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 111u8, 116u8, 101u8, 114u8, 46u8, 104u8, 53u8, 46u8, 32u8, 72u8, 97u8, 115u8, 32u8, 99u8,
111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 32u8, 115u8, 101u8, 108u8, 102u8, 45u8, 118u8, 111u8,
116u8, 101u8, 115u8, 46u8, 0u8, 188u8, 65u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8,
111u8, 110u8, 115u8, 32u8, 115u8, 99u8, 111u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 99u8,
111u8, 110u8, 115u8, 105u8, 115u8, 116u8, 101u8, 100u8, 32u8, 111u8, 102u8, 32u8, 51u8, 32u8,
112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 58u8, 0u8, 97u8, 1u8, 49u8,
46u8, 32u8, 96u8, 109u8, 105u8, 110u8, 32u8, 123u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8,
114u8, 116u8, 46u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 125u8, 96u8, 32u8, 102u8, 111u8,
114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8,
32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 46u8, 32u8, 84u8,
104u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 105u8, 122u8, 101u8,
100u8, 46u8, 97u8, 1u8, 50u8, 46u8, 32u8, 96u8, 115u8, 117u8, 109u8, 32u8, 123u8, 32u8, 115u8,
117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 46u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 125u8,
96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 115u8, 117u8, 112u8,
112u8, 111u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 119u8, 105u8, 110u8, 110u8,
101u8, 114u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 109u8, 105u8, 110u8,
105u8, 109u8, 105u8, 122u8, 101u8, 100u8, 46u8, 61u8, 1u8, 51u8, 46u8, 32u8, 96u8, 115u8, 117u8,
109u8, 32u8, 123u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 46u8, 116u8, 111u8,
116u8, 97u8, 108u8, 94u8, 50u8, 32u8, 125u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 97u8,
99u8, 104u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8,
97u8, 32u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
98u8, 101u8, 152u8, 32u8, 32u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 105u8, 122u8, 101u8,
100u8, 32u8, 40u8, 116u8, 111u8, 32u8, 101u8, 110u8, 115u8, 117u8, 114u8, 101u8, 32u8, 108u8,
101u8, 115u8, 115u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 99u8, 101u8, 41u8, 0u8, 40u8,
35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 21u8, 1u8, 84u8, 104u8, 101u8,
32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 97u8, 115u8, 115u8, 117u8, 109u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 111u8, 110u8, 103u8, 101u8, 115u8, 116u8, 32u8,
112u8, 97u8, 116u8, 104u8, 44u8, 32u8, 97u8, 32u8, 98u8, 101u8, 116u8, 116u8, 101u8, 114u8, 32u8,
115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 160u8, 32u8, 32u8, 45u8, 32u8,
73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 109u8, 111u8, 115u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 46u8, 65u8, 1u8, 32u8, 32u8, 45u8, 32u8, 87u8,
111u8, 114u8, 115u8, 101u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
105u8, 115u8, 32u8, 114u8, 101u8, 116u8, 114u8, 97u8, 99u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 112u8, 114u8, 101u8, 45u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 45u8,
99u8, 104u8, 101u8, 99u8, 107u8, 115u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 115u8,
101u8, 116u8, 115u8, 32u8, 105u8, 116u8, 115u8, 32u8, 111u8, 119u8, 110u8, 32u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 132u8, 115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 95u8, 101u8, 108u8, 101u8,
99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8,
95u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 20u8, 1u8, 28u8, 119u8, 105u8,
110u8, 110u8, 101u8, 114u8, 115u8, 21u8, 6u8, 1u8, 76u8, 86u8, 101u8, 99u8, 60u8, 86u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 73u8, 110u8, 100u8, 101u8, 120u8, 62u8, 0u8, 1u8,
28u8, 99u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 25u8, 6u8, 1u8, 72u8, 67u8, 111u8, 109u8,
112u8, 97u8, 99u8, 116u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 109u8, 101u8, 110u8, 116u8,
115u8, 0u8, 1u8, 20u8, 115u8, 99u8, 111u8, 114u8, 101u8, 229u8, 6u8, 1u8, 52u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 99u8, 111u8, 114u8, 101u8, 0u8, 1u8, 12u8, 101u8,
114u8, 97u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8,
16u8, 115u8, 105u8, 122u8, 101u8, 233u8, 6u8, 1u8, 48u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8,
111u8, 110u8, 83u8, 105u8, 122u8, 101u8, 0u8, 28u8, 36u8, 188u8, 85u8, 110u8, 115u8, 105u8,
103u8, 110u8, 101u8, 100u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 32u8, 111u8,
102u8, 32u8, 96u8, 115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 95u8, 101u8, 108u8, 101u8, 99u8,
116u8, 105u8, 111u8, 110u8, 95u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 96u8,
46u8, 0u8, 89u8, 1u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 112u8, 97u8, 115u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 91u8, 96u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 85u8,
110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 96u8, 93u8, 32u8, 99u8, 104u8, 101u8, 99u8,
107u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 93u8, 1u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 108u8, 111u8, 99u8, 97u8, 108u8, 32u8, 110u8, 111u8, 100u8, 101u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 46u8, 32u8, 73u8,
110u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 119u8, 111u8, 114u8, 100u8, 115u8, 44u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 32u8, 99u8, 97u8, 110u8, 32u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 32u8, 97u8, 100u8, 116u8, 114u8, 97u8, 110u8, 115u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 132u8, 83u8, 101u8, 101u8, 32u8, 91u8, 96u8, 115u8, 117u8, 98u8, 109u8,
105u8, 116u8, 95u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 115u8, 111u8,
108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 96u8, 93u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 96u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 95u8,
115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 95u8, 98u8, 121u8, 95u8, 115u8, 121u8, 115u8,
116u8, 101u8, 109u8, 8u8, 1u8, 60u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
95u8, 115u8, 116u8, 97u8, 115u8, 104u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 12u8, 101u8, 114u8, 97u8, 16u8, 1u8, 32u8,
69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 29u8, 4u8, 33u8, 1u8, 83u8, 121u8,
115u8, 116u8, 101u8, 109u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 32u8, 111u8,
102u8, 32u8, 96u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8,
101u8, 114u8, 115u8, 40u8, 41u8, 96u8, 46u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 111u8, 111u8, 116u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 108u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8,
95u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 95u8, 102u8, 111u8, 114u8, 4u8, 1u8, 60u8,
115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 95u8, 115u8, 119u8, 105u8, 116u8, 99u8,
104u8, 141u8, 1u8, 1u8, 56u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 83u8, 119u8,
105u8, 116u8, 99u8, 104u8, 0u8, 30u8, 20u8, 105u8, 1u8, 83u8, 119u8, 105u8, 116u8, 99u8, 104u8,
32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 115u8, 116u8, 97u8, 116u8,
117u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 115u8, 105u8,
115u8, 32u8, 111u8, 102u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 83u8, 108u8,
97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 83u8, 119u8, 105u8, 116u8, 99u8, 104u8, 96u8, 46u8,
32u8, 67u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 116u8, 42u8, 32u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 32u8, 111u8, 102u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 1u8, 1u8,
42u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 95u8, 115u8, 119u8, 105u8,
116u8, 99u8, 104u8, 32u8, 45u8, 32u8, 83u8, 119u8, 105u8, 116u8, 99u8, 104u8, 32u8, 117u8, 115u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 115u8, 108u8,
97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 46u8, 176u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8,
95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 95u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 105u8, 110u8, 116u8, 101u8,
110u8, 100u8, 101u8, 100u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 8u8, 1u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 72u8, 110u8, 101u8, 119u8, 95u8, 105u8, 110u8, 116u8,
101u8, 110u8, 100u8, 101u8, 100u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 31u8, 24u8, 208u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 68u8, 73u8, 68u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 49u8,
1u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 119u8, 104u8, 105u8, 99u8,
104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8,
32u8, 112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 132u8, 42u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 97u8, 115u8,
32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 196u8, 42u8,
32u8, 110u8, 101u8, 119u8, 95u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 95u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 78u8, 101u8, 119u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 32u8, 111u8, 102u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 32u8,
99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
253u8, 5u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8,
105u8, 110u8, 103u8, 68u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 68u8, 101u8, 115u8, 116u8,
105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 16u8, 24u8, 83u8, 116u8, 97u8, 107u8, 101u8, 100u8, 0u8, 0u8,
0u8, 20u8, 83u8, 116u8, 97u8, 115u8, 104u8, 0u8, 1u8, 0u8, 40u8, 67u8, 111u8, 110u8, 116u8,
114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 0u8, 2u8, 0u8, 28u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 0u8, 3u8, 0u8, 0u8, 1u8, 6u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 56u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 80u8, 114u8, 101u8, 102u8, 115u8, 0u8, 0u8, 8u8, 1u8, 40u8, 99u8, 111u8,
109u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 5u8, 6u8, 1u8, 28u8, 80u8, 101u8, 114u8,
98u8, 105u8, 108u8, 108u8, 0u8, 1u8, 28u8, 98u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 21u8,
1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 5u8, 6u8, 0u8, 0u8, 6u8, 137u8, 1u8, 0u8,
9u8, 6u8, 0u8, 0u8, 2u8, 65u8, 5u8, 0u8, 13u8, 6u8, 12u8, 52u8, 115u8, 112u8, 95u8, 97u8, 114u8,
105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8, 40u8, 112u8, 101u8, 114u8, 95u8, 116u8,
104u8, 105u8, 110u8, 103u8, 115u8, 28u8, 80u8, 101u8, 114u8, 99u8, 101u8, 110u8, 116u8, 0u8, 0u8,
4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 17u8, 6u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 16u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8,
0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 16u8, 0u8, 0u8, 1u8, 0u8, 0u8, 21u8, 6u8, 0u8,
0u8, 2u8, 57u8, 3u8, 0u8, 25u8, 6u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 72u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8,
116u8, 65u8, 115u8, 115u8, 105u8, 103u8, 110u8, 109u8, 101u8, 110u8, 116u8, 115u8, 0u8, 0u8,
64u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8, 115u8, 49u8, 29u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8,
111u8, 116u8, 101u8, 115u8, 50u8, 41u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8,
115u8, 51u8, 61u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8, 115u8, 52u8, 73u8, 6u8,
0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8, 115u8, 53u8, 85u8, 6u8, 0u8, 0u8, 1u8, 24u8,
118u8, 111u8, 116u8, 101u8, 115u8, 54u8, 97u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8,
101u8, 115u8, 55u8, 109u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8, 115u8, 56u8,
121u8, 6u8, 0u8, 0u8, 1u8, 24u8, 118u8, 111u8, 116u8, 101u8, 115u8, 57u8, 133u8, 6u8, 0u8, 0u8,
1u8, 28u8, 118u8, 111u8, 116u8, 101u8, 115u8, 49u8, 48u8, 145u8, 6u8, 0u8, 0u8, 1u8, 28u8, 118u8,
111u8, 116u8, 101u8, 115u8, 49u8, 49u8, 157u8, 6u8, 0u8, 0u8, 1u8, 28u8, 118u8, 111u8, 116u8,
101u8, 115u8, 49u8, 50u8, 169u8, 6u8, 0u8, 0u8, 1u8, 28u8, 118u8, 111u8, 116u8, 101u8, 115u8,
49u8, 51u8, 181u8, 6u8, 0u8, 0u8, 1u8, 28u8, 118u8, 111u8, 116u8, 101u8, 115u8, 49u8, 52u8,
193u8, 6u8, 0u8, 0u8, 1u8, 28u8, 118u8, 111u8, 116u8, 101u8, 115u8, 49u8, 53u8, 205u8, 6u8, 0u8,
0u8, 1u8, 28u8, 118u8, 111u8, 116u8, 101u8, 115u8, 49u8, 54u8, 217u8, 6u8, 0u8, 0u8, 0u8, 29u8,
6u8, 0u8, 0u8, 2u8, 33u8, 6u8, 0u8, 33u8, 6u8, 0u8, 0u8, 4u8, 8u8, 121u8, 4u8, 37u8, 6u8, 0u8,
37u8, 6u8, 0u8, 0u8, 6u8, 57u8, 3u8, 0u8, 41u8, 6u8, 0u8, 0u8, 2u8, 45u8, 6u8, 0u8, 45u8, 6u8,
0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 49u8, 6u8, 37u8, 6u8, 0u8, 49u8, 6u8, 0u8, 0u8, 4u8, 8u8, 37u8,
6u8, 53u8, 6u8, 0u8, 53u8, 6u8, 0u8, 0u8, 6u8, 57u8, 6u8, 0u8, 57u8, 6u8, 12u8, 52u8, 115u8,
112u8, 95u8, 97u8, 114u8, 105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8, 40u8, 112u8,
101u8, 114u8, 95u8, 116u8, 104u8, 105u8, 110u8, 103u8, 115u8, 24u8, 80u8, 101u8, 114u8, 85u8,
49u8, 54u8, 0u8, 0u8, 4u8, 0u8, 57u8, 3u8, 1u8, 12u8, 117u8, 49u8, 54u8, 0u8, 0u8, 61u8, 6u8,
0u8, 0u8, 2u8, 65u8, 6u8, 0u8, 65u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 69u8, 6u8, 37u8, 6u8,
0u8, 69u8, 6u8, 0u8, 0u8, 3u8, 2u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 73u8, 6u8, 0u8, 0u8, 2u8,
77u8, 6u8, 0u8, 77u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 81u8, 6u8, 37u8, 6u8, 0u8, 81u8, 6u8,
0u8, 0u8, 3u8, 3u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 85u8, 6u8, 0u8, 0u8, 2u8, 89u8, 6u8, 0u8,
89u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 93u8, 6u8, 37u8, 6u8, 0u8, 93u8, 6u8, 0u8, 0u8, 3u8,
4u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 97u8, 6u8, 0u8, 0u8, 2u8, 101u8, 6u8, 0u8, 101u8, 6u8, 0u8,
0u8, 4u8, 12u8, 121u8, 4u8, 105u8, 6u8, 37u8, 6u8, 0u8, 105u8, 6u8, 0u8, 0u8, 3u8, 5u8, 0u8, 0u8,
0u8, 49u8, 6u8, 0u8, 109u8, 6u8, 0u8, 0u8, 2u8, 113u8, 6u8, 0u8, 113u8, 6u8, 0u8, 0u8, 4u8, 12u8,
121u8, 4u8, 117u8, 6u8, 37u8, 6u8, 0u8, 117u8, 6u8, 0u8, 0u8, 3u8, 6u8, 0u8, 0u8, 0u8, 49u8, 6u8,
0u8, 121u8, 6u8, 0u8, 0u8, 2u8, 125u8, 6u8, 0u8, 125u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8,
129u8, 6u8, 37u8, 6u8, 0u8, 129u8, 6u8, 0u8, 0u8, 3u8, 7u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 133u8,
6u8, 0u8, 0u8, 2u8, 137u8, 6u8, 0u8, 137u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 141u8, 6u8,
37u8, 6u8, 0u8, 141u8, 6u8, 0u8, 0u8, 3u8, 8u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 145u8, 6u8, 0u8,
0u8, 2u8, 149u8, 6u8, 0u8, 149u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 153u8, 6u8, 37u8, 6u8,
0u8, 153u8, 6u8, 0u8, 0u8, 3u8, 9u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 157u8, 6u8, 0u8, 0u8, 2u8,
161u8, 6u8, 0u8, 161u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 165u8, 6u8, 37u8, 6u8, 0u8, 165u8,
6u8, 0u8, 0u8, 3u8, 10u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 169u8, 6u8, 0u8, 0u8, 2u8, 173u8, 6u8,
0u8, 173u8, 6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 177u8, 6u8, 37u8, 6u8, 0u8, 177u8, 6u8, 0u8,
0u8, 3u8, 11u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 181u8, 6u8, 0u8, 0u8, 2u8, 185u8, 6u8, 0u8, 185u8,
6u8, 0u8, 0u8, 4u8, 12u8, 121u8, 4u8, 189u8, 6u8, 37u8, 6u8, 0u8, 189u8, 6u8, 0u8, 0u8, 3u8,
12u8, 0u8, 0u8, 0u8, 49u8, 6u8, 0u8, 193u8, 6u8, 0u8, 0u8, 2u8, 197u8, 6u8, 0u8, 197u8, 6u8, 0u8,
0u8, 4u8, 12u8, 121u8, 4u8, 201u8, 6u8, 37u8, 6u8, 0u8, 201u8, 6u8, 0u8, 0u8, 3u8, 13u8, 0u8,
0u8, 0u8, 49u8, 6u8, 0u8, 205u8, 6u8, 0u8, 0u8, 2u8, 209u8, 6u8, 0u8, 209u8, 6u8, 0u8, 0u8, 4u8,
12u8, 121u8, 4u8, 213u8, 6u8, 37u8, 6u8, 0u8, 213u8, 6u8, 0u8, 0u8, 3u8, 14u8, 0u8, 0u8, 0u8,
49u8, 6u8, 0u8, 217u8, 6u8, 0u8, 0u8, 2u8, 221u8, 6u8, 0u8, 221u8, 6u8, 0u8, 0u8, 4u8, 12u8,
121u8, 4u8, 225u8, 6u8, 37u8, 6u8, 0u8, 225u8, 6u8, 0u8, 0u8, 3u8, 15u8, 0u8, 0u8, 0u8, 49u8,
6u8, 0u8, 229u8, 6u8, 8u8, 68u8, 115u8, 112u8, 95u8, 110u8, 112u8, 111u8, 115u8, 95u8, 101u8,
108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 52u8, 69u8, 108u8, 101u8, 99u8, 116u8,
105u8, 111u8, 110u8, 83u8, 99u8, 111u8, 114u8, 101u8, 0u8, 0u8, 12u8, 1u8, 52u8, 109u8, 105u8,
110u8, 105u8, 109u8, 97u8, 108u8, 95u8, 115u8, 116u8, 97u8, 107u8, 101u8, 24u8, 1u8, 60u8, 69u8,
120u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 1u8, 36u8, 115u8, 117u8, 109u8, 95u8, 115u8, 116u8, 97u8, 107u8, 101u8, 24u8, 1u8, 60u8,
69u8, 120u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 1u8, 68u8, 115u8, 117u8, 109u8, 95u8, 115u8, 116u8, 97u8, 107u8, 101u8, 95u8, 115u8,
113u8, 117u8, 97u8, 114u8, 101u8, 100u8, 24u8, 1u8, 60u8, 69u8, 120u8, 116u8, 101u8, 110u8,
100u8, 101u8, 100u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 233u8, 6u8, 8u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8,
103u8, 48u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 105u8, 122u8, 101u8,
0u8, 0u8, 8u8, 1u8, 40u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8,
37u8, 6u8, 1u8, 56u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 1u8, 40u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 115u8, 121u8, 4u8, 1u8, 56u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8,
73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 237u8, 6u8, 12u8, 56u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 24u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 32u8, 115u8,
101u8, 116u8, 95u8, 107u8, 101u8, 121u8, 115u8, 8u8, 1u8, 16u8, 107u8, 101u8, 121u8, 115u8,
241u8, 6u8, 1u8, 28u8, 84u8, 58u8, 58u8, 75u8, 101u8, 121u8, 115u8, 0u8, 1u8, 20u8, 112u8, 114u8,
111u8, 111u8, 102u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 56u8,
228u8, 83u8, 101u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 107u8, 101u8, 121u8, 40u8, 115u8, 41u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8,
97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 96u8, 107u8, 101u8, 121u8, 115u8,
96u8, 46u8, 29u8, 1u8, 65u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 115u8, 101u8, 116u8, 32u8,
105u8, 116u8, 115u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 107u8, 101u8,
121u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 99u8,
111u8, 109u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 46u8, 192u8, 84u8, 104u8, 105u8, 115u8, 32u8, 100u8, 111u8, 101u8, 115u8,
110u8, 39u8, 116u8, 32u8, 116u8, 97u8, 107u8, 101u8, 32u8, 101u8, 102u8, 102u8, 101u8, 99u8,
116u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 46u8, 0u8, 208u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8,
101u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8,
101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 17u8, 1u8, 45u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8,
101u8, 120u8, 105u8, 116u8, 121u8, 58u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 46u8, 32u8,
65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 99u8, 111u8, 115u8, 116u8, 32u8, 100u8, 101u8,
112u8, 101u8, 110u8, 100u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8,
104u8, 32u8, 111u8, 102u8, 152u8, 32u8, 32u8, 96u8, 84u8, 58u8, 58u8, 75u8, 101u8, 121u8, 115u8,
58u8, 58u8, 107u8, 101u8, 121u8, 95u8, 105u8, 100u8, 115u8, 40u8, 41u8, 96u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 102u8, 105u8, 120u8, 101u8, 100u8, 46u8, 236u8,
45u8, 32u8, 68u8, 98u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 96u8, 44u8, 32u8, 96u8,
84u8, 58u8, 58u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 73u8, 100u8, 79u8,
102u8, 96u8, 44u8, 32u8, 96u8, 78u8, 101u8, 120u8, 116u8, 75u8, 101u8, 121u8, 115u8, 96u8, 160u8,
45u8, 32u8, 68u8, 98u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 96u8, 44u8, 32u8,
96u8, 78u8, 101u8, 120u8, 116u8, 75u8, 101u8, 121u8, 115u8, 96u8, 128u8, 45u8, 32u8, 68u8, 98u8,
82u8, 101u8, 97u8, 100u8, 115u8, 32u8, 112u8, 101u8, 114u8, 32u8, 107u8, 101u8, 121u8, 32u8,
105u8, 100u8, 58u8, 32u8, 96u8, 75u8, 101u8, 121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 96u8,
132u8, 45u8, 32u8, 68u8, 98u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8, 112u8, 101u8,
114u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 100u8, 58u8, 32u8, 96u8, 75u8, 101u8, 121u8, 79u8,
119u8, 110u8, 101u8, 114u8, 96u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 62u8, 40u8, 112u8, 117u8, 114u8, 103u8, 101u8, 95u8, 107u8, 101u8, 121u8, 115u8,
0u8, 1u8, 64u8, 200u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 110u8, 121u8,
32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 107u8, 101u8, 121u8, 40u8, 115u8,
41u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 46u8, 0u8, 192u8, 84u8, 104u8,
105u8, 115u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 116u8, 97u8, 107u8,
101u8, 32u8, 101u8, 102u8, 102u8, 101u8, 99u8, 116u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 46u8, 0u8, 85u8, 1u8, 84u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8,
100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 101u8, 105u8, 116u8,
104u8, 101u8, 114u8, 32u8, 98u8, 101u8, 93u8, 1u8, 99u8, 111u8, 110u8, 118u8, 101u8, 114u8,
116u8, 105u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 73u8, 68u8, 32u8, 117u8, 115u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 39u8, 115u8, 32u8,
116u8, 121u8, 112u8, 105u8, 99u8, 97u8, 108u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8,
115u8, 105u8, 110u8, 103u8, 32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 40u8, 116u8,
104u8, 105u8, 115u8, 32u8, 117u8, 115u8, 117u8, 97u8, 108u8, 108u8, 121u8, 81u8, 1u8, 109u8,
101u8, 97u8, 110u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 99u8, 111u8,
110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 41u8, 32u8, 111u8, 114u8, 32u8, 100u8, 105u8, 114u8, 101u8, 99u8, 116u8, 108u8,
121u8, 32u8, 99u8, 111u8, 110u8, 118u8, 101u8, 114u8, 116u8, 105u8, 98u8, 108u8, 101u8, 32u8,
105u8, 110u8, 116u8, 111u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 32u8, 73u8, 68u8, 32u8, 40u8, 119u8, 104u8, 105u8, 99u8, 104u8, 148u8, 117u8,
115u8, 117u8, 97u8, 108u8, 108u8, 121u8, 32u8, 109u8, 101u8, 97u8, 110u8, 115u8, 32u8, 98u8,
101u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 97u8, 1u8, 45u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8,
105u8, 116u8, 121u8, 58u8, 32u8, 96u8, 79u8, 40u8, 49u8, 41u8, 96u8, 32u8, 105u8, 110u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 107u8, 101u8, 121u8, 32u8,
116u8, 121u8, 112u8, 101u8, 115u8, 46u8, 32u8, 65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 99u8,
111u8, 115u8, 116u8, 32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 115u8, 32u8, 111u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 164u8, 32u8, 32u8, 111u8, 102u8, 32u8, 96u8,
84u8, 58u8, 58u8, 75u8, 101u8, 121u8, 115u8, 58u8, 58u8, 107u8, 101u8, 121u8, 95u8, 105u8, 100u8,
115u8, 40u8, 41u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 102u8,
105u8, 120u8, 101u8, 100u8, 46u8, 236u8, 45u8, 32u8, 68u8, 98u8, 82u8, 101u8, 97u8, 100u8, 115u8,
58u8, 32u8, 96u8, 84u8, 58u8, 58u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
73u8, 100u8, 79u8, 102u8, 96u8, 44u8, 32u8, 96u8, 78u8, 101u8, 120u8, 116u8, 75u8, 101u8, 121u8,
115u8, 96u8, 44u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 96u8, 160u8, 45u8, 32u8, 68u8, 98u8, 87u8, 114u8, 105u8, 116u8,
101u8, 115u8, 58u8, 32u8, 96u8, 78u8, 101u8, 120u8, 116u8, 75u8, 101u8, 121u8, 115u8, 96u8, 44u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 96u8, 132u8, 45u8, 32u8, 68u8, 98u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 32u8,
112u8, 101u8, 114u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 100u8, 58u8, 32u8, 96u8, 75u8,
101u8, 121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 96u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 4u8, 37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8,
115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8,
112u8, 101u8, 114u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8,
108u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 241u8, 6u8, 12u8, 96u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
95u8, 100u8, 101u8, 118u8, 101u8, 108u8, 111u8, 112u8, 28u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 44u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 75u8, 101u8, 121u8, 115u8,
0u8, 0u8, 16u8, 1u8, 28u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 169u8, 1u8, 1u8, 9u8,
1u8, 60u8, 47u8, 42u8, 194u8, 171u8, 42u8, 47u8, 32u8, 71u8, 114u8, 97u8, 110u8, 100u8, 112u8,
97u8, 32u8, 47u8, 42u8, 194u8, 187u8, 42u8, 47u8, 32u8, 97u8, 115u8, 32u8, 36u8, 99u8, 114u8,
97u8, 116u8, 101u8, 58u8, 58u8, 66u8, 111u8, 117u8, 110u8, 100u8, 84u8, 111u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 65u8, 112u8, 112u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8,
62u8, 58u8, 58u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 1u8, 16u8, 98u8, 97u8, 98u8, 101u8,
201u8, 4u8, 1u8, 252u8, 60u8, 47u8, 42u8, 194u8, 171u8, 42u8, 47u8, 32u8, 66u8, 97u8, 98u8,
101u8, 32u8, 47u8, 42u8, 194u8, 187u8, 42u8, 47u8, 32u8, 97u8, 115u8, 32u8, 36u8, 99u8, 114u8,
97u8, 116u8, 101u8, 58u8, 58u8, 66u8, 111u8, 117u8, 110u8, 100u8, 84u8, 111u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 65u8, 112u8, 112u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8,
62u8, 58u8, 58u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 1u8, 36u8, 105u8, 109u8, 95u8,
111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 181u8, 1u8, 1u8, 13u8, 1u8, 60u8, 47u8, 42u8, 194u8,
171u8, 42u8, 47u8, 32u8, 73u8, 109u8, 79u8, 110u8, 108u8, 105u8, 110u8, 101u8, 32u8, 47u8, 42u8,
194u8, 187u8, 42u8, 47u8, 32u8, 97u8, 115u8, 32u8, 36u8, 99u8, 114u8, 97u8, 116u8, 101u8, 58u8,
58u8, 66u8, 111u8, 117u8, 110u8, 100u8, 84u8, 111u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 65u8, 112u8, 112u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 62u8, 58u8, 58u8, 80u8, 117u8,
98u8, 108u8, 105u8, 99u8, 0u8, 1u8, 76u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 95u8, 100u8, 105u8, 115u8, 99u8, 111u8, 118u8, 101u8, 114u8, 121u8, 245u8, 6u8, 1u8, 57u8,
1u8, 60u8, 47u8, 42u8, 194u8, 171u8, 42u8, 47u8, 32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 116u8, 121u8, 68u8, 105u8, 115u8, 99u8, 111u8, 118u8, 101u8, 114u8, 121u8, 32u8, 47u8,
42u8, 194u8, 187u8, 42u8, 47u8, 32u8, 97u8, 115u8, 32u8, 36u8, 99u8, 114u8, 97u8, 116u8, 101u8,
58u8, 58u8, 66u8, 111u8, 117u8, 110u8, 100u8, 84u8, 111u8, 82u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 65u8, 112u8, 112u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 62u8, 58u8, 58u8, 10u8,
80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 245u8, 6u8, 12u8, 88u8, 115u8, 112u8, 95u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 95u8, 100u8, 105u8, 115u8, 99u8,
111u8, 118u8, 101u8, 114u8, 121u8, 12u8, 97u8, 112u8, 112u8, 24u8, 80u8, 117u8, 98u8, 108u8,
105u8, 99u8, 0u8, 0u8, 4u8, 0u8, 185u8, 1u8, 1u8, 60u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8,
57u8, 58u8, 58u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 0u8, 0u8, 249u8, 6u8, 12u8, 56u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 24u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8,
1u8, 12u8, 76u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 95u8, 101u8, 113u8, 117u8, 105u8,
118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 8u8, 1u8, 72u8, 101u8, 113u8, 117u8, 105u8,
118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 112u8, 114u8, 111u8, 111u8, 102u8,
253u8, 6u8, 1u8, 188u8, 66u8, 111u8, 120u8, 60u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8,
97u8, 116u8, 105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 60u8, 84u8, 58u8, 58u8, 72u8,
97u8, 115u8, 104u8, 44u8, 32u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 62u8, 62u8, 0u8, 1u8, 60u8, 107u8, 101u8, 121u8, 95u8, 111u8, 119u8,
110u8, 101u8, 114u8, 95u8, 112u8, 114u8, 111u8, 111u8, 102u8, 1u8, 5u8, 1u8, 64u8, 84u8, 58u8,
58u8, 75u8, 101u8, 121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 80u8, 114u8, 111u8, 111u8, 102u8,
0u8, 0u8, 16u8, 9u8, 1u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 118u8, 111u8, 116u8,
101u8, 114u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8,
110u8, 47u8, 109u8, 105u8, 115u8, 98u8, 101u8, 104u8, 97u8, 118u8, 105u8, 111u8, 114u8, 46u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 118u8, 101u8, 114u8, 105u8, 102u8, 121u8, 32u8, 116u8, 104u8, 101u8,
244u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 97u8, 110u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8,
32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8,
32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 248u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8,
32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8, 102u8, 32u8,
98u8, 111u8, 116u8, 104u8, 32u8, 97u8, 114u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 68u8,
119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8,
101u8, 100u8, 46u8, 112u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 95u8, 101u8, 113u8, 117u8,
105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 117u8, 110u8, 115u8, 105u8,
103u8, 110u8, 101u8, 100u8, 8u8, 1u8, 72u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 95u8, 112u8, 114u8, 111u8, 111u8, 102u8, 253u8, 6u8, 1u8, 188u8,
66u8, 111u8, 120u8, 60u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8,
111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 60u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8,
44u8, 32u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 62u8, 62u8, 0u8, 1u8, 60u8, 107u8, 101u8, 121u8, 95u8, 111u8, 119u8, 110u8, 101u8, 114u8,
95u8, 112u8, 114u8, 111u8, 111u8, 102u8, 1u8, 5u8, 1u8, 64u8, 84u8, 58u8, 58u8, 75u8, 101u8,
121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 1u8, 36u8, 9u8,
1u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 32u8,
101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 47u8, 109u8,
105u8, 115u8, 98u8, 101u8, 104u8, 97u8, 118u8, 105u8, 111u8, 114u8, 46u8, 32u8, 84u8, 104u8,
105u8, 115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 118u8, 101u8, 114u8, 105u8, 102u8, 121u8, 32u8, 116u8, 104u8, 101u8, 244u8, 101u8, 113u8,
117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 114u8, 111u8,
111u8, 102u8, 32u8, 97u8, 110u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 112u8, 114u8,
111u8, 111u8, 102u8, 248u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 111u8, 102u8,
102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8, 102u8, 32u8, 98u8, 111u8, 116u8,
104u8, 32u8, 97u8, 114u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 44u8, 32u8, 116u8,
104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 68u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8, 46u8,
0u8, 13u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 97u8, 110u8,
100u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 112u8, 101u8, 99u8, 116u8,
101u8, 100u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 111u8, 110u8, 108u8, 121u8, 21u8, 1u8, 98u8,
108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 105u8, 116u8, 32u8, 40u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 96u8, 86u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 101u8, 85u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8,
96u8, 41u8, 44u8, 32u8, 97u8, 115u8, 32u8, 115u8, 117u8, 99u8, 104u8, 21u8, 1u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8,
32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8,
102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8,
113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 36u8, 114u8, 101u8,
112u8, 111u8, 114u8, 116u8, 101u8, 114u8, 46u8, 48u8, 110u8, 111u8, 116u8, 101u8, 95u8, 115u8,
116u8, 97u8, 108u8, 108u8, 101u8, 100u8, 8u8, 1u8, 20u8, 100u8, 101u8, 108u8, 97u8, 121u8, 16u8,
1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 0u8, 1u8, 108u8, 98u8, 101u8, 115u8, 116u8, 95u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8,
122u8, 101u8, 100u8, 95u8, 98u8, 108u8, 111u8, 99u8, 107u8, 95u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 0u8, 2u8, 28u8, 25u8, 1u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8, 101u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 71u8, 82u8, 65u8, 78u8, 68u8, 80u8,
65u8, 32u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 32u8, 103u8, 97u8, 100u8,
103u8, 101u8, 116u8, 32u8, 104u8, 97u8, 115u8, 37u8, 1u8, 115u8, 116u8, 97u8, 108u8, 108u8,
101u8, 100u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 32u8, 97u8, 32u8, 102u8, 111u8, 114u8, 99u8,
101u8, 100u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8,
101u8, 116u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 29u8, 1u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8,
115u8, 115u8, 105u8, 111u8, 110u8, 44u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 101u8,
110u8, 97u8, 99u8, 116u8, 101u8, 100u8, 32u8, 96u8, 100u8, 101u8, 108u8, 97u8, 121u8, 96u8, 32u8,
98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8,
104u8, 97u8, 116u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8, 100u8, 101u8, 108u8, 97u8, 121u8, 17u8,
1u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 104u8, 105u8, 103u8,
104u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 116u8, 111u8, 32u8, 115u8, 97u8,
102u8, 101u8, 108u8, 121u8, 32u8, 97u8, 115u8, 115u8, 117u8, 109u8, 101u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 115u8,
105u8, 103u8, 110u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 37u8,
1u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8,
45u8, 111u8, 114u8, 103u8, 101u8, 100u8, 32u8, 40u8, 101u8, 46u8, 103u8, 46u8, 32u8, 49u8, 48u8,
48u8, 48u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 41u8, 46u8, 32u8, 84u8, 104u8, 101u8,
32u8, 71u8, 82u8, 65u8, 78u8, 68u8, 80u8, 65u8, 32u8, 118u8, 111u8, 116u8, 101u8, 114u8, 115u8,
37u8, 1u8, 119u8, 105u8, 108u8, 108u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
116u8, 121u8, 32u8, 115u8, 101u8, 116u8, 32u8, 117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 102u8, 105u8, 110u8, 97u8, 108u8,
105u8, 122u8, 101u8, 100u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 115u8, 32u8, 98u8,
97u8, 115u8, 101u8, 46u8, 88u8, 79u8, 110u8, 108u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 97u8,
98u8, 108u8, 101u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 4u8, 37u8, 1u8,
67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
46u8, 253u8, 6u8, 8u8, 76u8, 115u8, 112u8, 95u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 116u8,
121u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 68u8, 69u8, 113u8, 117u8, 105u8,
118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 8u8, 4u8,
72u8, 1u8, 36u8, 4u8, 78u8, 1u8, 16u8, 0u8, 8u8, 1u8, 24u8, 115u8, 101u8, 116u8, 95u8, 105u8,
100u8, 32u8, 1u8, 20u8, 83u8, 101u8, 116u8, 73u8, 100u8, 0u8, 1u8, 48u8, 101u8, 113u8, 117u8,
105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 1u8, 7u8, 1u8, 72u8, 69u8, 113u8,
117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 60u8, 72u8, 44u8, 32u8, 78u8,
62u8, 0u8, 0u8, 1u8, 7u8, 8u8, 76u8, 115u8, 112u8, 95u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8,
116u8, 121u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 48u8, 69u8, 113u8, 117u8,
105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 8u8, 4u8, 72u8, 1u8, 36u8, 4u8,
78u8, 1u8, 16u8, 1u8, 8u8, 28u8, 80u8, 114u8, 101u8, 118u8, 111u8, 116u8, 101u8, 4u8, 0u8, 5u8,
7u8, 1u8, 57u8, 1u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 58u8, 58u8, 69u8, 113u8,
117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 103u8, 114u8, 97u8, 110u8,
100u8, 112u8, 97u8, 58u8, 58u8, 80u8, 114u8, 101u8, 118u8, 111u8, 116u8, 101u8, 60u8, 72u8, 44u8,
32u8, 78u8, 62u8, 44u8, 10u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 62u8, 0u8, 0u8, 0u8, 36u8, 80u8, 114u8,
101u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 4u8, 0u8, 25u8, 7u8, 1u8, 65u8, 1u8, 103u8,
114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 58u8, 58u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8,
99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 58u8, 58u8,
80u8, 114u8, 101u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 60u8, 72u8, 44u8, 32u8, 78u8, 62u8,
44u8, 10u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 62u8, 0u8, 1u8, 0u8, 0u8, 5u8, 7u8, 8u8, 64u8, 102u8,
105u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8,
97u8, 48u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8,
12u8, 8u8, 73u8, 100u8, 1u8, 169u8, 1u8, 4u8, 86u8, 1u8, 9u8, 7u8, 4u8, 83u8, 1u8, 13u8, 7u8,
0u8, 16u8, 1u8, 48u8, 114u8, 111u8, 117u8, 110u8, 100u8, 95u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 169u8, 1u8, 1u8, 8u8, 73u8, 100u8, 0u8, 1u8, 20u8, 102u8, 105u8, 114u8,
115u8, 116u8, 21u8, 7u8, 1u8, 24u8, 40u8, 86u8, 44u8, 32u8, 83u8, 41u8, 0u8, 1u8, 24u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 21u8, 7u8, 1u8, 24u8, 40u8, 86u8, 44u8, 32u8, 83u8, 41u8, 0u8,
0u8, 9u8, 7u8, 8u8, 64u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 95u8, 103u8,
114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 28u8, 80u8, 114u8, 101u8, 118u8, 111u8, 116u8, 101u8,
8u8, 4u8, 72u8, 1u8, 36u8, 4u8, 78u8, 1u8, 16u8, 0u8, 8u8, 1u8, 44u8, 116u8, 97u8, 114u8, 103u8,
101u8, 116u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 4u8, 72u8, 0u8, 1u8, 52u8, 116u8, 97u8,
114u8, 103u8, 101u8, 116u8, 95u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 16u8, 1u8, 4u8, 78u8,
0u8, 0u8, 13u8, 7u8, 12u8, 76u8, 115u8, 112u8, 95u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8,
116u8, 121u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 12u8, 97u8, 112u8, 112u8,
36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 0u8, 17u8, 7u8,
1u8, 72u8, 101u8, 100u8, 50u8, 53u8, 53u8, 49u8, 57u8, 58u8, 58u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 17u8, 7u8, 12u8, 28u8, 115u8, 112u8, 95u8, 99u8,
111u8, 114u8, 101u8, 28u8, 101u8, 100u8, 50u8, 53u8, 53u8, 49u8, 57u8, 36u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 0u8, 13u8, 2u8, 1u8, 32u8, 91u8, 117u8,
56u8, 59u8, 32u8, 54u8, 52u8, 93u8, 0u8, 0u8, 21u8, 7u8, 0u8, 0u8, 4u8, 8u8, 9u8, 7u8, 13u8, 7u8,
0u8, 25u8, 7u8, 8u8, 64u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 116u8, 121u8, 95u8, 103u8,
114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 48u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8,
97u8, 116u8, 105u8, 111u8, 110u8, 12u8, 8u8, 73u8, 100u8, 1u8, 169u8, 1u8, 4u8, 86u8, 1u8, 29u8,
7u8, 4u8, 83u8, 1u8, 13u8, 7u8, 0u8, 16u8, 1u8, 48u8, 114u8, 111u8, 117u8, 110u8, 100u8, 95u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 169u8, 1u8, 1u8, 8u8, 73u8, 100u8, 0u8,
1u8, 20u8, 102u8, 105u8, 114u8, 115u8, 116u8, 33u8, 7u8, 1u8, 24u8, 40u8, 86u8, 44u8, 32u8, 83u8,
41u8, 0u8, 1u8, 24u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 33u8, 7u8, 1u8, 24u8, 40u8, 86u8,
44u8, 32u8, 83u8, 41u8, 0u8, 0u8, 29u8, 7u8, 8u8, 64u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8,
116u8, 121u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 36u8, 80u8, 114u8, 101u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 8u8, 4u8, 72u8, 1u8, 36u8, 4u8, 78u8, 1u8, 16u8, 0u8,
8u8, 1u8, 44u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8,
1u8, 4u8, 72u8, 0u8, 1u8, 52u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 16u8, 1u8, 4u8, 78u8, 0u8, 0u8, 33u8, 7u8, 0u8, 0u8, 4u8, 8u8, 29u8,
7u8, 13u8, 7u8, 0u8, 37u8, 7u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8,
109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 4u8, 36u8, 104u8, 101u8, 97u8,
114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 8u8, 1u8, 36u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8,
101u8, 97u8, 116u8, 41u8, 7u8, 1u8, 100u8, 72u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8,
116u8, 60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 62u8, 0u8, 1u8, 36u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 61u8,
7u8, 1u8, 188u8, 60u8, 84u8, 58u8, 58u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 73u8, 100u8, 32u8, 97u8, 115u8, 32u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
65u8, 112u8, 112u8, 80u8, 117u8, 98u8, 108u8, 105u8, 99u8, 62u8, 58u8, 58u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 36u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 97u8, 1u8, 45u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8,
120u8, 105u8, 116u8, 121u8, 58u8, 32u8, 96u8, 79u8, 40u8, 75u8, 32u8, 43u8, 32u8, 69u8, 41u8,
96u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 75u8, 32u8, 105u8, 115u8, 32u8, 108u8,
101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 75u8, 101u8, 121u8, 115u8,
96u8, 32u8, 40u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 46u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 95u8, 108u8, 101u8, 110u8, 41u8, 32u8,
97u8, 110u8, 100u8, 32u8, 69u8, 32u8, 105u8, 115u8, 216u8, 32u8, 32u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8,
101u8, 97u8, 116u8, 46u8, 110u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 95u8, 115u8, 116u8,
97u8, 116u8, 101u8, 46u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 95u8, 97u8,
100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 96u8, 136u8, 32u8, 32u8, 45u8, 32u8, 96u8, 79u8, 40u8,
75u8, 41u8, 96u8, 58u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8,
102u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 96u8, 75u8, 96u8, 172u8, 32u8, 32u8,
45u8, 32u8, 96u8, 79u8, 40u8, 69u8, 41u8, 96u8, 58u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8,
105u8, 110u8, 103u8, 47u8, 101u8, 110u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8,
102u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 96u8, 69u8, 96u8, 57u8, 1u8, 45u8,
32u8, 68u8, 98u8, 82u8, 101u8, 97u8, 100u8, 115u8, 58u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 96u8, 86u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 96u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 96u8, 67u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 96u8, 44u8, 32u8, 96u8,
75u8, 101u8, 121u8, 115u8, 96u8, 44u8, 88u8, 32u8, 32u8, 96u8, 82u8, 101u8, 99u8, 101u8, 105u8,
118u8, 101u8, 100u8, 72u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 115u8, 96u8,
128u8, 45u8, 32u8, 68u8, 98u8, 87u8, 114u8, 105u8, 116u8, 101u8, 115u8, 58u8, 32u8, 96u8, 82u8,
101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 100u8, 72u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8,
97u8, 116u8, 115u8, 96u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
62u8, 4u8, 37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8,
101u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 46u8, 41u8, 7u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 36u8, 72u8, 101u8, 97u8,
114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 4u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 0u8, 20u8, 1u8, 48u8, 98u8, 108u8, 111u8, 99u8, 107u8,
95u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8,
78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 52u8, 110u8, 101u8, 116u8, 119u8, 111u8, 114u8,
107u8, 95u8, 115u8, 116u8, 97u8, 116u8, 101u8, 45u8, 7u8, 1u8, 72u8, 79u8, 112u8, 97u8, 113u8,
117u8, 101u8, 78u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 83u8, 116u8, 97u8, 116u8, 101u8,
0u8, 1u8, 52u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 105u8, 110u8, 100u8,
101u8, 120u8, 16u8, 1u8, 48u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 1u8, 60u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 36u8, 65u8, 117u8, 116u8, 104u8, 73u8,
110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 56u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 115u8, 95u8, 108u8, 101u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 45u8, 7u8,
12u8, 28u8, 115u8, 112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 32u8, 111u8, 102u8, 102u8, 99u8,
104u8, 97u8, 105u8, 110u8, 72u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8, 78u8, 101u8, 116u8,
119u8, 111u8, 114u8, 107u8, 83u8, 116u8, 97u8, 116u8, 101u8, 0u8, 0u8, 8u8, 1u8, 28u8, 112u8,
101u8, 101u8, 114u8, 95u8, 105u8, 100u8, 49u8, 7u8, 1u8, 48u8, 79u8, 112u8, 97u8, 113u8, 117u8,
101u8, 80u8, 101u8, 101u8, 114u8, 73u8, 100u8, 0u8, 1u8, 72u8, 101u8, 120u8, 116u8, 101u8, 114u8,
110u8, 97u8, 108u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 101u8, 115u8, 53u8,
7u8, 1u8, 80u8, 86u8, 101u8, 99u8, 60u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8, 77u8, 117u8,
108u8, 116u8, 105u8, 97u8, 100u8, 100u8, 114u8, 62u8, 0u8, 0u8, 49u8, 7u8, 8u8, 28u8, 115u8,
112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 48u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8, 80u8,
101u8, 101u8, 114u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8,
117u8, 56u8, 62u8, 0u8, 0u8, 53u8, 7u8, 0u8, 0u8, 2u8, 57u8, 7u8, 0u8, 57u8, 7u8, 12u8, 28u8,
115u8, 112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 32u8, 111u8, 102u8, 102u8, 99u8, 104u8, 97u8,
105u8, 110u8, 60u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8, 77u8, 117u8, 108u8, 116u8, 105u8,
97u8, 100u8, 100u8, 114u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 0u8, 61u8, 7u8, 16u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 28u8, 115u8, 114u8, 50u8, 53u8,
53u8, 49u8, 57u8, 44u8, 97u8, 112u8, 112u8, 95u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8,
36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 0u8, 65u8, 7u8,
1u8, 72u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 58u8, 58u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 65u8, 7u8, 12u8, 28u8, 115u8, 112u8, 95u8, 99u8,
111u8, 114u8, 101u8, 28u8, 115u8, 114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 36u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 0u8, 13u8, 2u8, 1u8, 32u8, 91u8, 117u8,
56u8, 59u8, 32u8, 54u8, 52u8, 93u8, 0u8, 0u8, 69u8, 7u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 115u8, 117u8, 100u8, 111u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8,
0u8, 1u8, 16u8, 16u8, 115u8, 117u8, 100u8, 111u8, 4u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8,
201u8, 5u8, 1u8, 96u8, 66u8, 111u8, 120u8, 60u8, 60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 67u8,
111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 0u8,
40u8, 53u8, 1u8, 65u8, 117u8, 116u8, 104u8, 101u8, 110u8, 116u8, 105u8, 99u8, 97u8, 116u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 100u8, 111u8, 32u8, 107u8, 101u8, 121u8,
32u8, 97u8, 110u8, 100u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8,
115u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 82u8, 111u8, 111u8, 116u8, 96u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 204u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8,
110u8, 101u8, 100u8, 95u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 28u8, 45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 96u8, 45u8, 32u8, 76u8, 105u8,
109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 92u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 68u8, 66u8,
32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 101u8, 118u8, 101u8, 110u8, 116u8, 41u8,
46u8, 196u8, 45u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8,
100u8, 101u8, 114u8, 105u8, 118u8, 97u8, 116u8, 105u8, 118u8, 101u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 96u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
43u8, 32u8, 49u8, 48u8, 44u8, 48u8, 48u8, 48u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 84u8, 115u8, 117u8, 100u8, 111u8, 95u8, 117u8, 110u8, 99u8,
104u8, 101u8, 99u8, 107u8, 101u8, 100u8, 95u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 8u8,
1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 201u8, 5u8, 1u8, 96u8, 66u8, 111u8, 120u8, 60u8, 60u8, 84u8,
32u8, 97u8, 115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8, 97u8,
108u8, 108u8, 62u8, 0u8, 1u8, 28u8, 95u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 1u8,
24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 40u8, 53u8, 1u8, 65u8, 117u8, 116u8,
104u8, 101u8, 110u8, 116u8, 105u8, 99u8, 97u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 117u8, 100u8, 111u8, 32u8, 107u8, 101u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 97u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 96u8, 82u8, 111u8, 111u8, 116u8, 96u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 46u8, 45u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
99u8, 104u8, 101u8, 99u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 116u8, 104u8, 101u8, 176u8, 83u8, 117u8, 100u8, 111u8,
32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8,
102u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8, 0u8, 204u8, 84u8,
104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8,
105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 28u8, 45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 204u8, 45u8, 32u8,
84u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 105u8, 115u8, 32u8, 100u8,
101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 62u8, 28u8, 115u8, 101u8, 116u8, 95u8, 107u8, 101u8, 121u8, 4u8, 1u8, 12u8,
110u8, 101u8, 119u8, 65u8, 5u8, 1u8, 140u8, 60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8,
117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8,
107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 2u8, 36u8,
113u8, 1u8, 65u8, 117u8, 116u8, 104u8, 101u8, 110u8, 116u8, 105u8, 99u8, 97u8, 116u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
115u8, 117u8, 100u8, 111u8, 32u8, 107u8, 101u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 115u8,
101u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 32u8, 40u8, 96u8, 110u8, 101u8, 119u8,
96u8, 41u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8,
117u8, 100u8, 111u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 204u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8,
110u8, 101u8, 100u8, 95u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 28u8, 45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 96u8, 45u8, 32u8, 76u8, 105u8,
109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 64u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 68u8, 66u8,
32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 28u8, 115u8, 117u8, 100u8, 111u8, 95u8, 97u8, 115u8, 8u8, 1u8,
12u8, 119u8, 104u8, 111u8, 65u8, 5u8, 1u8, 140u8, 60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8,
107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8, 116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8,
111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8, 111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 1u8,
16u8, 99u8, 97u8, 108u8, 108u8, 201u8, 5u8, 1u8, 96u8, 66u8, 111u8, 120u8, 60u8, 60u8, 84u8,
32u8, 97u8, 115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8, 97u8,
108u8, 108u8, 62u8, 0u8, 3u8, 44u8, 77u8, 1u8, 65u8, 117u8, 116u8, 104u8, 101u8, 110u8, 116u8,
105u8, 99u8, 97u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 100u8,
111u8, 32u8, 107u8, 101u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
96u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 96u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 64u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 204u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 95u8, 83u8, 105u8, 103u8,
110u8, 101u8, 100u8, 95u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 62u8, 28u8, 45u8, 32u8, 79u8, 40u8, 49u8, 41u8, 46u8, 96u8, 45u8, 32u8, 76u8, 105u8,
109u8, 105u8, 116u8, 101u8, 100u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
114u8, 101u8, 97u8, 100u8, 115u8, 46u8, 92u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 68u8, 66u8,
32u8, 119u8, 114u8, 105u8, 116u8, 101u8, 32u8, 40u8, 101u8, 118u8, 101u8, 110u8, 116u8, 41u8,
46u8, 196u8, 45u8, 32u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 111u8, 102u8, 32u8,
100u8, 101u8, 114u8, 105u8, 118u8, 97u8, 116u8, 105u8, 118u8, 101u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 96u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
43u8, 32u8, 49u8, 48u8, 44u8, 48u8, 48u8, 48u8, 46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
73u8, 7u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 96u8, 60u8, 114u8, 101u8, 103u8,
105u8, 115u8, 116u8, 101u8, 114u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 4u8, 1u8, 24u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 0u8, 36u8, 5u8, 1u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 115u8,
32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
111u8, 114u8, 32u8, 101u8, 120u8, 116u8, 101u8, 110u8, 100u8, 115u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8,
17u8, 1u8, 78u8, 66u8, 58u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 99u8, 97u8, 114u8, 114u8, 121u8, 32u8, 102u8, 111u8,
114u8, 119u8, 97u8, 114u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 114u8, 101u8, 110u8,
101u8, 119u8, 105u8, 110u8, 103u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 201u8, 1u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 73u8, 116u8, 32u8, 99u8, 111u8,
110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 40u8, 105u8, 46u8,
101u8, 46u8, 32u8, 119u8, 104u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 41u8, 46u8,
120u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8,
114u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 88u8, 97u8, 99u8, 99u8, 101u8,
112u8, 116u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8, 116u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 4u8, 1u8, 28u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8,
1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 48u8, 104u8, 65u8, 99u8, 99u8, 101u8, 112u8, 116u8,
115u8, 32u8, 97u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 46u8, 0u8, 45u8, 1u8, 67u8, 111u8, 110u8, 115u8, 117u8, 109u8,
101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8,
100u8, 96u8, 32u8, 40u8, 115u8, 101u8, 101u8, 32u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 58u8, 58u8, 99u8, 111u8,
110u8, 115u8, 117u8, 109u8, 101u8, 95u8, 97u8, 117u8, 116u8, 104u8, 96u8, 41u8, 46u8, 37u8, 1u8,
78u8, 66u8, 58u8, 32u8, 84u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 44u8, 32u8, 99u8,
97u8, 108u8, 108u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 117u8, 116u8,
104u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
201u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 73u8, 116u8,
32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
40u8, 105u8, 46u8, 101u8, 46u8, 32u8, 119u8, 104u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8,
101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8,
110u8, 41u8, 46u8, 248u8, 42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8,
32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 105u8, 1u8, 45u8, 32u8, 96u8, 65u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 69u8, 114u8, 114u8, 111u8, 114u8, 58u8,
58u8, 66u8, 97u8, 100u8, 84u8, 121u8, 112u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8,
117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
116u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 124u8, 97u8,
99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 111u8, 119u8,
110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 4u8, 1u8, 28u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8,
117u8, 54u8, 52u8, 0u8, 2u8, 24u8, 236u8, 84u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 32u8, 97u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 46u8, 37u8, 1u8, 78u8, 66u8, 58u8, 32u8, 84u8,
111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 44u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 32u8, 102u8, 117u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 201u8, 1u8, 42u8, 32u8,
96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 73u8, 116u8, 32u8, 99u8, 111u8,
110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 40u8, 105u8, 46u8,
101u8, 46u8, 32u8, 119u8, 104u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 41u8, 46u8,
45u8, 1u8, 42u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 73u8,
68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 48u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 97u8,
115u8, 115u8, 101u8, 116u8, 28u8, 1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 249u8, 1u8, 1u8, 36u8,
65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8, 1u8, 24u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 36u8,
100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 1u8, 40u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8,
225u8, 1u8, 1u8, 36u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8,
44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 233u8, 1u8,
1u8, 80u8, 86u8, 101u8, 99u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 62u8, 0u8, 1u8, 52u8, 102u8, 117u8, 110u8, 100u8,
105u8, 110u8, 103u8, 95u8, 114u8, 111u8, 117u8, 110u8, 100u8, 77u8, 7u8, 1u8, 96u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8,
117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 62u8, 0u8, 1u8, 40u8, 100u8, 105u8, 115u8, 97u8,
98u8, 108u8, 101u8, 95u8, 105u8, 117u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
3u8, 104u8, 45u8, 1u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 115u8,
32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 99u8, 117u8, 114u8, 105u8, 116u8,
121u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 44u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 105u8, 110u8, 103u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 115u8,
32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 46u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8,
116u8, 97u8, 108u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 121u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 98u8, 101u8,
32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 32u8, 84u8, 111u8, 32u8, 109u8, 105u8, 110u8, 116u8,
32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 44u8, 32u8, 117u8, 115u8, 101u8, 32u8, 96u8,
105u8, 115u8, 115u8, 117u8, 101u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 197u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 40u8, 105u8, 46u8, 101u8, 46u8, 32u8, 119u8, 104u8, 111u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8,
99u8, 116u8, 105u8, 111u8, 110u8, 41u8, 46u8, 132u8, 42u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8,
96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 176u8, 42u8, 32u8,
96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 115u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 45u8,
1u8, 42u8, 32u8, 96u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 96u8, 32u8,
45u8, 32u8, 97u8, 32u8, 98u8, 111u8, 111u8, 108u8, 101u8, 97u8, 110u8, 32u8, 116u8, 111u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8,
105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 105u8, 108u8, 105u8, 116u8, 121u8, 32u8, 115u8, 116u8,
97u8, 116u8, 117u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 46u8, 128u8, 42u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8,
116u8, 121u8, 112u8, 101u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 192u8, 42u8, 32u8, 96u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8,
97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8,
115u8, 46u8, 184u8, 42u8, 32u8, 96u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8,
114u8, 111u8, 117u8, 110u8, 100u8, 96u8, 32u8, 45u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 46u8, 77u8, 1u8, 42u8, 32u8, 96u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 95u8, 105u8, 117u8, 96u8, 32u8, 45u8, 32u8, 119u8, 104u8, 101u8, 116u8,
104u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 118u8,
101u8, 115u8, 116u8, 111u8, 114u8, 32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8,
115u8, 115u8, 32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8, 101u8, 109u8, 101u8, 110u8, 116u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 100u8, 46u8, 200u8, 32u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8,
97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8,
101u8, 100u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8,
0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 252u8, 45u8, 32u8, 96u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8,
110u8, 121u8, 32u8, 111u8, 102u8, 32u8, 96u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8,
105u8, 101u8, 114u8, 115u8, 96u8, 32u8, 97u8, 114u8, 101u8, 32u8, 105u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 46u8, 81u8, 1u8, 45u8, 32u8, 96u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8,
103u8, 116u8, 104u8, 79u8, 102u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8,
69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8,
110u8, 97u8, 109u8, 101u8, 96u8, 39u8, 115u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8,
32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 96u8, 84u8, 58u8, 58u8, 65u8, 115u8,
115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8,
116u8, 104u8, 96u8, 46u8, 85u8, 1u8, 45u8, 32u8, 96u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8,
101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8,
32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8,
114u8, 111u8, 117u8, 110u8, 100u8, 32u8, 105u8, 115u8, 32u8, 108u8, 111u8, 110u8, 103u8, 101u8,
114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 124u8, 96u8, 84u8, 58u8, 58u8, 70u8, 117u8, 110u8, 100u8,
105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8,
120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 96u8, 46u8, 212u8, 45u8, 32u8, 96u8, 65u8, 115u8,
115u8, 101u8, 116u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 67u8, 114u8, 101u8, 97u8,
116u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8,
119u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 93u8, 1u8, 45u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 39u8, 115u8, 32u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 32u8, 105u8, 115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8,
32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 96u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 46u8,
109u8, 97u8, 120u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 96u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 40u8, 112u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 46u8, 161u8, 2u8, 45u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 78u8, 111u8, 116u8, 65u8, 115u8, 99u8, 105u8, 105u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 121u8, 101u8, 116u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8,
114u8, 101u8, 100u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 110u8, 111u8, 110u8, 45u8, 97u8, 115u8, 99u8, 105u8, 105u8, 32u8,
112u8, 114u8, 105u8, 110u8, 116u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8,
97u8, 99u8, 116u8, 101u8, 114u8, 115u8, 32u8, 40u8, 102u8, 114u8, 111u8, 109u8, 32u8, 99u8,
111u8, 100u8, 101u8, 32u8, 51u8, 50u8, 32u8, 116u8, 111u8, 32u8, 49u8, 50u8, 54u8, 41u8, 32u8,
111u8, 114u8, 32u8, 97u8, 110u8, 121u8, 32u8, 99u8, 104u8, 97u8, 114u8, 97u8, 99u8, 116u8, 101u8,
114u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8,
111u8, 99u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8,
96u8, 92u8, 48u8, 96u8, 46u8, 0u8, 56u8, 35u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 24u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 4u8, 1u8, 24u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 4u8, 44u8, 188u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 115u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 109u8, 105u8,
110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 180u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8,
111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 148u8, 42u8, 32u8,
96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 192u8, 45u8, 32u8, 96u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 70u8,
114u8, 111u8, 122u8, 101u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 32u8, 117u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 4u8, 1u8,
24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 5u8, 44u8, 196u8, 85u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 115u8, 32u8,
116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8,
109u8, 105u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 103u8,
105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 180u8, 42u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 176u8,
42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 176u8, 45u8, 32u8,
96u8, 78u8, 111u8, 116u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 32u8, 121u8, 101u8, 116u8, 46u8,
0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 48u8, 114u8, 101u8, 110u8, 97u8,
109u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 16u8, 110u8,
97u8, 109u8, 101u8, 249u8, 1u8, 1u8, 36u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8,
101u8, 0u8, 6u8, 52u8, 88u8, 82u8, 101u8, 110u8, 97u8, 109u8, 101u8, 115u8, 32u8, 97u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 180u8, 42u8, 32u8,
96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8,
46u8, 148u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 148u8, 42u8, 32u8, 96u8,
110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
119u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 17u8, 1u8, 45u8, 32u8, 96u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8,
104u8, 79u8, 102u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 69u8, 120u8,
99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8,
105u8, 115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8,
110u8, 96u8, 96u8, 84u8, 58u8, 58u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8,
77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8,
65u8, 115u8, 115u8, 101u8, 116u8, 20u8, 105u8, 115u8, 115u8, 117u8, 101u8, 8u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 7u8, 44u8, 164u8, 73u8, 115u8, 115u8, 117u8, 101u8, 44u8, 32u8, 111u8,
114u8, 32u8, 109u8, 105u8, 110u8, 116u8, 44u8, 32u8, 110u8, 101u8, 119u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 114u8, 44u8, 172u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8,
32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8,
114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 96u8, 42u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 148u8, 42u8, 32u8, 96u8, 97u8, 109u8, 111u8,
117u8, 110u8, 116u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 32u8, 105u8, 115u8, 115u8, 117u8,
101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8, 42u8, 32u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 24u8, 114u8, 101u8, 100u8, 101u8, 101u8,
109u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 8u8, 60u8, 205u8, 1u8, 82u8, 101u8, 100u8,
101u8, 101u8, 109u8, 115u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 98u8, 121u8, 32u8, 114u8, 101u8, 100u8, 117u8,
99u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 39u8, 115u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 121u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 107u8, 101u8, 110u8, 46u8, 148u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8, 117u8, 101u8,
96u8, 32u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 100u8, 101u8, 101u8, 109u8,
46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 97u8, 1u8, 45u8, 32u8,
96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 96u8,
32u8, 73u8, 102u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 115u8,
111u8, 109u8, 101u8, 111u8, 110u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 112u8, 114u8, 105u8, 97u8,
116u8, 101u8, 32u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 89u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 71u8, 114u8,
97u8, 110u8, 117u8, 108u8, 97u8, 114u8, 105u8, 116u8, 121u8, 96u8, 32u8, 73u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8,
98u8, 121u8, 32u8, 49u8, 48u8, 94u8, 54u8, 32u8, 102u8, 111u8, 114u8, 32u8, 110u8, 111u8, 110u8,
45u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 115u8, 141u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8,
105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8, 115u8, 32u8, 100u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8,
101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 102u8, 114u8, 101u8, 101u8, 32u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8,
42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 56u8, 109u8, 97u8,
107u8, 101u8, 95u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 4u8, 1u8, 24u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 9u8, 44u8, 148u8, 77u8, 97u8, 107u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8,
110u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 236u8, 45u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 65u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 105u8, 115u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 100u8, 105u8, 118u8, 105u8, 115u8,
105u8, 98u8, 108u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 52u8,
97u8, 100u8, 100u8, 95u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 8u8, 1u8,
16u8, 100u8, 111u8, 99u8, 115u8, 81u8, 7u8, 1u8, 52u8, 86u8, 101u8, 99u8, 60u8, 68u8, 111u8,
99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 10u8, 36u8, 128u8, 65u8,
100u8, 100u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 184u8, 42u8, 32u8, 96u8, 100u8,
111u8, 99u8, 115u8, 96u8, 32u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 52u8,
35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8,
42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 64u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
95u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 8u8, 1u8, 12u8, 105u8, 100u8,
115u8, 1u8, 3u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8,
1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 11u8, 36u8, 140u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8,
97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 200u8, 42u8, 32u8, 96u8,
105u8, 100u8, 115u8, 96u8, 32u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
32u8, 105u8, 100u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 68u8,
115u8, 101u8, 116u8, 95u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8, 114u8, 111u8,
117u8, 110u8, 100u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 221u8, 1u8,
1u8, 64u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8,
78u8, 97u8, 109u8, 101u8, 0u8, 12u8, 52u8, 172u8, 83u8, 101u8, 116u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 41u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8,
114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 148u8, 42u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 228u8, 42u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8,
96u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 115u8, 105u8, 114u8, 101u8,
100u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8,
101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8,
32u8, 105u8, 102u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8,
96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 105u8, 115u8, 32u8, 103u8, 114u8, 101u8, 97u8,
116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 124u8, 96u8, 84u8, 58u8, 58u8, 70u8, 117u8,
110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8,
77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8,
65u8, 115u8, 115u8, 101u8, 116u8, 72u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 95u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 8u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 233u8,
1u8, 1u8, 80u8, 86u8, 101u8, 99u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 62u8, 0u8, 13u8, 52u8, 120u8, 85u8, 112u8,
100u8, 97u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 41u8, 1u8,
42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 97u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 148u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 89u8, 1u8, 42u8, 32u8,
96u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 96u8, 32u8,
45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8,
101u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 111u8, 114u8, 109u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 118u8,
101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 112u8, 97u8, 105u8, 114u8, 115u8,
204u8, 32u8, 32u8, 32u8, 111u8, 102u8, 32u8, 96u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
102u8, 105u8, 101u8, 114u8, 84u8, 121u8, 112u8, 101u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8,
96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8,
101u8, 114u8, 96u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 49u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
102u8, 105u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 97u8, 110u8, 121u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 46u8, 0u8,
52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 80u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 8u8,
1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 0u8, 1u8, 72u8, 101u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 95u8,
115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 85u8, 7u8, 1u8, 56u8, 69u8, 99u8,
100u8, 115u8, 97u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 14u8, 56u8,
252u8, 67u8, 108u8, 97u8, 105u8, 109u8, 32u8, 97u8, 32u8, 115u8, 121u8, 115u8, 116u8, 101u8,
109u8, 97u8, 116u8, 105u8, 99u8, 97u8, 108u8, 108u8, 121u8, 32u8, 114u8, 101u8, 115u8, 101u8,
114u8, 118u8, 101u8, 100u8, 32u8, 80u8, 111u8, 108u8, 121u8, 109u8, 97u8, 116u8, 104u8, 32u8,
67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 32u8, 40u8, 80u8, 77u8, 67u8, 41u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 172u8, 97u8, 110u8, 100u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 105u8, 116u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 61u8, 1u8, 84u8, 111u8, 32u8,
118u8, 101u8, 114u8, 105u8, 102u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
105u8, 110u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 111u8, 111u8, 107u8, 115u8, 44u8, 17u8, 1u8, 97u8, 110u8, 32u8, 96u8, 101u8, 116u8, 104u8,
101u8, 114u8, 101u8, 117u8, 109u8, 95u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8,
101u8, 96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8,
32u8, 68u8, 73u8, 68u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 115u8,
115u8, 97u8, 103u8, 101u8, 168u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 112u8,
114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
49u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8,
115u8, 105u8, 99u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8,
115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 97u8, 116u8, 105u8, 99u8, 97u8, 108u8, 108u8, 121u8,
32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 80u8, 77u8, 67u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 81u8, 1u8, 45u8, 32u8, 96u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 103u8, 105u8,
115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
101u8, 100u8, 44u8, 32u8, 101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 98u8, 121u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 46u8, 29u8, 1u8, 45u8, 32u8, 96u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 39u8, 115u8, 32u8, 114u8, 101u8,
103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 112u8, 45u8, 32u8, 96u8, 66u8, 97u8,
100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 110u8, 111u8,
116u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 73u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8,
83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 101u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 95u8,
115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 41u8, 1u8, 45u8, 32u8, 96u8,
78u8, 111u8, 116u8, 65u8, 110u8, 79u8, 119u8, 110u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 80u8, 77u8, 67u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8,
88u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 95u8, 99u8, 108u8, 97u8, 115u8, 115u8,
105u8, 99u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 12u8, 1u8, 84u8, 99u8, 108u8, 97u8,
115u8, 115u8, 105u8, 99u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8, 105u8, 109u8,
112u8, 111u8, 114u8, 116u8, 93u8, 7u8, 1u8, 76u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 73u8, 109u8, 112u8, 111u8, 114u8, 116u8, 0u8, 1u8, 48u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 95u8, 100u8, 105u8, 100u8, 120u8, 1u8, 40u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 99u8, 111u8,
110u8, 102u8, 105u8, 103u8, 97u8, 7u8, 1u8, 140u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 110u8,
102u8, 105u8, 103u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8,
15u8, 52u8, 160u8, 82u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 97u8, 32u8, 80u8, 111u8,
108u8, 121u8, 109u8, 97u8, 116u8, 104u8, 32u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8,
32u8, 40u8, 80u8, 77u8, 67u8, 41u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 13u8,
1u8, 77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8,
115u8, 115u8, 105u8, 103u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 115u8, 121u8, 115u8, 116u8, 101u8,
109u8, 97u8, 116u8, 105u8, 99u8, 32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 120u8, 42u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 236u8, 42u8, 32u8, 96u8,
99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
95u8, 105u8, 109u8, 112u8, 111u8, 114u8, 116u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8,
102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 101u8, 32u8, 80u8, 77u8, 67u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 93u8,
1u8, 42u8, 32u8, 96u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 95u8, 100u8, 105u8,
100u8, 96u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8,
105u8, 102u8, 32u8, 96u8, 99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 95u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 95u8, 105u8, 109u8, 112u8, 111u8, 114u8, 116u8, 46u8, 105u8, 115u8, 95u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 96u8, 32u8, 104u8, 111u8, 108u8, 100u8,
115u8, 46u8, 188u8, 42u8, 32u8, 96u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 96u8, 32u8, 116u8,
111u8, 32u8, 117u8, 115u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 120u8, 112u8, 105u8,
114u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 73u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 65u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 95u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 95u8, 105u8, 109u8, 112u8, 111u8, 114u8, 116u8, 46u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8,
100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 97u8,
1u8, 42u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 84u8, 111u8, 111u8, 76u8, 111u8,
110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 111u8,
110u8, 102u8, 105u8, 103u8, 96u8, 32u8, 99u8, 111u8, 110u8, 115u8, 105u8, 100u8, 101u8, 114u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 95u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8, 105u8, 109u8, 112u8, 111u8, 114u8, 116u8, 46u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 111u8, 111u8, 32u8, 108u8, 111u8,
110u8, 103u8, 46u8, 85u8, 1u8, 42u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 65u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8,
95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8, 105u8, 109u8, 112u8, 111u8, 114u8, 116u8,
46u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
101u8, 100u8, 46u8, 76u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8,
95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 12u8, 1u8, 24u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 20u8,
118u8, 97u8, 108u8, 117u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 1u8, 56u8, 102u8, 114u8, 111u8, 109u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 73u8, 100u8, 0u8, 16u8, 28u8, 77u8, 1u8, 70u8, 111u8, 114u8, 99u8, 101u8, 115u8, 32u8,
97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 102u8, 114u8,
111u8, 109u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8,
115u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 85u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 112u8, 114u8, 105u8, 97u8,
116u8, 101u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 152u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 115u8, 121u8, 109u8,
98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 46u8, 204u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8, 117u8, 101u8, 96u8, 32u8, 32u8,
65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 115u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 102u8, 111u8, 114u8,
99u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 46u8, 252u8, 42u8,
32u8, 96u8, 102u8, 114u8, 111u8, 109u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 96u8, 32u8, 70u8, 114u8, 111u8, 109u8, 32u8, 119u8, 104u8, 111u8, 109u8, 32u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 115u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 114u8, 101u8, 100u8, 46u8, 104u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8,
114u8, 95u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8,
95u8, 116u8, 121u8, 112u8, 101u8, 4u8, 1u8, 8u8, 116u8, 121u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 17u8, 36u8, 120u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8,
101u8, 114u8, 115u8, 32u8, 97u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 0u8, 208u8, 84u8, 104u8,
101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 96u8, 116u8, 121u8,
96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 98u8, 111u8, 117u8, 110u8,
100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8, 73u8, 68u8, 32u8, 105u8, 110u8, 32u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 188u8, 84u8, 104u8, 101u8, 32u8, 73u8, 68u8, 32u8,
99u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8,
101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8,
112u8, 101u8, 58u8, 58u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 96u8, 46u8, 37u8, 1u8, 83u8,
104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 116u8, 121u8, 96u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
32u8, 105u8, 110u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 44u8, 32u8, 110u8,
111u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 32u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8,
97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 144u8,
42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 111u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 240u8, 42u8, 32u8, 96u8, 116u8, 121u8,
96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8,
101u8, 110u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 116u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 119u8,
105u8, 116u8, 104u8, 95u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 95u8, 116u8, 121u8, 112u8,
101u8, 28u8, 1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 249u8, 1u8, 1u8, 36u8, 65u8, 115u8, 115u8,
101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 0u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 36u8, 100u8, 105u8, 118u8,
105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8,
1u8, 68u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8,
116u8, 121u8, 112u8, 101u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8,
1u8, 44u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 115u8, 233u8,
1u8, 1u8, 80u8, 86u8, 101u8, 99u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 62u8, 0u8, 1u8, 52u8, 102u8, 117u8, 110u8,
100u8, 105u8, 110u8, 103u8, 95u8, 114u8, 111u8, 117u8, 110u8, 100u8, 77u8, 7u8, 1u8, 96u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8,
111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 62u8, 0u8, 1u8, 40u8, 100u8, 105u8, 115u8,
97u8, 98u8, 108u8, 101u8, 95u8, 105u8, 117u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8,
0u8, 18u8, 4u8, 45u8, 1u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8, 116u8, 111u8, 32u8, 98u8, 97u8, 116u8,
99u8, 104u8, 32u8, 96u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8,
101u8, 114u8, 95u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8, 46u8, 72u8, 115u8, 101u8, 116u8, 95u8, 97u8,
115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 16u8, 1u8,
24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 12u8, 107u8, 101u8, 121u8, 101u8, 7u8, 1u8, 64u8, 65u8, 115u8, 115u8, 101u8,
116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 75u8, 101u8, 121u8, 0u8, 1u8, 20u8,
118u8, 97u8, 108u8, 117u8, 101u8, 49u8, 2u8, 1u8, 72u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 0u8, 1u8, 24u8,
100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 53u8, 2u8, 1u8, 172u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 60u8, 84u8, 58u8,
58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 62u8, 0u8, 19u8, 68u8, 100u8, 83u8, 101u8,
116u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 124u8, 42u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
46u8, 84u8, 42u8, 32u8, 96u8, 107u8, 101u8, 121u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 107u8, 101u8, 121u8, 46u8, 100u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8,
117u8, 101u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 96u8, 32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
44u8, 32u8, 108u8, 111u8, 99u8, 107u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 46u8,
0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 21u8, 1u8, 42u8, 32u8, 96u8,
65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 75u8,
101u8, 121u8, 73u8, 115u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 107u8, 101u8, 121u8, 32u8, 100u8, 111u8, 101u8, 115u8,
110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 37u8, 1u8, 42u8, 32u8, 96u8,
65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8,
108u8, 117u8, 101u8, 73u8, 115u8, 76u8, 111u8, 99u8, 107u8, 101u8, 100u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 107u8, 101u8,
121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 46u8, 101u8, 1u8,
42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8,
104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8,
97u8, 108u8, 117u8, 101u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 28u8, 42u8, 32u8,
65u8, 115u8, 115u8, 101u8, 116u8, 104u8, 115u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 95u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 12u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8,
24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 12u8, 107u8, 101u8, 121u8, 101u8, 7u8,
1u8, 64u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
75u8, 101u8, 121u8, 0u8, 1u8, 24u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 57u8, 2u8, 1u8,
140u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 60u8, 84u8, 58u8, 58u8,
77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 20u8, 60u8, 220u8, 83u8, 101u8, 116u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8,
32u8, 40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 44u8, 32u8, 108u8, 111u8, 99u8, 107u8,
32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 124u8, 42u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
46u8, 84u8, 42u8, 32u8, 96u8, 107u8, 101u8, 121u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 107u8, 101u8, 121u8, 46u8, 228u8, 42u8, 32u8, 96u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8,
40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 44u8, 32u8, 108u8, 111u8, 99u8, 107u8, 32u8,
115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 21u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 75u8, 101u8, 121u8, 73u8, 115u8, 77u8, 105u8, 115u8,
115u8, 105u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 107u8,
101u8, 121u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8,
115u8, 116u8, 46u8, 37u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 73u8, 115u8, 76u8, 111u8,
99u8, 107u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8,
102u8, 111u8, 114u8, 32u8, 96u8, 107u8, 101u8, 121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 108u8,
111u8, 99u8, 107u8, 101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8,
28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 148u8, 114u8, 101u8, 103u8, 105u8, 115u8,
116u8, 101u8, 114u8, 95u8, 97u8, 110u8, 100u8, 95u8, 115u8, 101u8, 116u8, 95u8, 108u8, 111u8,
99u8, 97u8, 108u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 20u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8,
24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 65u8,
2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 1u8, 16u8, 115u8, 112u8, 101u8, 99u8, 73u8, 2u8, 1u8, 68u8,
65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 83u8,
112u8, 101u8, 99u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 49u8, 2u8, 1u8, 72u8, 65u8,
115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8,
108u8, 117u8, 101u8, 0u8, 1u8, 24u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 53u8, 2u8, 1u8,
172u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 68u8, 101u8,
116u8, 97u8, 105u8, 108u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8,
62u8, 0u8, 21u8, 76u8, 156u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 115u8, 32u8,
97u8, 110u8, 100u8, 32u8, 115u8, 101u8, 116u8, 32u8, 108u8, 111u8, 99u8, 97u8, 108u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 107u8, 101u8, 110u8, 46u8, 92u8, 42u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8, 136u8,
42u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8,
116u8, 105u8, 111u8, 110u8, 46u8, 100u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8, 117u8, 101u8,
96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8,
32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 32u8, 40u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 44u8, 32u8,
108u8, 111u8, 99u8, 107u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 46u8, 0u8, 32u8,
35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 161u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8,
115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8,
108u8, 75u8, 101u8, 121u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8,
115u8, 116u8, 115u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 32u8, 108u8, 111u8, 99u8, 97u8, 108u8,
32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8, 101u8,
32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 101u8, 1u8, 42u8,
32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8,
120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 96u8, 110u8, 97u8, 109u8,
101u8, 96u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8,
104u8, 46u8, 177u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 84u8, 121u8, 112u8, 101u8, 68u8, 101u8, 102u8, 77u8, 97u8, 120u8,
76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8,
96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 96u8, 32u8, 116u8, 121u8, 112u8, 101u8,
32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 105u8, 111u8, 110u8, 32u8, 101u8, 120u8,
99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8,
109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 101u8, 1u8, 42u8,
32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
86u8, 97u8, 108u8, 117u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8,
69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8,
116u8, 104u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 28u8, 42u8, 32u8, 65u8,
115u8, 115u8, 101u8, 116u8, 136u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 95u8,
97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
95u8, 108u8, 111u8, 99u8, 97u8, 108u8, 95u8, 116u8, 121u8, 112u8, 101u8, 12u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 65u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 1u8, 16u8,
115u8, 112u8, 101u8, 99u8, 73u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 83u8, 112u8, 101u8, 99u8, 0u8, 22u8, 64u8, 144u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 115u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8,
32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 108u8, 111u8, 99u8, 97u8, 108u8,
32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8,
32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 124u8, 42u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 92u8,
42u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8, 136u8, 42u8, 32u8, 96u8, 115u8, 112u8, 101u8,
99u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8,
101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 161u8, 1u8, 42u8, 32u8, 96u8, 65u8,
115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8,
99u8, 97u8, 108u8, 75u8, 101u8, 121u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8,
120u8, 105u8, 115u8, 116u8, 115u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 32u8, 108u8, 111u8,
99u8, 97u8, 108u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 121u8,
112u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
46u8, 101u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8,
116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 96u8,
110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 46u8, 177u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 84u8, 121u8, 112u8, 101u8, 68u8, 101u8,
102u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8,
101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 96u8, 32u8,
116u8, 121u8, 112u8, 101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 105u8, 111u8,
110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8,
46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8,
101u8, 116u8, 140u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 95u8, 97u8, 115u8,
115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 95u8, 103u8,
108u8, 111u8, 98u8, 97u8, 108u8, 95u8, 116u8, 121u8, 112u8, 101u8, 8u8, 1u8, 16u8, 110u8, 97u8,
109u8, 101u8, 65u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 0u8, 1u8, 16u8, 115u8, 112u8, 101u8, 99u8,
73u8, 2u8, 1u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 83u8, 112u8, 101u8, 99u8, 0u8, 23u8, 44u8, 148u8, 82u8, 101u8, 103u8, 105u8, 115u8,
116u8, 101u8, 114u8, 115u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 103u8, 108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 116u8, 121u8,
112u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 45u8, 1u8, 42u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 92u8, 42u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8,
32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 110u8, 97u8, 109u8, 101u8, 46u8,
136u8, 42u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 96u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8,
105u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 113u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 96u8, 32u8, 105u8,
102u8, 32u8, 97u8, 32u8, 103u8, 108u8, 111u8, 98u8, 97u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8, 101u8, 1u8, 42u8, 32u8, 96u8, 65u8, 115u8, 115u8,
101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 77u8,
97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 101u8, 120u8,
99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8,
109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 177u8, 1u8, 42u8,
32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
84u8, 121u8, 112u8, 101u8, 68u8, 101u8, 102u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8,
116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 96u8,
115u8, 112u8, 101u8, 99u8, 96u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 100u8, 101u8, 102u8,
105u8, 110u8, 105u8, 116u8, 105u8, 111u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8,
108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8,
85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8,
97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 77u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8,
221u8, 1u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8,
101u8, 4u8, 0u8, 221u8, 1u8, 0u8, 0u8, 1u8, 0u8, 0u8, 81u8, 7u8, 0u8, 0u8, 2u8, 1u8, 2u8, 0u8,
85u8, 7u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 32u8, 101u8, 116u8, 104u8, 101u8,
114u8, 101u8, 117u8, 109u8, 56u8, 69u8, 99u8, 100u8, 115u8, 97u8, 83u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 0u8, 89u8, 7u8, 1u8, 32u8, 91u8, 117u8, 56u8,
59u8, 32u8, 54u8, 53u8, 93u8, 0u8, 0u8, 89u8, 7u8, 0u8, 0u8, 3u8, 65u8, 0u8, 0u8, 0u8, 8u8, 0u8,
93u8, 7u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 76u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 73u8, 109u8, 112u8, 111u8, 114u8, 116u8, 0u8, 0u8, 16u8, 1u8, 36u8, 101u8, 116u8, 104u8,
95u8, 111u8, 119u8, 110u8, 101u8, 114u8, 45u8, 2u8, 1u8, 60u8, 69u8, 116u8, 104u8, 101u8, 114u8,
101u8, 117u8, 109u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 0u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 44u8, 105u8, 115u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 21u8, 1u8,
1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 40u8, 105u8, 115u8, 95u8, 99u8, 114u8, 101u8,
97u8, 116u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 97u8, 7u8,
8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 4u8, 4u8, 85u8, 1u8, 32u8,
0u8, 8u8, 1u8, 68u8, 109u8, 97u8, 120u8, 95u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 95u8,
108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 1u8, 76u8, 114u8,
101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 95u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 240u8, 1u8, 36u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
85u8, 62u8, 0u8, 0u8, 101u8, 7u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 56u8, 97u8,
115u8, 115u8, 101u8, 116u8, 95u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 64u8,
65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 75u8,
101u8, 121u8, 0u8, 1u8, 8u8, 24u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 4u8, 0u8, 97u8, 2u8,
1u8, 88u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 0u8, 0u8, 0u8, 20u8, 76u8, 111u8,
99u8, 97u8, 108u8, 4u8, 0u8, 69u8, 2u8, 1u8, 84u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 75u8, 101u8, 121u8, 0u8,
1u8, 0u8, 0u8, 105u8, 7u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 48u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 40u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 28u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8,
109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 36u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 109u8, 7u8, 1u8, 92u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 62u8, 0u8, 1u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 36u8, 112u8, 101u8, 114u8,
95u8, 115u8, 104u8, 97u8, 114u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 40u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8,
95u8, 97u8, 116u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 40u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 116u8, 240u8, 1u8, 56u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8,
172u8, 37u8, 1u8, 83u8, 116u8, 97u8, 114u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 116u8,
116u8, 97u8, 99u8, 104u8, 32u8, 97u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8,
100u8, 96u8, 44u8, 101u8, 1u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 96u8, 32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8,
100u8, 114u8, 97u8, 119u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8,
103u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 99u8, 111u8, 109u8, 109u8, 101u8, 110u8, 99u8, 101u8, 32u8, 97u8,
116u8, 32u8, 96u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 96u8, 32u8,
97u8, 110u8, 100u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 32u8, 97u8, 116u8, 32u8,
96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 116u8, 96u8, 44u8, 200u8,
105u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 44u8, 32u8, 111u8,
114u8, 32u8, 105u8, 102u8, 32u8, 96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 44u8, 32u8, 116u8, 104u8,
101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 46u8, 0u8, 37u8, 1u8, 84u8, 104u8, 101u8, 32u8, 102u8,
117u8, 110u8, 100u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 108u8,
111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 96u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8,
96u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 46u8, 53u8, 1u8, 87u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8,
32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 44u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8,
102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 108u8,
111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 105u8, 110u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8,
116u8, 101u8, 108u8, 121u8, 32u8, 105u8, 110u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 96u8, 44u8, 21u8, 1u8, 100u8, 117u8, 101u8, 32u8, 116u8, 111u8, 32u8,
99u8, 108u8, 97u8, 105u8, 109u8, 97u8, 110u8, 116u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 105u8, 110u8, 103u8, 32u8, 111u8, 114u8,
32u8, 110u8, 111u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 98u8,
101u8, 105u8, 110u8, 103u8, 32u8, 112u8, 117u8, 115u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 116u8, 104u8, 101u8, 109u8, 46u8, 41u8, 1u8, 70u8, 111u8, 114u8, 32u8, 105u8, 110u8, 100u8,
105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 99u8, 105u8, 101u8, 115u8, 44u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8,
100u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 115u8, 44u8, 32u8, 111u8, 102u8, 32u8,
108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 111u8, 110u8, 101u8, 32u8,
119u8, 104u8, 111u8, 108u8, 101u8, 32u8, 117u8, 110u8, 105u8, 116u8, 44u8, 168u8, 119u8, 105u8,
108u8, 108u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 46u8, 77u8, 1u8, 72u8,
111u8, 119u8, 101u8, 118u8, 101u8, 114u8, 44u8, 32u8, 105u8, 102u8, 32u8, 119u8, 101u8, 32u8,
105u8, 109u8, 97u8, 103u8, 105u8, 110u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 117u8,
115u8, 101u8, 114u8, 115u8, 32u8, 96u8, 65u8, 108u8, 105u8, 99u8, 101u8, 96u8, 32u8, 97u8, 110u8,
100u8, 32u8, 96u8, 66u8, 111u8, 98u8, 96u8, 32u8, 98u8, 111u8, 116u8, 104u8, 32u8, 97u8, 114u8,
101u8, 32u8, 101u8, 110u8, 116u8, 105u8, 116u8, 108u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
49u8, 46u8, 53u8, 32u8, 117u8, 110u8, 105u8, 116u8, 115u8, 44u8, 81u8, 1u8, 97u8, 110u8, 100u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 32u8,
96u8, 49u8, 96u8, 32u8, 117u8, 110u8, 105u8, 116u8, 115u8, 32u8, 101u8, 97u8, 99u8, 104u8, 44u8,
32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 96u8, 48u8, 46u8, 53u8, 32u8, 43u8, 32u8, 48u8, 46u8,
53u8, 32u8, 61u8, 32u8, 49u8, 96u8, 32u8, 117u8, 110u8, 105u8, 116u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 108u8, 101u8, 102u8, 116u8, 32u8, 105u8, 110u8, 32u8, 96u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 44u8, 108u8, 119u8, 104u8, 105u8, 99u8, 104u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 119u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 114u8, 97u8, 98u8, 108u8, 101u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 1u8, 1u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 97u8, 32u8,
99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 46u8, 89u8, 1u8, 45u8, 32u8,
96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 115u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
116u8, 111u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 32u8,
96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 46u8,
244u8, 45u8, 32u8, 96u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 32u8, 116u8,
111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 32u8, 97u8, 110u8, 100u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 96u8, 46u8, 248u8, 45u8, 32u8, 96u8, 112u8, 101u8, 114u8, 95u8, 115u8,
104u8, 97u8, 114u8, 101u8, 96u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 96u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 32u8, 116u8,
111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 32u8, 97u8, 110u8, 100u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 46u8, 37u8, 1u8, 32u8,
32u8, 32u8, 83u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8,
97u8, 32u8, 112u8, 101u8, 114u8, 45u8, 109u8, 105u8, 108u8, 108u8, 105u8, 111u8, 110u8, 44u8,
32u8, 105u8, 46u8, 101u8, 46u8, 32u8, 96u8, 49u8, 32u8, 47u8, 32u8, 49u8, 48u8, 94u8, 54u8, 96u8,
116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 111u8, 110u8, 101u8, 32u8, 96u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 240u8,
45u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 111u8, 102u8, 32u8, 96u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 96u8, 32u8, 116u8, 111u8, 32u8, 119u8,
105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 32u8, 97u8, 110u8, 100u8, 32u8, 100u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 32u8, 97u8, 116u8, 32u8, 109u8, 111u8,
115u8, 116u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8,
95u8, 97u8, 116u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8,
32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8,
32u8, 109u8, 97u8, 121u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8,
112u8, 117u8, 115u8, 104u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 101u8, 100u8, 46u8, 41u8, 1u8, 45u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
115u8, 95u8, 97u8, 116u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8,
115u8, 44u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
44u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8,
110u8, 103u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 102u8, 111u8, 114u8, 102u8, 101u8, 105u8, 116u8, 144u8, 32u8, 32u8, 32u8, 97u8,
110u8, 100u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 99u8, 108u8, 97u8,
105u8, 109u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8,
45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8,
100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 252u8, 45u8, 32u8, 96u8, 69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 66u8, 101u8,
102u8, 111u8, 114u8, 101u8, 80u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 116u8, 46u8,
117u8, 110u8, 119u8, 114u8, 97u8, 112u8, 40u8, 41u8, 32u8, 60u8, 61u8, 32u8, 112u8, 97u8, 121u8,
109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8, 78u8, 111u8,
83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8,
115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8, 168u8, 45u8, 32u8, 96u8, 78u8, 111u8,
82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8,
67u8, 65u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 232u8, 45u8, 32u8, 96u8, 82u8, 101u8, 99u8, 111u8,
114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 65u8, 102u8, 116u8, 101u8, 114u8, 83u8, 116u8, 97u8,
114u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 114u8, 101u8, 99u8,
111u8, 114u8, 100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 62u8, 32u8, 112u8, 97u8, 121u8,
109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 117u8, 115u8, 116u8,
111u8, 100u8, 105u8, 97u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8,
111u8, 102u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8,
46u8, 85u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8,
101u8, 110u8, 116u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 108u8, 101u8,
115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8,
121u8, 96u8, 46u8, 1u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8,
99u8, 105u8, 101u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8,
32u8, 102u8, 101u8, 101u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 110u8, 39u8, 116u8, 32u8,
98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 46u8, 69u8, 1u8, 45u8, 32u8,
96u8, 67u8, 65u8, 78u8, 111u8, 116u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 111u8, 102u8, 32u8, 107u8, 105u8, 110u8, 100u8, 32u8, 80u8, 114u8, 101u8,
100u8, 105u8, 99u8, 116u8, 97u8, 98u8, 108u8, 101u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8,
116u8, 47u8, 85u8, 110u8, 112u8, 114u8, 101u8, 100u8, 105u8, 99u8, 116u8, 97u8, 98u8, 108u8,
101u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 212u8, 45u8, 32u8, 96u8, 68u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 65u8, 109u8, 111u8, 117u8,
110u8, 116u8, 73u8, 115u8, 90u8, 101u8, 114u8, 111u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 105u8, 115u8,
32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 232u8, 45u8, 32u8, 96u8, 68u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 80u8, 101u8, 114u8, 83u8, 104u8, 97u8,
114u8, 101u8, 73u8, 115u8, 90u8, 101u8, 114u8, 111u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 112u8, 101u8, 114u8, 95u8, 115u8, 104u8, 97u8, 114u8, 101u8, 96u8,
32u8, 105u8, 115u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 20u8, 99u8, 108u8, 97u8, 105u8, 109u8, 4u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8,
109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 92u8, 1u8, 1u8, 67u8, 108u8, 97u8,
105u8, 109u8, 32u8, 97u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 46u8, 0u8, 168u8, 84u8, 97u8, 120u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8,
32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 101u8, 108u8, 100u8, 32u8, 97u8, 115u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 67u8, 65u8, 46u8, 89u8, 1u8, 80u8, 111u8, 115u8, 116u8, 45u8, 116u8, 97u8, 120u8,
32u8, 101u8, 97u8, 114u8, 110u8, 105u8, 110u8, 103u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8,
117u8, 108u8, 116u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 17u8, 1u8, 65u8, 108u8, 108u8, 32u8, 98u8,
101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 111u8,
117u8, 110u8, 100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 114u8, 117u8, 110u8, 99u8,
97u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 100u8, 111u8, 119u8, 110u8, 32u8, 116u8, 111u8,
32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8, 103u8, 101u8, 114u8,
32u8, 98u8, 101u8, 108u8, 111u8, 119u8, 46u8, 57u8, 1u8, 77u8, 111u8, 114u8, 101u8, 111u8, 118u8,
101u8, 114u8, 44u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 112u8, 111u8, 115u8,
116u8, 45u8, 116u8, 97u8, 120u8, 32u8, 101u8, 97u8, 114u8, 110u8, 105u8, 110u8, 103u8, 115u8,
44u8, 32u8, 105u8, 110u8, 32u8, 105u8, 110u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8,
108u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 105u8, 101u8, 115u8, 32u8,
97u8, 114u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8,
100u8, 44u8, 152u8, 116u8, 104u8, 101u8, 121u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 111u8,
117u8, 110u8, 100u8, 101u8, 100u8, 32u8, 100u8, 111u8, 119u8, 110u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 119u8, 104u8, 111u8, 108u8, 101u8, 32u8, 117u8, 110u8, 105u8, 116u8, 46u8, 0u8, 48u8,
35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8,
104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 104u8, 111u8,
108u8, 100u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 101u8, 108u8, 105u8, 103u8, 105u8, 98u8,
108u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 1u8, 1u8, 45u8, 32u8, 96u8,
99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8,
105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8,
115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 97u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
102u8, 111u8, 114u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8,
1u8, 45u8, 32u8, 96u8, 72u8, 111u8, 108u8, 100u8, 101u8, 114u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 80u8, 97u8, 105u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 32u8, 104u8, 97u8, 115u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8,
118u8, 101u8, 100u8, 32u8, 105u8, 116u8, 115u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8,
116u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 68u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8, 99u8, 97u8,
112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8,
100u8, 96u8, 46u8, 196u8, 45u8, 32u8, 96u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 67u8, 108u8,
97u8, 105u8, 109u8, 66u8, 101u8, 102u8, 111u8, 114u8, 101u8, 83u8, 116u8, 97u8, 114u8, 116u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 111u8, 119u8, 32u8, 60u8, 32u8, 112u8, 97u8, 121u8,
109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8, 67u8, 97u8,
110u8, 110u8, 111u8, 116u8, 67u8, 108u8, 97u8, 105u8, 109u8, 65u8, 102u8, 116u8, 101u8, 114u8,
69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 111u8,
119u8, 32u8, 62u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 95u8, 97u8, 116u8, 46u8,
117u8, 110u8, 119u8, 114u8, 97u8, 112u8, 40u8, 41u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8, 78u8,
111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8,
95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8, 244u8, 45u8, 32u8, 96u8, 78u8,
111u8, 116u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 101u8, 100u8, 66u8, 121u8, 67u8, 65u8,
96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 100u8, 111u8, 101u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 46u8, 53u8,
1u8, 45u8, 32u8, 96u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 65u8, 109u8, 111u8, 117u8,
110u8, 116u8, 80u8, 114u8, 111u8, 100u8, 117u8, 99u8, 116u8, 79u8, 118u8, 101u8, 114u8, 102u8,
108u8, 111u8, 119u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 98u8, 97u8, 32u8, 61u8,
32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 42u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 46u8, 53u8, 1u8, 45u8, 32u8, 96u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 80u8, 114u8, 111u8, 100u8, 117u8, 99u8,
116u8, 83u8, 117u8, 112u8, 112u8, 108u8, 121u8, 68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 111u8,
110u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 98u8, 97u8,
32u8, 42u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 121u8, 96u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 46u8, 33u8, 1u8,
45u8, 32u8, 79u8, 116u8, 104u8, 101u8, 114u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8,
32u8, 99u8, 97u8, 110u8, 32u8, 111u8, 99u8, 99u8, 117u8, 114u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8,
109u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
46u8, 48u8, 112u8, 117u8, 115u8, 104u8, 95u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8,
8u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8,
0u8, 1u8, 24u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 96u8, 248u8, 80u8, 117u8, 115u8, 104u8,
32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8,
32u8, 111u8, 110u8, 103u8, 111u8, 105u8, 110u8, 103u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8,
105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8,
96u8, 46u8, 0u8, 168u8, 84u8, 97u8, 120u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 119u8,
105u8, 116u8, 104u8, 104u8, 101u8, 108u8, 100u8, 32u8, 97u8, 115u8, 32u8, 115u8, 112u8, 101u8,
99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
67u8, 65u8, 46u8, 89u8, 1u8, 80u8, 111u8, 115u8, 116u8, 45u8, 116u8, 97u8, 120u8, 32u8, 101u8,
97u8, 114u8, 110u8, 105u8, 110u8, 103u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8,
101u8, 110u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8,
115u8, 32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 17u8, 1u8, 65u8, 108u8, 108u8, 32u8, 98u8, 101u8,
110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 111u8, 117u8,
110u8, 100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 114u8, 117u8, 110u8, 99u8, 97u8,
116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 100u8, 111u8, 119u8, 110u8, 32u8, 116u8, 111u8, 32u8,
102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8, 103u8, 101u8, 114u8, 32u8,
98u8, 101u8, 108u8, 111u8, 119u8, 46u8, 57u8, 1u8, 77u8, 111u8, 114u8, 101u8, 111u8, 118u8,
101u8, 114u8, 44u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 112u8, 111u8, 115u8,
116u8, 45u8, 116u8, 97u8, 120u8, 32u8, 101u8, 97u8, 114u8, 110u8, 105u8, 110u8, 103u8, 115u8,
44u8, 32u8, 105u8, 110u8, 32u8, 105u8, 110u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8,
108u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 105u8, 101u8, 115u8, 32u8,
97u8, 114u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8,
100u8, 44u8, 152u8, 116u8, 104u8, 101u8, 121u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 111u8,
117u8, 110u8, 100u8, 101u8, 100u8, 32u8, 100u8, 111u8, 119u8, 110u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 119u8, 104u8, 111u8, 108u8, 101u8, 32u8, 117u8, 110u8, 105u8, 116u8, 46u8, 0u8, 48u8,
35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 57u8, 1u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8,
99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 112u8, 117u8, 115u8,
104u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8,
46u8, 124u8, 45u8, 32u8, 96u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 96u8, 32u8, 116u8,
111u8, 32u8, 112u8, 117u8, 115u8, 104u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8,
115u8, 32u8, 116u8, 111u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8,
68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8,
99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 46u8, 196u8, 45u8, 32u8, 96u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 66u8, 101u8, 102u8, 111u8, 114u8, 101u8, 83u8, 116u8, 97u8, 114u8,
116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 111u8, 119u8, 32u8, 60u8, 32u8, 112u8, 97u8,
121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8, 67u8,
97u8, 110u8, 110u8, 111u8, 116u8, 67u8, 108u8, 97u8, 105u8, 109u8, 65u8, 102u8, 116u8, 101u8,
114u8, 69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8,
111u8, 119u8, 32u8, 62u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 95u8, 97u8, 116u8,
46u8, 117u8, 110u8, 119u8, 114u8, 97u8, 112u8, 40u8, 41u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8,
78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8,
97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8, 220u8, 45u8, 32u8, 96u8,
78u8, 111u8, 116u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 101u8, 100u8, 66u8, 121u8, 67u8,
65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 100u8, 111u8,
101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8,
96u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 96u8, 46u8, 53u8, 1u8, 45u8, 32u8, 96u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 80u8, 114u8,
111u8, 100u8, 117u8, 99u8, 116u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8,
100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 98u8, 97u8, 32u8, 61u8, 32u8, 98u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 32u8, 42u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8,
119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8,
46u8, 53u8, 1u8, 45u8, 32u8, 96u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 65u8, 109u8,
111u8, 117u8, 110u8, 116u8, 80u8, 114u8, 111u8, 100u8, 117u8, 99u8, 116u8, 83u8, 117u8, 112u8,
112u8, 108u8, 121u8, 68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 111u8, 110u8, 70u8, 97u8, 105u8,
108u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 98u8, 97u8, 32u8, 42u8, 32u8, 115u8,
117u8, 112u8, 112u8, 108u8, 121u8, 96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 46u8, 33u8, 1u8, 45u8, 32u8, 79u8, 116u8, 104u8,
101u8, 114u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8,
111u8, 99u8, 99u8, 117u8, 114u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 109u8, 97u8, 110u8, 97u8,
103u8, 101u8, 114u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 46u8, 28u8, 114u8, 101u8,
99u8, 108u8, 97u8, 105u8, 109u8, 4u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8,
16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 3u8, 44u8, 144u8, 65u8, 115u8, 115u8, 117u8, 109u8, 105u8,
110u8, 103u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 44u8, 228u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 111u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8,
105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8,
29u8, 1u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8,
32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
116u8, 111u8, 32u8, 114u8, 101u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 102u8, 111u8, 114u8,
46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 25u8, 1u8, 45u8, 32u8,
96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8,
117u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 114u8,
101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
111u8, 114u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 45u8, 1u8, 45u8, 32u8,
96u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 99u8, 108u8, 97u8, 105u8,
109u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8,
108u8, 121u8, 46u8, 132u8, 45u8, 32u8, 96u8, 78u8, 111u8, 116u8, 69u8, 120u8, 112u8, 105u8,
114u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 111u8, 119u8, 32u8, 60u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 46u8, 76u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 95u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8,
4u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8,
0u8, 4u8, 44u8, 188u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 32u8, 100u8,
105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 115u8, 116u8, 97u8, 114u8,
116u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 44u8, 220u8, 117u8, 110u8, 108u8, 111u8, 99u8,
107u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8,
97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 111u8, 114u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 73u8, 1u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 67u8, 65u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 110u8, 111u8, 116u8,
45u8, 121u8, 101u8, 116u8, 45u8, 115u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 32u8, 99u8,
97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8,
117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 68u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8, 99u8, 97u8,
112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8,
100u8, 96u8, 46u8, 188u8, 45u8, 32u8, 96u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 32u8, 60u8,
61u8, 32u8, 110u8, 111u8, 119u8, 96u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8,
1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8,
112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8,
111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8,
46u8, 109u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 220u8,
1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8,
0u8, 220u8, 0u8, 0u8, 1u8, 0u8, 0u8, 113u8, 7u8, 12u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 40u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8,
111u8, 105u8, 110u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 68u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8,
105u8, 110u8, 116u8, 4u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 0u8, 36u8, 192u8, 67u8, 114u8, 101u8, 97u8, 116u8,
101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 110u8, 103u8, 108u8, 101u8, 32u8, 99u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8,
1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8,
97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 160u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
32u8, 116u8, 111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 102u8, 111u8,
114u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 85u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
68u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 97u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 13u8, 1u8,
45u8, 32u8, 96u8, 67u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 79u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 116u8, 97u8, 108u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8,
116u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 32u8, 119u8, 111u8, 117u8, 108u8,
100u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 46u8, 112u8, 115u8, 101u8,
116u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 95u8, 109u8, 97u8,
120u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 4u8, 1u8, 56u8,
109u8, 97u8, 120u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8,
32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 36u8, 89u8, 1u8, 83u8, 101u8, 116u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8,
120u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
110u8, 32u8, 97u8, 114u8, 98u8, 105u8, 116u8, 114u8, 97u8, 114u8, 121u8, 32u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 96u8, 109u8, 97u8, 120u8, 95u8, 99u8, 111u8,
109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 96u8, 46u8, 184u8, 84u8, 104u8, 101u8,
32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8,
32u8, 114u8, 101u8, 116u8, 114u8, 111u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8,
44u8, 180u8, 97u8, 110u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 97u8, 112u8, 112u8,
108u8, 105u8, 101u8, 115u8, 32u8, 111u8, 110u8, 99u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
109u8, 97u8, 100u8, 101u8, 46u8, 0u8, 168u8, 77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8,
32u8, 40u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 115u8, 32u8, 34u8, 114u8, 111u8,
111u8, 116u8, 34u8, 41u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 120u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 111u8, 111u8, 116u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 9u8, 1u8, 45u8, 32u8, 96u8, 109u8, 97u8, 120u8, 95u8,
99u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 96u8, 32u8, 97u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8,
114u8, 98u8, 105u8, 116u8, 114u8, 97u8, 114u8, 121u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 39u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 115u8,
101u8, 116u8, 46u8, 60u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 32u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 117u8, 7u8, 1u8, 48u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 83u8, 112u8, 101u8, 99u8, 0u8, 2u8, 76u8, 164u8, 67u8, 114u8, 101u8, 97u8, 116u8,
101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 99u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 212u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 117u8, 116u8, 117u8, 114u8, 101u8, 32u8, 97u8, 116u8, 32u8, 101u8, 105u8,
116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 32u8, 102u8, 105u8, 120u8, 101u8, 100u8, 32u8, 116u8,
105u8, 109u8, 101u8, 32u8, 111u8, 114u8, 32u8, 97u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8,
114u8, 118u8, 97u8, 108u8, 115u8, 46u8, 0u8, 9u8, 1u8, 84u8, 104u8, 101u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 115u8, 32u8,
111u8, 117u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 115u8, 116u8, 114u8, 111u8,
110u8, 103u8, 95u8, 114u8, 101u8, 102u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 40u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8, 105u8, 100u8, 41u8, 32u8, 60u8, 45u8, 32u8,
48u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 33u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 111u8,
119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 152u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
116u8, 111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 102u8, 111u8, 114u8, 46u8, 176u8,
45u8, 32u8, 96u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 96u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8,
97u8, 116u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
115u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 85u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
68u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 97u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 13u8, 1u8,
45u8, 32u8, 96u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 68u8, 117u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 84u8, 111u8, 111u8, 83u8, 104u8, 111u8, 114u8, 116u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8,
116u8, 111u8, 111u8, 32u8, 115u8, 104u8, 111u8, 114u8, 116u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8,
73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8,
32u8, 102u8, 101u8, 101u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 32u8, 110u8, 111u8, 116u8,
32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 46u8, 77u8, 1u8, 45u8,
32u8, 96u8, 67u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 79u8, 118u8, 101u8, 114u8, 102u8,
108u8, 111u8, 119u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 73u8, 68u8, 32u8, 111u8, 114u8, 32u8, 116u8,
111u8, 116u8, 97u8, 108u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8,
116u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 115u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 46u8, 93u8, 1u8,
45u8, 32u8, 96u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 67u8, 111u8, 109u8, 112u8,
117u8, 116u8, 101u8, 78u8, 101u8, 120u8, 116u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8,
105u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
120u8, 116u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 96u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 96u8,
32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 97u8, 115u8,
116u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 60u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 8u8, 1u8, 24u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 153u8, 2u8, 1u8, 40u8, 83u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 73u8, 100u8, 0u8, 3u8, 56u8, 252u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8,
110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 111u8, 102u8,
32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 105u8, 100u8, 96u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 33u8,
1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
46u8, 156u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 111u8,
32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 46u8, 9u8, 1u8, 45u8,
32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 44u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 105u8,
116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 96u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 95u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 85u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 97u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 65u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 67u8, 104u8, 101u8, 99u8, 107u8,
112u8, 111u8, 105u8, 110u8, 116u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8,
32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8,
244u8, 45u8, 32u8, 96u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 78u8, 111u8,
116u8, 82u8, 101u8, 109u8, 111u8, 118u8, 97u8, 98u8, 108u8, 101u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 98u8,
117u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 97u8, 98u8, 108u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 117u8, 7u8, 12u8, 48u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 40u8, 99u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 48u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 83u8, 112u8, 101u8, 99u8, 0u8, 0u8, 12u8, 1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8,
240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 62u8, 0u8, 1u8, 24u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 145u8, 2u8, 1u8,
56u8, 67u8, 97u8, 108u8, 101u8, 110u8, 100u8, 97u8, 114u8, 80u8, 101u8, 114u8, 105u8, 111u8,
100u8, 0u8, 1u8, 36u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 16u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 121u8, 7u8, 8u8, 100u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 95u8, 109u8,
97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8,
36u8, 104u8, 97u8, 100u8, 100u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8,
12u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 1u8, 68u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 95u8, 99u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 165u8, 2u8, 1u8, 56u8, 86u8, 101u8, 99u8,
60u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 1u8, 76u8, 114u8,
101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 95u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8,
105u8, 111u8, 110u8, 115u8, 165u8, 2u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 67u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 0u8, 44u8, 5u8, 1u8, 65u8, 100u8, 100u8,
115u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 116u8, 111u8,
32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 39u8, 115u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 98u8, 121u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 46u8, 248u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 100u8, 117u8,
112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 44u8, 32u8, 105u8, 116u8, 32u8, 100u8, 111u8,
101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 104u8, 105u8, 110u8, 103u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 120u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8, 32u8, 83u8, 121u8,
109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 196u8, 42u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 95u8, 99u8,
111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 45u8, 32u8, 83u8, 101u8,
110u8, 100u8, 101u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8,
99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 212u8, 42u8, 32u8,
114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 95u8, 99u8, 111u8, 110u8, 100u8, 105u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 45u8, 32u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8,
101u8, 114u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 116u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 109u8, 101u8, 110u8, 116u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 16u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 36u8, 240u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8,
32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 39u8, 115u8, 32u8, 99u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
120u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8, 32u8, 83u8, 121u8, 109u8,
98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 240u8, 42u8, 32u8, 105u8, 100u8, 32u8, 45u8, 32u8, 67u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
105u8, 115u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8,
101u8, 116u8, 96u8, 114u8, 101u8, 112u8, 108u8, 97u8, 99u8, 101u8, 95u8, 97u8, 115u8, 115u8,
101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 8u8, 1u8,
24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 64u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8,
105u8, 97u8, 110u8, 99u8, 101u8, 205u8, 2u8, 1u8, 104u8, 86u8, 101u8, 99u8, 60u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 2u8, 60u8, 252u8, 82u8, 101u8, 112u8, 108u8, 97u8,
99u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 39u8, 115u8, 32u8,
99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 98u8, 121u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8,
110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8,
46u8, 0u8, 252u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 115u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 40u8,
97u8, 115u8, 99u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 98u8, 121u8, 32u8, 105u8,
100u8, 41u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 140u8, 114u8, 101u8, 112u8, 108u8,
97u8, 99u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8,
116u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 120u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 188u8, 42u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 45u8, 32u8, 116u8, 104u8, 101u8,
32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 240u8, 42u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 177u8, 1u8, 42u8, 32u8, 96u8, 68u8, 117u8,
112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8,
115u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8,
101u8, 96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 101u8, 110u8, 116u8, 114u8, 105u8, 101u8, 115u8,
32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8,
32u8, 96u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 95u8,
105u8, 100u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 88u8, 114u8,
101u8, 115u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 4u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 3u8, 32u8, 116u8, 82u8,
101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 39u8, 115u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8,
110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 120u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8,
32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
88u8, 112u8, 97u8, 117u8, 115u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 99u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 4u8, 1u8, 24u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 4u8, 32u8,
17u8, 1u8, 80u8, 97u8, 117u8, 115u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 101u8,
114u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8,
99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 100u8, 117u8, 114u8, 105u8,
110u8, 103u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 46u8, 0u8,
44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8, 1u8, 42u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 119u8,
110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 120u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8,
32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
92u8, 114u8, 101u8, 115u8, 117u8, 109u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8,
99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 4u8, 1u8, 24u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 5u8,
32u8, 21u8, 1u8, 82u8, 101u8, 115u8, 117u8, 109u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 101u8, 114u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8,
102u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 100u8, 117u8,
114u8, 105u8, 110u8, 103u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 45u8,
1u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8, 115u8,
112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8, 115u8,
104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8,
119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 120u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
45u8, 32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8,
116u8, 128u8, 97u8, 100u8, 100u8, 95u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8,
116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 24u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 189u8, 2u8, 1u8, 52u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8,
100u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 0u8, 6u8, 36u8, 248u8, 65u8, 100u8, 100u8, 115u8,
32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8,
108u8, 116u8, 32u8, 116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 108u8, 101u8, 118u8, 101u8,
108u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
49u8, 1u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8,
115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 124u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 45u8, 32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 200u8, 42u8, 32u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 117u8,
115u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8,
117u8, 101u8, 114u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 140u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8,
116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 95u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 24u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 7u8, 36u8, 117u8, 1u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8,
109u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 108u8, 101u8, 118u8, 101u8,
108u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
49u8, 1u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8,
115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 124u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 45u8, 32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 200u8, 42u8, 32u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 32u8, 45u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 117u8,
115u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 105u8, 115u8, 115u8,
117u8, 101u8, 114u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 116u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 95u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8,
8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 1u8, 28u8, 110u8, 101u8, 119u8, 95u8, 114u8, 101u8, 113u8, 161u8, 2u8,
1u8, 84u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 0u8, 8u8, 36u8, 240u8, 77u8, 111u8,
100u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8,
110u8, 103u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
49u8, 1u8, 42u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 45u8, 32u8, 83u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 46u8, 32u8, 73u8, 116u8, 32u8,
115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 124u8, 42u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 45u8, 32u8, 83u8, 121u8, 109u8, 98u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 140u8, 42u8, 32u8, 110u8, 101u8,
119u8, 95u8, 114u8, 101u8, 113u8, 32u8, 45u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8,
97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8,
110u8, 116u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 12u8, 76u8, 68u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8,
109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8,
100u8, 117u8, 108u8, 101u8, 46u8, 125u8, 7u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 36u8, 88u8,
115u8, 101u8, 116u8, 95u8, 109u8, 97u8, 120u8, 95u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 95u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 4u8, 1u8, 24u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 8u8, 208u8, 83u8, 101u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 32u8, 96u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 96u8, 32u8, 111u8, 102u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 96u8, 32u8, 105u8, 110u8, 32u8, 116u8, 101u8, 114u8, 109u8, 115u8, 32u8, 111u8,
102u8, 32u8, 98u8, 121u8, 116u8, 101u8, 115u8, 46u8, 116u8, 77u8, 97u8, 121u8, 32u8, 111u8,
110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8,
118u8, 105u8, 97u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 46u8, 76u8, 115u8, 101u8, 116u8, 95u8,
100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
115u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 28u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 213u8,
2u8, 1u8, 64u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 105u8, 101u8, 115u8, 0u8, 1u8, 52u8, 204u8, 83u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 67u8, 65u8, 32u8, 96u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8,
96u8, 32u8, 116u8, 111u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 96u8, 46u8,
0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8,
1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 114u8, 101u8, 108u8, 101u8, 118u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 228u8, 45u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 97u8,
114u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 105u8, 110u8, 103u8, 46u8, 204u8, 45u8,
32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 96u8, 32u8, 116u8, 104u8, 101u8,
32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 32u8, 67u8, 65u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8,
111u8, 77u8, 97u8, 110u8, 121u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 115u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 46u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 46u8, 108u8, 101u8, 110u8,
40u8, 41u8, 32u8, 62u8, 32u8, 84u8, 58u8, 58u8, 77u8, 97u8, 120u8, 84u8, 97u8, 114u8, 103u8,
101u8, 116u8, 73u8, 100u8, 115u8, 58u8, 58u8, 103u8, 101u8, 116u8, 40u8, 41u8, 96u8, 46u8, 0u8,
52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 108u8, 115u8, 101u8, 116u8, 95u8, 100u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8,
100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 12u8, 116u8,
97u8, 120u8, 121u8, 2u8, 1u8, 12u8, 84u8, 97u8, 120u8, 0u8, 2u8, 48u8, 61u8, 1u8, 83u8, 101u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8,
119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8,
120u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 108u8, 108u8, 32u8, 68u8, 73u8, 68u8, 115u8, 32u8,
97u8, 110u8, 100u8, 32u8, 67u8, 65u8, 115u8, 32u8, 114u8, 101u8, 108u8, 101u8, 118u8, 97u8,
110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8,
32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8,
108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 114u8, 101u8, 108u8,
101u8, 118u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 46u8, 200u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 105u8, 116u8,
104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 97u8, 112u8, 112u8, 108u8, 121u8, 32u8, 116u8, 111u8, 46u8, 5u8, 1u8,
45u8, 32u8, 96u8, 116u8, 97u8, 120u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 101u8,
108u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 110u8, 103u8, 32u8, 100u8, 105u8, 118u8, 105u8, 100u8, 101u8, 110u8,
100u8, 115u8, 44u8, 32u8, 101u8, 116u8, 99u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8,
101u8, 116u8, 92u8, 115u8, 101u8, 116u8, 95u8, 100u8, 105u8, 100u8, 95u8, 119u8, 105u8, 116u8,
104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 12u8, 1u8,
24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 36u8, 116u8, 97u8, 120u8, 101u8, 100u8, 95u8, 100u8, 105u8, 100u8, 120u8, 1u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 12u8, 116u8,
97u8, 120u8, 221u8, 2u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 97u8,
120u8, 62u8, 0u8, 3u8, 64u8, 244u8, 83u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8,
105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8,
32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 102u8,
111u8, 114u8, 32u8, 96u8, 116u8, 97u8, 120u8, 101u8, 100u8, 95u8, 100u8, 105u8, 100u8, 96u8,
32u8, 116u8, 111u8, 32u8, 96u8, 116u8, 97u8, 120u8, 96u8, 46u8, 129u8, 1u8, 73u8, 102u8, 32u8,
96u8, 83u8, 111u8, 109u8, 101u8, 40u8, 116u8, 97u8, 120u8, 41u8, 96u8, 44u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 111u8, 118u8, 101u8, 114u8, 114u8, 105u8, 100u8, 101u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 119u8, 105u8, 116u8,
104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 111u8,
102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 111u8, 32u8, 96u8,
116u8, 97u8, 120u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 97u8, 120u8, 101u8,
100u8, 95u8, 100u8, 105u8, 100u8, 96u8, 46u8, 252u8, 79u8, 116u8, 104u8, 101u8, 114u8, 119u8,
105u8, 115u8, 101u8, 44u8, 32u8, 105u8, 102u8, 32u8, 96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 44u8,
32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8, 119u8,
105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8,
32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 0u8,
48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8,
45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 114u8, 101u8, 108u8, 101u8, 118u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 200u8, 45u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8,
32u8, 116u8, 97u8, 120u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 97u8, 112u8, 112u8, 108u8,
121u8, 32u8, 116u8, 111u8, 46u8, 228u8, 45u8, 32u8, 96u8, 116u8, 97u8, 120u8, 101u8, 100u8, 95u8,
100u8, 105u8, 100u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 105u8, 116u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8,
104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 117u8, 112u8,
100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 5u8, 1u8, 45u8, 32u8, 96u8, 116u8, 97u8, 120u8, 96u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8,
101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 101u8, 108u8, 100u8, 32u8, 119u8, 104u8, 101u8,
110u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 110u8, 103u8,
32u8, 100u8, 105u8, 118u8, 105u8, 100u8, 101u8, 110u8, 100u8, 115u8, 44u8, 32u8, 101u8, 116u8,
99u8, 46u8, 0u8, 36u8, 35u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8,
45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8,
100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 129u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8, 111u8, 77u8, 97u8, 110u8, 121u8,
68u8, 105u8, 100u8, 84u8, 97u8, 120u8, 101u8, 115u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 83u8,
111u8, 109u8, 101u8, 40u8, 116u8, 97u8, 120u8, 41u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8,
100u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 118u8, 101u8, 114u8,
114u8, 105u8, 100u8, 101u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 103u8, 111u8, 32u8,
111u8, 118u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 96u8, 77u8, 97u8, 120u8, 68u8, 105u8, 100u8, 87u8, 104u8, 116u8, 115u8, 96u8, 46u8, 0u8,
52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 100u8, 105u8, 110u8, 105u8, 116u8, 105u8,
97u8, 116u8, 101u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 16u8, 107u8, 105u8, 110u8,
100u8, 229u8, 2u8, 1u8, 24u8, 67u8, 65u8, 75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 36u8, 100u8,
101u8, 99u8, 108u8, 95u8, 100u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 0u8, 1u8, 44u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8,
101u8, 129u8, 7u8, 1u8, 88u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 82u8, 101u8, 99u8,
111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 83u8, 112u8, 101u8, 99u8, 62u8, 0u8, 1u8, 28u8,
100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 253u8, 2u8, 1u8, 36u8, 67u8, 65u8, 68u8, 101u8,
116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 1u8, 28u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8,
137u8, 7u8, 1u8, 96u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 97u8, 114u8, 103u8,
101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 62u8, 0u8,
1u8, 92u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 119u8, 105u8, 116u8, 104u8,
104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 221u8, 2u8, 1u8, 44u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 97u8, 120u8, 62u8, 0u8, 1u8, 60u8, 119u8,
105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8,
141u8, 7u8, 1u8, 120u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 86u8, 101u8, 99u8, 60u8,
40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 84u8, 97u8,
120u8, 41u8, 62u8, 62u8, 0u8, 4u8, 120u8, 73u8, 1u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8,
116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 67u8, 65u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 111u8, 102u8, 32u8, 96u8, 107u8, 105u8, 110u8,
100u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8,
112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8,
98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8,
32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 114u8, 101u8, 108u8, 101u8,
118u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 46u8, 140u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 115u8, 32u8,
109u8, 97u8, 100u8, 101u8, 32u8, 102u8, 111u8, 114u8, 46u8, 124u8, 45u8, 32u8, 96u8, 107u8,
105u8, 110u8, 100u8, 96u8, 32u8, 111u8, 102u8, 32u8, 67u8, 65u8, 32u8, 98u8, 101u8, 105u8, 110u8,
103u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 46u8, 152u8, 45u8,
32u8, 96u8, 100u8, 101u8, 99u8, 108u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 111u8, 102u8,
32u8, 67u8, 65u8, 32u8, 98u8, 114u8, 105u8, 110u8, 103u8, 32u8, 105u8, 110u8, 105u8, 116u8,
105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 100u8, 46u8, 240u8, 45u8, 32u8, 96u8, 114u8, 101u8,
99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8,
97u8, 110u8, 121u8, 44u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8, 108u8, 97u8,
116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 109u8, 112u8, 97u8, 99u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 46u8, 97u8, 1u8, 32u8, 32u8,
32u8, 73u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 44u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 32u8, 105u8,
110u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 32u8, 40u8, 34u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8,
116u8, 34u8, 41u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 97u8, 116u8, 101u8,
46u8, 77u8, 1u8, 45u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 110u8, 32u8, 102u8,
114u8, 101u8, 101u8, 45u8, 116u8, 101u8, 120u8, 116u8, 32u8, 102u8, 111u8, 114u8, 109u8, 44u8,
32u8, 117u8, 112u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 99u8, 101u8, 114u8, 116u8, 97u8, 105u8,
110u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 121u8,
116u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8,
244u8, 45u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 96u8, 44u8, 32u8, 105u8,
102u8, 32u8, 97u8, 110u8, 121u8, 44u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 108u8, 101u8,
118u8, 97u8, 110u8, 116u8, 47u8, 105u8, 114u8, 114u8, 101u8, 108u8, 101u8, 118u8, 97u8, 110u8,
116u8, 32u8, 116u8, 111u8, 46u8, 73u8, 1u8, 32u8, 32u8, 32u8, 79u8, 118u8, 101u8, 114u8, 114u8,
105u8, 100u8, 101u8, 115u8, 44u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8,
100u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8,
108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 32u8, 108u8, 101u8, 118u8, 101u8, 108u8, 32u8, 40u8, 96u8, 115u8, 101u8, 116u8, 95u8,
100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
115u8, 96u8, 41u8, 46u8, 93u8, 1u8, 45u8, 32u8, 96u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 95u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8,
116u8, 97u8, 120u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 44u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 32u8,
119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8,
120u8, 32u8, 116u8, 111u8, 32u8, 117u8, 115u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 46u8, 105u8, 1u8, 32u8, 32u8, 32u8, 79u8, 118u8, 101u8,
114u8, 114u8, 105u8, 100u8, 101u8, 115u8, 44u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 108u8, 101u8, 118u8, 101u8, 108u8, 32u8, 40u8, 96u8, 115u8, 101u8,
116u8, 95u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 119u8, 105u8, 116u8, 104u8,
104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 96u8, 41u8, 46u8,
33u8, 1u8, 45u8, 32u8, 96u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8,
110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 96u8, 44u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8,
44u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 115u8, 32u8, 112u8, 101u8, 114u8,
45u8, 68u8, 73u8, 68u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8,
110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 111u8, 118u8, 101u8, 114u8, 114u8, 105u8, 100u8,
101u8, 115u8, 46u8, 89u8, 1u8, 32u8, 32u8, 32u8, 79u8, 118u8, 101u8, 114u8, 114u8, 105u8, 100u8,
101u8, 115u8, 44u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8,
32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8,
108u8, 101u8, 118u8, 101u8, 108u8, 32u8, 40u8, 96u8, 115u8, 101u8, 116u8, 95u8, 100u8, 105u8,
100u8, 95u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8,
116u8, 97u8, 120u8, 96u8, 41u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 29u8, 1u8, 45u8, 32u8, 96u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 84u8, 111u8,
111u8, 76u8, 111u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 32u8, 103u8, 111u8,
101u8, 115u8, 32u8, 98u8, 101u8, 121u8, 111u8, 110u8, 100u8, 32u8, 96u8, 109u8, 97u8, 120u8,
95u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 95u8, 108u8, 101u8, 110u8, 103u8, 116u8,
104u8, 96u8, 46u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 105u8, 1u8, 45u8, 32u8, 96u8, 67u8, 111u8, 117u8,
110u8, 116u8, 101u8, 114u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 96u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 108u8, 105u8, 107u8, 101u8, 108u8,
121u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8,
111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 67u8, 65u8, 115u8, 32u8, 119u8, 101u8, 114u8,
101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 44u8,
248u8, 32u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8, 103u8, 101u8,
114u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 111u8, 99u8, 99u8, 117u8, 114u8, 101u8,
100u8, 32u8, 105u8, 102u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 117u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8, 111u8,
77u8, 97u8, 110u8, 121u8, 68u8, 105u8, 100u8, 84u8, 97u8, 120u8, 101u8, 115u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8,
95u8, 116u8, 97u8, 120u8, 46u8, 117u8, 110u8, 119u8, 114u8, 97u8, 112u8, 40u8, 41u8, 46u8, 108u8,
101u8, 110u8, 40u8, 41u8, 96u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 103u8, 111u8,
32u8, 111u8, 118u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 32u8, 96u8, 77u8, 97u8, 120u8, 68u8, 105u8, 100u8, 87u8, 104u8, 116u8, 115u8, 96u8, 46u8,
1u8, 1u8, 45u8, 32u8, 96u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 68u8,
105u8, 100u8, 84u8, 97u8, 120u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8,
32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 32u8, 109u8,
111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 111u8, 110u8, 99u8, 101u8, 32u8,
105u8, 110u8, 32u8, 96u8, 119u8, 116u8, 96u8, 46u8, 85u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8,
111u8, 77u8, 97u8, 110u8, 121u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 115u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 46u8,
117u8, 110u8, 119u8, 114u8, 97u8, 112u8, 40u8, 41u8, 46u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 32u8, 62u8, 32u8, 84u8,
58u8, 58u8, 77u8, 97u8, 120u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 115u8, 58u8,
58u8, 103u8, 101u8, 116u8, 40u8, 41u8, 96u8, 46u8, 1u8, 1u8, 45u8, 32u8, 96u8, 68u8, 101u8, 99u8,
108u8, 68u8, 97u8, 116u8, 101u8, 73u8, 110u8, 70u8, 117u8, 116u8, 117u8, 114u8, 101u8, 96u8,
32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 99u8, 108u8, 97u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 97u8, 115u8,
116u8, 46u8, 81u8, 1u8, 45u8, 32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 96u8, 114u8, 101u8, 99u8,
111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 46u8, 105u8, 115u8, 95u8, 115u8, 111u8,
109u8, 101u8, 40u8, 41u8, 96u8, 44u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 101u8,
114u8, 114u8, 111u8, 114u8, 115u8, 32u8, 100u8, 117u8, 101u8, 32u8, 116u8, 111u8, 32u8, 99u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8, 109u8, 97u8, 121u8, 32u8, 111u8, 99u8, 99u8,
117u8, 114u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 44u8, 108u8, 105u8,
110u8, 107u8, 95u8, 99u8, 97u8, 95u8, 100u8, 111u8, 99u8, 8u8, 1u8, 8u8, 105u8, 100u8, 109u8,
2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 16u8, 100u8, 111u8, 99u8, 115u8, 1u8, 3u8,
1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 73u8,
100u8, 62u8, 0u8, 5u8, 72u8, 172u8, 76u8, 105u8, 110u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 67u8, 65u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 116u8,
111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 100u8,
111u8, 99u8, 115u8, 96u8, 46u8, 244u8, 65u8, 110u8, 121u8, 32u8, 112u8, 114u8, 101u8, 118u8,
105u8, 111u8, 117u8, 115u8, 32u8, 108u8, 105u8, 110u8, 107u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 102u8, 97u8, 118u8, 111u8, 114u8, 32u8,
111u8, 102u8, 32u8, 96u8, 100u8, 111u8, 99u8, 115u8, 96u8, 46u8, 0u8, 85u8, 1u8, 84u8, 104u8,
101u8, 32u8, 119u8, 111u8, 114u8, 107u8, 102u8, 108u8, 111u8, 119u8, 32u8, 104u8, 101u8, 114u8,
101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 97u8, 110u8,
100u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 110u8, 32u8, 97u8, 110u8, 121u8, 32u8, 111u8, 114u8,
100u8, 101u8, 114u8, 32u8, 100u8, 101u8, 115u8, 105u8, 114u8, 101u8, 100u8, 46u8, 196u8, 79u8,
110u8, 99u8, 101u8, 32u8, 98u8, 111u8, 116u8, 104u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
44u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 119u8, 32u8,
98u8, 101u8, 32u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 103u8, 101u8,
116u8, 104u8, 101u8, 114u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 81u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8,
98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8,
32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 105u8, 100u8, 46u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 114u8,
101u8, 108u8, 101u8, 118u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 168u8, 45u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8,
100u8, 111u8, 99u8, 115u8, 96u8, 46u8, 176u8, 45u8, 32u8, 96u8, 100u8, 111u8, 99u8, 115u8, 96u8,
32u8, 116u8, 111u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 96u8, 105u8, 100u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 216u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8,
99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8,
111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8,
32u8, 67u8, 65u8, 46u8, 25u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 68u8,
111u8, 99u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 111u8, 102u8, 32u8, 96u8,
100u8, 111u8, 99u8, 115u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8,
110u8, 116u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 36u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 95u8, 99u8, 97u8, 4u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8,
109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 6u8, 72u8, 148u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 46u8, 0u8, 196u8, 65u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8,
100u8, 32u8, 100u8, 97u8, 116u8, 97u8, 44u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 97u8, 115u8,
32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 108u8, 105u8, 110u8, 107u8,
115u8, 44u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 115u8, 44u8, 172u8, 97u8, 110u8,
100u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
97u8, 108u8, 115u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 0u8,
212u8, 65u8, 110u8, 121u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8,
104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 32u8, 100u8,
97u8, 116u8, 101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 115u8, 101u8, 101u8, 176u8, 96u8,
115u8, 116u8, 114u8, 111u8, 110u8, 103u8, 95u8, 114u8, 101u8, 102u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 40u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8, 105u8, 100u8,
41u8, 96u8, 32u8, 100u8, 101u8, 99u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 101u8, 100u8,
46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
93u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8,
101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 114u8, 101u8, 108u8, 101u8, 118u8,
97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 46u8, 120u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8,
1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8,
100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 216u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8, 0u8,
52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 72u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
95u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 8u8, 1u8, 20u8,
99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 44u8,
114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 129u8, 7u8, 1u8, 88u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8,
97u8, 116u8, 101u8, 83u8, 112u8, 101u8, 99u8, 62u8, 0u8, 7u8, 60u8, 224u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
67u8, 65u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 93u8, 1u8, 45u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 101u8,
114u8, 110u8, 97u8, 108u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 114u8, 101u8, 108u8, 101u8, 118u8, 97u8, 110u8, 116u8, 32u8,
112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 116u8, 45u8,
32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 116u8, 101u8, 114u8, 46u8, 236u8, 45u8,
32u8, 96u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 44u8,
32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 44u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8,
99u8, 117u8, 108u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 109u8, 112u8,
97u8, 99u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 46u8, 97u8,
1u8, 32u8, 32u8, 32u8, 73u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
44u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8,
32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8,
100u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8,
104u8, 111u8, 116u8, 32u8, 40u8, 34u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8,
110u8, 116u8, 34u8, 41u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 97u8, 116u8,
101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 216u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8,
81u8, 1u8, 45u8, 32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 96u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 46u8, 105u8, 115u8, 95u8, 115u8, 111u8, 109u8, 101u8,
40u8, 41u8, 96u8, 44u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 101u8, 114u8, 114u8,
111u8, 114u8, 115u8, 32u8, 100u8, 117u8, 101u8, 32u8, 116u8, 111u8, 32u8, 99u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 105u8, 110u8, 103u8, 32u8, 109u8, 97u8, 121u8, 32u8, 111u8, 99u8, 99u8, 117u8, 114u8,
46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 160u8, 105u8, 110u8, 105u8, 116u8,
105u8, 97u8, 116u8, 101u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8,
95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 97u8, 110u8, 100u8, 95u8, 100u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 28u8, 1u8, 28u8, 99u8, 97u8, 95u8, 97u8,
114u8, 103u8, 115u8, 145u8, 7u8, 1u8, 108u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8,
101u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8,
111u8, 110u8, 65u8, 114u8, 103u8, 115u8, 0u8, 1u8, 36u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 109u8, 7u8, 1u8, 92u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 62u8, 0u8, 1u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 156u8, 1u8,
24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 36u8, 112u8, 101u8, 114u8, 95u8, 115u8,
104u8, 97u8, 114u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 40u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8,
116u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 40u8, 101u8, 120u8,
112u8, 105u8, 114u8, 101u8, 115u8, 95u8, 97u8, 116u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 8u8, 4u8, 29u8,
1u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 32u8, 116u8, 111u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 32u8, 96u8,
105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 96u8, 32u8, 97u8, 110u8,
100u8, 32u8, 96u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 96u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 129u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 133u8, 7u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8,
0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 133u8, 7u8, 0u8, 0u8, 1u8, 0u8, 0u8,
133u8, 7u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8,
111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 56u8,
82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 83u8, 112u8, 101u8, 99u8, 0u8,
1u8, 12u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 4u8, 0u8, 32u8,
1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 0u8, 0u8, 64u8, 69u8, 120u8, 105u8,
115u8, 116u8, 105u8, 110u8, 103u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 4u8,
0u8, 153u8, 2u8, 1u8, 40u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 73u8, 100u8,
0u8, 1u8, 0u8, 32u8, 69u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 4u8, 0u8, 133u8, 2u8,
1u8, 48u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 73u8, 100u8, 0u8,
2u8, 0u8, 0u8, 137u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8,
1u8, 213u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8,
109u8, 101u8, 4u8, 0u8, 213u8, 2u8, 0u8, 0u8, 1u8, 0u8, 0u8, 141u8, 7u8, 4u8, 24u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 245u8, 2u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8,
101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 245u8, 2u8, 0u8, 0u8, 1u8, 0u8,
0u8, 145u8, 7u8, 8u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8,
112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8,
108u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 116u8, 101u8, 67u8, 111u8, 114u8, 112u8, 111u8,
114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 65u8, 114u8, 103u8, 115u8,
0u8, 0u8, 32u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 16u8, 107u8, 105u8, 110u8, 100u8, 229u8, 2u8, 1u8,
24u8, 67u8, 65u8, 75u8, 105u8, 110u8, 100u8, 0u8, 1u8, 36u8, 100u8, 101u8, 99u8, 108u8, 95u8,
100u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 0u8, 1u8,
44u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 95u8, 100u8, 97u8, 116u8, 101u8, 129u8, 7u8, 1u8,
88u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8,
68u8, 97u8, 116u8, 101u8, 83u8, 112u8, 101u8, 99u8, 62u8, 0u8, 1u8, 28u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 253u8, 2u8, 1u8, 36u8, 67u8, 65u8, 68u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 0u8, 1u8, 28u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 137u8, 7u8, 1u8,
96u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 62u8, 0u8, 1u8, 92u8, 100u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8,
100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 221u8, 2u8, 1u8, 44u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 84u8, 97u8, 120u8, 62u8, 0u8, 1u8, 60u8, 119u8, 105u8, 116u8, 104u8,
104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 95u8, 116u8, 97u8, 120u8, 141u8, 7u8, 1u8,
120u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 86u8, 101u8, 99u8, 60u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 44u8, 32u8, 84u8, 97u8, 120u8, 41u8, 62u8,
62u8, 0u8, 0u8, 149u8, 7u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 24u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8,
4u8, 84u8, 0u8, 1u8, 24u8, 52u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 95u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 16u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8,
67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 20u8, 114u8, 97u8, 110u8, 103u8, 101u8, 9u8, 3u8, 1u8, 60u8,
66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8, 103u8,
101u8, 0u8, 1u8, 16u8, 109u8, 101u8, 116u8, 97u8, 13u8, 3u8, 1u8, 40u8, 66u8, 97u8, 108u8, 108u8,
111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 1u8, 12u8, 114u8, 99u8, 118u8, 21u8, 1u8, 1u8, 16u8,
98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 104u8, 232u8, 65u8, 116u8, 116u8, 97u8, 99u8, 104u8, 32u8,
97u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 0u8, 172u8, 84u8, 104u8, 101u8, 32u8, 98u8,
97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 97u8, 100u8, 109u8,
105u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 105u8,
110u8, 32u8, 96u8, 114u8, 97u8, 110u8, 103u8, 101u8, 96u8, 46u8, 176u8, 84u8, 104u8, 101u8, 32u8,
98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 39u8, 115u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 105u8, 115u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8, 44u8, 5u8, 1u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 116u8, 105u8, 116u8,
108u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8,
115u8, 44u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8,
101u8, 115u8, 44u8, 32u8, 101u8, 116u8, 99u8, 46u8, 120u8, 83u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 96u8,
32u8, 102u8, 111u8, 114u8, 32u8, 109u8, 111u8, 114u8, 101u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8,
112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8,
32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 46u8, 208u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 67u8, 65u8, 32u8, 116u8, 111u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 116u8, 111u8, 46u8,
192u8, 45u8, 32u8, 96u8, 114u8, 97u8, 110u8, 103u8, 101u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8,
105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 118u8, 111u8, 116u8,
105u8, 110u8, 103u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8,
32u8, 101u8, 110u8, 100u8, 115u8, 46u8, 236u8, 45u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8,
32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 39u8, 115u8, 32u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 32u8, 97u8, 115u8, 32u8, 97u8, 102u8, 111u8, 114u8, 101u8, 109u8,
101u8, 110u8, 116u8, 105u8, 111u8, 110u8, 101u8, 100u8, 46u8, 228u8, 45u8, 32u8, 96u8, 114u8,
99u8, 118u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8,
119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 82u8, 67u8, 86u8, 32u8, 105u8, 115u8,
32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 228u8, 45u8, 32u8, 96u8, 78u8,
111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8,
95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8, 240u8, 45u8, 32u8, 96u8, 67u8,
65u8, 78u8, 111u8, 116u8, 78u8, 111u8, 116u8, 105u8, 99u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8,
78u8, 111u8, 116u8, 105u8, 99u8, 101u8, 96u8, 32u8, 107u8, 105u8, 110u8, 100u8, 46u8, 188u8,
45u8, 32u8, 96u8, 83u8, 116u8, 97u8, 114u8, 116u8, 65u8, 102u8, 116u8, 101u8, 114u8, 69u8, 110u8,
100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8, 115u8,
116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8, 101u8,
110u8, 100u8, 96u8, 46u8, 41u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 119u8, 65u8, 102u8, 116u8,
101u8, 114u8, 69u8, 110u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 111u8, 119u8,
32u8, 62u8, 32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8, 101u8, 110u8, 100u8, 96u8, 32u8, 119u8,
104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 110u8, 111u8, 119u8, 96u8, 32u8, 105u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 105u8,
109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 46u8, 168u8, 45u8, 32u8, 96u8, 78u8, 111u8, 82u8,
101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 67u8,
65u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 89u8, 1u8, 45u8, 32u8, 96u8, 82u8, 101u8, 99u8,
111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 65u8, 102u8, 116u8, 101u8, 114u8, 83u8, 116u8,
97u8, 114u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 100u8, 97u8, 116u8, 101u8, 32u8, 62u8,
32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8, 115u8, 116u8, 97u8, 114u8, 116u8, 96u8, 32u8,
119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 114u8, 101u8, 99u8, 111u8,
114u8, 100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 184u8, 45u8, 32u8, 96u8, 65u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8,
111u8, 116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 46u8, 49u8, 1u8, 45u8, 32u8,
96u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 79u8, 102u8, 67u8, 104u8, 111u8, 105u8, 99u8,
101u8, 115u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 99u8, 104u8, 111u8,
105u8, 99u8, 101u8, 32u8, 105u8, 110u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8, 32u8, 111u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 115u8, 32u8, 96u8, 117u8, 115u8, 105u8, 122u8,
101u8, 96u8, 46u8, 9u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8,
96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 101u8, 109u8, 98u8, 101u8, 100u8, 100u8, 101u8, 100u8, 32u8, 115u8, 116u8, 114u8,
105u8, 110u8, 103u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8,
32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 111u8, 111u8, 32u8, 108u8, 111u8, 110u8, 103u8, 46u8, 1u8,
1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 32u8, 102u8, 101u8, 101u8,
32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 104u8,
97u8, 114u8, 103u8, 101u8, 100u8, 46u8, 16u8, 118u8, 111u8, 116u8, 101u8, 8u8, 1u8, 20u8, 99u8,
97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 20u8, 118u8,
111u8, 116u8, 101u8, 115u8, 45u8, 3u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 86u8, 111u8, 116u8, 101u8, 62u8, 0u8, 1u8, 68u8, 17u8, 1u8, 67u8, 97u8,
115u8, 116u8, 32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 115u8, 96u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 97u8, 116u8, 116u8,
97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 9u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8,
97u8, 114u8, 103u8, 101u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 67u8, 65u8, 46u8, 184u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8,
116u8, 39u8, 115u8, 32u8, 67u8, 65u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 118u8, 111u8, 116u8,
101u8, 115u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 116u8,
111u8, 32u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 32u8, 116u8, 111u8, 32u8, 101u8, 97u8,
99u8, 104u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 85u8, 1u8, 32u8, 32u8, 32u8,
84u8, 104u8, 101u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8,
103u8, 32u8, 112u8, 111u8, 119u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8, 32u8, 68u8, 73u8, 68u8, 32u8, 109u8, 97u8, 121u8,
32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
97u8, 99u8, 104u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 220u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8,
104u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8,
95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 46u8, 252u8, 45u8, 32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8,
78u8, 111u8, 116u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8, 101u8,
114u8, 105u8, 111u8, 100u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 99u8, 111u8,
109u8, 109u8, 101u8, 110u8, 99u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 46u8, 216u8, 45u8,
32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 69u8, 110u8, 100u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8,
32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 110u8, 100u8, 101u8, 100u8, 46u8, 93u8, 1u8, 45u8, 32u8,
96u8, 87u8, 114u8, 111u8, 110u8, 103u8, 86u8, 111u8, 116u8, 101u8, 67u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8,
100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8,
32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 46u8,
228u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 67u8, 65u8, 46u8,
244u8, 45u8, 32u8, 96u8, 78u8, 111u8, 116u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 101u8,
100u8, 66u8, 121u8, 67u8, 65u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8,
65u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8,
32u8, 68u8, 73u8, 68u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8,
102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 86u8, 111u8, 116u8, 101u8, 115u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8,
112u8, 111u8, 119u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 110u8, 121u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8,
32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 115u8, 96u8, 164u8, 32u8, 32u8, 32u8, 101u8, 120u8, 99u8,
101u8, 101u8, 100u8, 115u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8,
115u8, 32u8, 68u8, 73u8, 68u8, 39u8, 115u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8,
112u8, 111u8, 119u8, 101u8, 114u8, 46u8, 40u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8,
101u8, 110u8, 100u8, 8u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8,
65u8, 73u8, 100u8, 0u8, 1u8, 12u8, 101u8, 110u8, 100u8, 32u8, 1u8, 24u8, 77u8, 111u8, 109u8,
101u8, 110u8, 116u8, 0u8, 2u8, 48u8, 5u8, 1u8, 65u8, 109u8, 101u8, 110u8, 100u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8,
32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8,
32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8,
100u8, 46u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 184u8, 45u8, 32u8, 96u8, 99u8,
97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8,
101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8,
100u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 39u8, 115u8, 32u8, 67u8, 65u8, 46u8, 196u8,
45u8, 32u8, 96u8, 101u8, 110u8, 100u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 101u8, 110u8,
100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 220u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8,
104u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8,
95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8,
65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 61u8, 32u8,
110u8, 111u8, 119u8, 96u8, 44u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 110u8,
111u8, 119u8, 96u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 140u8, 45u8, 32u8, 96u8,
83u8, 116u8, 97u8, 114u8, 116u8, 65u8, 102u8, 116u8, 101u8, 114u8, 69u8, 110u8, 100u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 32u8, 101u8, 110u8,
100u8, 96u8, 46u8, 44u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 109u8, 101u8, 116u8, 97u8,
8u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8,
0u8, 1u8, 16u8, 109u8, 101u8, 116u8, 97u8, 13u8, 3u8, 1u8, 40u8, 66u8, 97u8, 108u8, 108u8, 111u8,
116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 3u8, 52u8, 97u8, 1u8, 65u8, 109u8, 101u8, 110u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 40u8,
116u8, 105u8, 116u8, 108u8, 101u8, 44u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 115u8,
44u8, 32u8, 101u8, 116u8, 99u8, 46u8, 41u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
67u8, 65u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8,
112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8,
32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 46u8, 184u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 98u8, 97u8, 108u8, 108u8,
111u8, 116u8, 39u8, 115u8, 32u8, 67u8, 65u8, 46u8, 144u8, 45u8, 32u8, 96u8, 109u8, 101u8, 116u8,
97u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 220u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 49u8,
1u8, 45u8, 32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 61u8, 32u8, 110u8, 111u8, 119u8, 96u8, 44u8,
32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 110u8, 111u8, 119u8, 96u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
116u8, 105u8, 109u8, 101u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 79u8, 102u8, 67u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 79u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 116u8, 97u8, 108u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 32u8, 105u8, 110u8,
32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 115u8, 32u8, 96u8, 117u8, 115u8, 105u8, 122u8, 101u8, 96u8, 46u8, 9u8, 1u8, 45u8,
32u8, 96u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8, 97u8,
110u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 109u8, 98u8, 101u8,
100u8, 100u8, 101u8, 100u8, 32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 115u8, 32u8, 105u8,
110u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 96u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 111u8,
111u8, 32u8, 108u8, 111u8, 110u8, 103u8, 46u8, 40u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
95u8, 114u8, 99u8, 118u8, 8u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8, 100u8, 109u8, 2u8, 1u8, 16u8,
67u8, 65u8, 73u8, 100u8, 0u8, 1u8, 12u8, 114u8, 99u8, 118u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8,
111u8, 108u8, 0u8, 4u8, 44u8, 5u8, 1u8, 65u8, 109u8, 101u8, 110u8, 100u8, 32u8, 82u8, 67u8, 86u8,
32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 46u8, 0u8,
48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 69u8, 1u8,
45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8,
32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8,
97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 46u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 184u8, 45u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 98u8,
97u8, 108u8, 108u8, 111u8, 116u8, 39u8, 115u8, 32u8, 67u8, 65u8, 46u8, 204u8, 45u8, 32u8, 96u8,
114u8, 99u8, 118u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8,
32u8, 105u8, 102u8, 32u8, 82u8, 67u8, 86u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8,
101u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 111u8, 114u8,
32u8, 110u8, 111u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 220u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 66u8,
97u8, 108u8, 108u8, 111u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8,
100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8,
116u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 61u8, 32u8, 110u8, 111u8,
119u8, 96u8, 44u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 110u8, 111u8, 119u8,
96u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 52u8, 114u8, 101u8, 109u8, 111u8, 118u8,
101u8, 95u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 4u8, 1u8, 20u8, 99u8, 97u8, 95u8, 105u8,
100u8, 109u8, 2u8, 1u8, 16u8, 67u8, 65u8, 73u8, 100u8, 0u8, 5u8, 40u8, 200u8, 82u8, 101u8, 109u8,
111u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 99u8, 97u8, 95u8,
105u8, 100u8, 96u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8,
115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8,
99u8, 97u8, 95u8, 105u8, 100u8, 46u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 184u8,
45u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 116u8, 116u8, 97u8,
99u8, 104u8, 101u8, 100u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 39u8, 115u8, 32u8, 67u8,
65u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 37u8, 1u8, 45u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 46u8, 220u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 99u8, 97u8, 95u8, 105u8, 100u8, 96u8,
32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 49u8,
1u8, 45u8, 32u8, 96u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 62u8, 61u8, 32u8, 110u8, 111u8, 119u8, 96u8, 44u8,
32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 110u8, 111u8, 119u8, 96u8, 32u8, 105u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
116u8, 105u8, 109u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
153u8, 7u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8,
16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 68u8, 100u8, 115u8, 101u8, 116u8, 95u8,
112u8, 114u8, 117u8, 110u8, 101u8, 95u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 105u8, 99u8,
97u8, 108u8, 95u8, 112u8, 105u8, 112u8, 115u8, 4u8, 1u8, 20u8, 112u8, 114u8, 117u8, 110u8, 101u8,
21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 20u8, 164u8, 67u8, 104u8, 97u8, 110u8,
103u8, 101u8, 32u8, 119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 112u8, 114u8, 117u8, 110u8, 101u8, 100u8, 46u8, 108u8, 67u8, 97u8, 110u8, 32u8,
111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 240u8, 42u8, 32u8, 96u8, 112u8, 114u8, 117u8,
110u8, 101u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8,
119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8,
116u8, 101u8, 100u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 98u8, 101u8, 32u8, 112u8, 114u8, 117u8, 110u8, 101u8, 100u8, 46u8, 96u8, 115u8,
101u8, 116u8, 95u8, 109u8, 105u8, 110u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 4u8, 1u8, 28u8, 100u8, 101u8,
112u8, 111u8, 115u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 1u8, 20u8, 33u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8,
32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 97u8, 109u8,
111u8, 117u8, 110u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 108u8, 67u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 240u8, 42u8, 32u8, 96u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 109u8, 105u8, 110u8, 32u8,
100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 97u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 112u8, 115u8, 101u8, 116u8, 95u8, 100u8,
101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 95u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8,
110u8, 116u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 4u8, 1u8, 32u8, 100u8, 117u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 2u8, 20u8, 144u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 112u8, 101u8,
114u8, 105u8, 111u8, 100u8, 46u8, 108u8, 67u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8,
32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8,
111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 105u8, 1u8, 42u8, 32u8, 96u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 100u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8, 110u8, 116u8,
32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 105u8, 116u8, 32u8, 116u8, 97u8, 107u8,
101u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 100u8, 32u8, 80u8, 73u8, 80u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 88u8, 115u8, 101u8, 116u8, 95u8,
112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8, 112u8, 105u8, 112u8, 95u8, 101u8, 120u8,
112u8, 105u8, 114u8, 121u8, 4u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 53u8, 1u8,
1u8, 104u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 84u8, 58u8,
58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 3u8,
24u8, 5u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
115u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
97u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 80u8, 73u8, 80u8, 32u8, 105u8,
115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 180u8, 73u8, 102u8, 32u8,
96u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 96u8, 78u8,
111u8, 110u8, 101u8, 96u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8,
110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 108u8,
67u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8,
32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 29u8, 1u8, 42u8, 32u8, 96u8,
101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 45u8, 116u8, 105u8, 109u8, 101u8, 32u8, 105u8, 116u8, 32u8, 116u8, 97u8,
107u8, 101u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 116u8, 105u8, 108u8,
108u8, 45u8, 96u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 96u8, 32u8, 80u8, 73u8, 80u8,
32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 88u8, 115u8, 101u8,
116u8, 95u8, 109u8, 97u8, 120u8, 95u8, 112u8, 105u8, 112u8, 95u8, 115u8, 107u8, 105u8, 112u8,
95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 4u8, 1u8, 12u8, 109u8, 97u8, 120u8, 8u8, 1u8, 48u8, 83u8,
107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 4u8, 20u8,
212u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8,
120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 115u8, 107u8, 105u8, 112u8, 32u8, 99u8, 111u8, 117u8,
110u8, 116u8, 32u8, 40u8, 96u8, 109u8, 97u8, 120u8, 95u8, 112u8, 105u8, 112u8, 95u8, 115u8,
107u8, 105u8, 112u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 96u8, 41u8, 46u8, 108u8, 67u8, 97u8,
110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 236u8, 42u8, 32u8, 96u8, 109u8,
97u8, 120u8, 96u8, 32u8, 115u8, 107u8, 105u8, 112u8, 115u8, 32u8, 98u8, 101u8, 102u8, 111u8,
114u8, 101u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8,
32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 71u8, 67u8, 32u8, 97u8, 110u8, 121u8, 109u8, 111u8, 114u8, 101u8, 46u8, 80u8, 115u8, 101u8,
116u8, 95u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 112u8, 105u8, 112u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 4u8, 1u8, 20u8, 108u8, 105u8, 109u8, 105u8, 116u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 5u8, 20u8, 105u8, 1u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8,
32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 99u8, 111u8,
109u8, 109u8, 117u8, 110u8, 105u8, 116u8, 121u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 101u8, 32u8, 97u8, 110u8, 121u8, 116u8, 104u8, 105u8, 110u8, 103u8, 46u8, 108u8, 67u8,
97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 144u8, 42u8, 32u8, 96u8, 108u8,
105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 80u8,
73u8, 80u8, 115u8, 46u8, 28u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 16u8, 1u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 201u8, 5u8, 1u8, 64u8, 66u8, 111u8, 120u8,
60u8, 84u8, 58u8, 58u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 62u8, 0u8, 1u8,
28u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 12u8, 117u8, 114u8, 108u8, 77u8, 2u8, 1u8, 44u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 85u8, 114u8, 108u8, 62u8, 0u8, 1u8, 44u8, 100u8, 101u8, 115u8,
99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 77u8, 3u8, 1u8, 88u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 80u8, 105u8, 112u8, 68u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8,
116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 6u8, 36u8, 5u8, 1u8, 65u8, 32u8, 110u8, 101u8, 116u8,
119u8, 111u8, 114u8, 107u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8, 98u8, 121u8, 32u8,
115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 85u8, 1u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 32u8, 105u8, 110u8, 32u8, 115u8,
111u8, 109u8, 101u8, 119u8, 97u8, 121u8, 46u8, 32u8, 65u8, 32u8, 109u8, 105u8, 110u8, 105u8,
109u8, 117u8, 109u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 105u8, 115u8,
32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 111u8,
112u8, 101u8, 110u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 200u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8,
114u8, 96u8, 32u8, 105u8, 115u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8,
32u8, 115u8, 105u8, 103u8, 110u8, 105u8, 110u8, 103u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
114u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 101u8, 1u8,
32u8, 32u8, 32u8, 85u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 117u8, 110u8, 100u8,
101u8, 114u8, 115u8, 116u8, 97u8, 110u8, 100u8, 32u8, 119u8, 104u8, 101u8, 116u8, 104u8, 101u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 97u8, 110u8, 100u8, 32u8, 118u8, 101u8, 114u8, 105u8, 102u8, 105u8, 101u8,
100u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 46u8, 128u8, 42u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 96u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 69u8, 1u8, 42u8, 32u8, 96u8, 100u8,
101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 96u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8,
109u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 44u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 105u8, 103u8,
110u8, 111u8, 114u8, 101u8, 100u8, 32u8, 105u8, 102u8, 32u8, 96u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 101u8, 114u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 204u8, 42u8, 32u8, 96u8, 117u8, 114u8, 108u8,
96u8, 32u8, 97u8, 32u8, 108u8, 105u8, 110u8, 107u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 119u8,
101u8, 98u8, 115u8, 105u8, 116u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 99u8, 117u8, 115u8, 115u8, 105u8,
111u8, 110u8, 16u8, 118u8, 111u8, 116u8, 101u8, 12u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8,
20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 1u8, 40u8, 97u8, 121u8, 101u8, 95u8, 111u8, 114u8,
95u8, 110u8, 97u8, 121u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 28u8, 100u8,
101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 7u8, 72u8, 29u8, 1u8, 86u8, 111u8, 116u8, 101u8, 32u8, 101u8, 105u8, 116u8, 104u8,
101u8, 114u8, 32u8, 105u8, 110u8, 32u8, 102u8, 97u8, 118u8, 111u8, 114u8, 32u8, 40u8, 96u8, 97u8,
121u8, 101u8, 95u8, 111u8, 114u8, 95u8, 110u8, 97u8, 121u8, 96u8, 32u8, 61u8, 61u8, 32u8, 116u8,
114u8, 117u8, 101u8, 41u8, 32u8, 111u8, 114u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8,
116u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 105u8,
100u8, 96u8, 46u8, 77u8, 1u8, 84u8, 104u8, 101u8, 32u8, 34u8, 99u8, 111u8, 110u8, 118u8, 105u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 34u8, 32u8, 111u8, 114u8, 32u8, 115u8, 116u8, 114u8,
101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8,
111u8, 116u8, 101u8, 32u8, 105u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8,
121u8, 32u8, 96u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 96u8, 44u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8,
101u8, 100u8, 46u8, 0u8, 140u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
96u8, 118u8, 111u8, 116u8, 101u8, 96u8, 32u8, 105u8, 115u8, 32u8, 42u8, 110u8, 111u8, 116u8,
42u8, 32u8, 97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 118u8, 101u8, 46u8, 248u8, 84u8, 104u8,
97u8, 116u8, 32u8, 105u8, 115u8, 44u8, 32u8, 96u8, 118u8, 111u8, 116u8, 101u8, 40u8, 105u8,
100u8, 44u8, 32u8, 116u8, 114u8, 117u8, 101u8, 44u8, 32u8, 53u8, 48u8, 41u8, 96u8, 32u8, 102u8,
111u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 118u8, 111u8,
116u8, 101u8, 40u8, 105u8, 100u8, 44u8, 32u8, 116u8, 114u8, 117u8, 101u8, 44u8, 32u8, 52u8, 48u8,
41u8, 96u8, 73u8, 1u8, 119u8, 105u8, 108u8, 108u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8,
114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 96u8, 53u8, 48u8, 96u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 114u8, 101u8, 102u8, 117u8, 110u8, 100u8, 32u8,
96u8, 53u8, 48u8, 32u8, 45u8, 32u8, 49u8, 48u8, 96u8, 44u8, 32u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 32u8, 117u8, 112u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 52u8, 48u8, 96u8,
32u8, 105u8, 110u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 46u8, 37u8, 1u8, 84u8,
111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 97u8, 116u8, 111u8, 112u8, 32u8, 111u8, 102u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8,
44u8, 32u8, 121u8, 111u8, 117u8, 39u8, 108u8, 108u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8,
96u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 95u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 32u8, 43u8, 32u8, 97u8, 100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8,
96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
76u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 105u8, 100u8, 220u8, 42u8, 32u8, 96u8, 97u8, 121u8, 101u8, 95u8, 111u8, 114u8,
95u8, 110u8, 97u8, 121u8, 96u8, 44u8, 32u8, 97u8, 32u8, 98u8, 111u8, 111u8, 108u8, 32u8, 114u8,
101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 105u8, 110u8, 103u8, 32u8, 102u8, 111u8,
114u8, 32u8, 111u8, 114u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 32u8, 118u8,
111u8, 116u8, 101u8, 232u8, 42u8, 32u8, 96u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
96u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 34u8, 99u8, 111u8, 110u8, 118u8, 105u8, 99u8, 116u8,
105u8, 111u8, 110u8, 34u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 119u8, 104u8, 105u8, 99u8,
104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 105u8, 115u8, 32u8,
109u8, 97u8, 100u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
228u8, 42u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8,
101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8, 110u8, 99u8,
101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 80u8, 73u8, 80u8, 46u8, 228u8,
42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 70u8, 114u8, 111u8, 109u8, 67u8, 111u8, 109u8, 109u8,
117u8, 110u8, 105u8, 116u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 97u8, 100u8, 101u8, 32u8, 98u8,
121u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
192u8, 42u8, 32u8, 96u8, 73u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8,
102u8, 32u8, 80u8, 73u8, 80u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 112u8, 101u8, 110u8,
100u8, 105u8, 110u8, 103u8, 46u8, 45u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8,
102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 99u8,
97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8,
96u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 45u8, 32u8, 111u8, 108u8, 100u8,
95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 96u8, 46u8, 104u8, 97u8, 112u8, 112u8,
114u8, 111u8, 118u8, 101u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 4u8, 1u8, 8u8, 105u8, 100u8, 73u8,
3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 8u8, 28u8, 212u8, 65u8, 112u8, 112u8,
114u8, 111u8, 118u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8,
80u8, 73u8, 80u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 105u8, 100u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 5u8, 1u8, 42u8, 32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 32u8, 97u8, 32u8, 71u8, 67u8, 32u8,
118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8,
121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 216u8, 42u8, 32u8,
96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8,
39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 228u8, 42u8, 32u8, 96u8, 73u8, 110u8,
99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 115u8, 110u8, 39u8,
116u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 46u8, 224u8, 42u8, 32u8, 96u8,
78u8, 111u8, 116u8, 66u8, 121u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 121u8, 32u8, 97u8, 32u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 60u8, 114u8, 101u8, 106u8,
101u8, 99u8, 116u8, 95u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 4u8, 1u8, 8u8,
105u8, 100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 9u8, 32u8, 248u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
105u8, 100u8, 96u8, 44u8, 32u8, 114u8, 101u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 97u8, 110u8, 121u8, 32u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8, 102u8, 117u8,
110u8, 100u8, 115u8, 44u8, 184u8, 97u8, 115u8, 115u8, 117u8, 109u8, 105u8, 110u8, 103u8, 32u8,
105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8,
32u8, 99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 108u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 5u8, 1u8, 78u8, 111u8, 116u8, 101u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 45u8, 102u8, 111u8,
114u8, 45u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8,
110u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 106u8, 101u8,
99u8, 116u8, 101u8, 100u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
5u8, 1u8, 42u8, 32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 32u8, 97u8, 32u8, 71u8, 67u8, 32u8, 118u8, 111u8,
116u8, 105u8, 110u8, 103u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 216u8, 42u8, 32u8, 96u8, 78u8,
111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 96u8,
32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 119u8, 105u8, 116u8,
104u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8,
32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 21u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8, 99u8,
111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
83u8, 116u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8,
97u8, 110u8, 99u8, 101u8, 108u8, 108u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 101u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 56u8, 112u8, 114u8, 117u8, 110u8, 101u8, 95u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 4u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8,
1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 10u8, 36u8, 41u8, 1u8, 80u8, 114u8, 117u8,
110u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 105u8, 100u8, 96u8, 44u8,
32u8, 114u8, 101u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 110u8, 121u8,
32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8, 102u8, 117u8, 110u8, 100u8, 101u8, 100u8, 46u8,
100u8, 84u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 109u8, 97u8, 121u8, 32u8, 110u8, 111u8,
116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 0u8, 9u8, 1u8, 84u8,
104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 103u8, 97u8, 114u8, 98u8, 97u8,
103u8, 101u8, 32u8, 99u8, 111u8, 108u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8,
112u8, 117u8, 114u8, 112u8, 111u8, 115u8, 101u8, 115u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 5u8, 1u8, 42u8, 32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 32u8, 97u8, 32u8,
71u8, 67u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 109u8, 97u8, 106u8, 111u8,
114u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 115u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
216u8, 42u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8,
32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8,
115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 212u8, 42u8, 32u8,
96u8, 73u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8,
115u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 46u8, 80u8, 114u8, 101u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 8u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8,
0u8, 1u8, 20u8, 117u8, 110u8, 116u8, 105u8, 108u8, 17u8, 6u8, 1u8, 88u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 62u8, 0u8, 11u8, 36u8, 224u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8,
32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 98u8, 121u8,
32u8, 96u8, 105u8, 100u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 49u8, 1u8, 42u8, 32u8, 96u8, 117u8, 110u8, 116u8, 105u8, 108u8, 96u8,
32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8,
117u8, 116u8, 117u8, 114u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 119u8, 104u8,
101u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8,
101u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 102u8, 105u8, 110u8, 105u8, 115u8, 104u8, 101u8, 100u8, 46u8, 69u8, 1u8, 32u8, 32u8,
32u8, 96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 109u8,
101u8, 97u8, 110u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 101u8, 110u8, 97u8, 99u8,
116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 105u8,
115u8, 32u8, 103u8, 111u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 102u8, 105u8, 110u8,
105u8, 115u8, 104u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8,
116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 57u8, 1u8, 42u8, 32u8, 96u8, 82u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 78u8, 111u8, 116u8, 66u8, 121u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8,
101u8, 67u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 96u8, 32u8,
117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8,
99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 33u8, 1u8, 42u8,
32u8, 96u8, 73u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 101u8, 96u8, 32u8, 117u8, 110u8,
108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 115u8, 116u8, 97u8, 116u8, 101u8, 46u8,
56u8, 99u8, 108u8, 101u8, 97u8, 114u8, 95u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8,
116u8, 0u8, 12u8, 16u8, 232u8, 67u8, 108u8, 101u8, 97u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8,
101u8, 109u8, 105u8, 116u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8,
116u8, 32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 67u8, 108u8, 101u8,
97u8, 114u8, 101u8, 100u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 61u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8,
116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 97u8, 32u8, 110u8, 111u8, 110u8, 45u8, 71u8, 67u8, 45u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 115u8, 110u8, 97u8,
112u8, 115u8, 104u8, 111u8, 116u8, 0u8, 13u8, 20u8, 13u8, 1u8, 84u8, 97u8, 107u8, 101u8, 115u8,
32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 38u8, 38u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 80u8, 73u8, 80u8, 115u8, 46u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8,
115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 115u8, 111u8, 114u8,
116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 116u8, 111u8, 32u8, 97u8, 32u8, 112u8, 114u8, 105u8,
111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 98u8, 97u8,
115u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 80u8, 73u8, 80u8,
39u8, 115u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 61u8, 1u8, 42u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 67u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
96u8, 32u8, 45u8, 32u8, 116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 101u8, 100u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 32u8, 110u8, 111u8, 110u8, 45u8, 71u8, 67u8, 45u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
88u8, 101u8, 110u8, 97u8, 99u8, 116u8, 95u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8,
116u8, 95u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 4u8, 1u8, 28u8, 114u8, 101u8,
115u8, 117u8, 108u8, 116u8, 115u8, 157u8, 7u8, 1u8, 112u8, 86u8, 101u8, 99u8, 60u8, 40u8, 80u8,
105u8, 112u8, 73u8, 100u8, 44u8, 32u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8,
82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 41u8, 62u8, 0u8, 14u8, 68u8, 208u8, 69u8, 110u8, 97u8,
99u8, 116u8, 115u8, 32u8, 96u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 96u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 105u8,
110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8,
32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 46u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8, 115u8, 110u8,
97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8,
32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8,
102u8, 117u8, 114u8, 116u8, 104u8, 101u8, 114u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8,
101u8, 110u8, 116u8, 115u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8, 32u8, 105u8, 116u8, 32u8,
105u8, 115u8, 32u8, 99u8, 108u8, 101u8, 97u8, 114u8, 101u8, 100u8, 46u8, 0u8, 85u8, 1u8, 84u8,
104u8, 101u8, 32u8, 96u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 96u8, 32u8, 97u8,
114u8, 101u8, 32u8, 101u8, 110u8, 99u8, 111u8, 100u8, 101u8, 100u8, 32u8, 97u8, 32u8, 108u8,
105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 40u8, 105u8, 100u8, 44u8, 32u8, 114u8,
101u8, 115u8, 117u8, 108u8, 116u8, 41u8, 96u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8,
96u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 112u8,
112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8, 105u8, 100u8, 96u8, 46u8,
73u8, 1u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 112u8, 114u8, 105u8, 111u8,
114u8, 105u8, 116u8, 121u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8,
101u8, 110u8, 99u8, 111u8, 100u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 42u8, 108u8, 111u8, 119u8, 101u8, 115u8, 116u8, 32u8, 112u8, 114u8, 105u8,
111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 42u8, 46u8, 85u8,
1u8, 115u8, 111u8, 32u8, 96u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 32u8, 61u8, 32u8,
91u8, 40u8, 105u8, 100u8, 44u8, 32u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 41u8, 93u8,
96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8,
32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8, 117u8,
101u8, 91u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8, 117u8,
101u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 32u8, 45u8, 32u8, 49u8, 93u8, 96u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 13u8, 1u8, 42u8, 32u8, 96u8, 66u8,
97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 117u8, 110u8,
108u8, 101u8, 115u8, 115u8, 32u8, 97u8, 32u8, 71u8, 67u8, 32u8, 118u8, 111u8, 116u8, 105u8,
110u8, 103u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 102u8, 117u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 33u8, 1u8, 42u8, 32u8, 96u8, 67u8, 97u8, 110u8,
110u8, 111u8, 116u8, 83u8, 107u8, 105u8, 112u8, 80u8, 105u8, 112u8, 96u8, 32u8, 45u8, 32u8, 97u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 80u8, 73u8, 80u8, 32u8, 104u8, 97u8, 115u8, 32u8,
97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8,
107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8,
121u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 46u8, 13u8, 1u8, 42u8, 32u8, 96u8, 83u8, 110u8,
97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 84u8, 111u8,
111u8, 76u8, 97u8, 114u8, 103u8, 101u8, 96u8, 32u8, 45u8, 32u8, 111u8, 110u8, 32u8, 108u8, 101u8,
110u8, 40u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 41u8, 32u8, 62u8, 32u8, 108u8,
101u8, 110u8, 40u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 95u8, 113u8, 117u8,
101u8, 117u8, 101u8, 41u8, 46u8, 112u8, 42u8, 32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 73u8, 100u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 96u8, 32u8, 45u8,
32u8, 105u8, 102u8, 58u8, 36u8, 32u8, 32u8, 96u8, 96u8, 96u8, 116u8, 101u8, 120u8, 116u8, 152u8,
32u8, 32u8, 32u8, 226u8, 136u8, 131u8, 32u8, 40u8, 105u8, 32u8, 226u8, 136u8, 136u8, 32u8, 48u8,
46u8, 46u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8, 117u8,
101u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 41u8, 46u8, 252u8, 32u8, 32u8, 32u8, 32u8, 32u8,
114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 91u8, 105u8, 93u8, 46u8, 48u8, 32u8, 226u8,
137u8, 160u8, 32u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8,
117u8, 101u8, 91u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8,
117u8, 101u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 32u8, 45u8, 32u8, 105u8, 93u8, 46u8, 105u8,
100u8, 20u8, 32u8, 32u8, 96u8, 96u8, 96u8, 248u8, 32u8, 32u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 105u8, 115u8, 32u8, 112u8, 114u8, 111u8, 116u8, 101u8, 99u8, 116u8, 115u8, 32u8, 97u8,
103u8, 97u8, 105u8, 110u8, 115u8, 116u8, 32u8, 99u8, 108u8, 101u8, 97u8, 114u8, 105u8, 110u8,
103u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 119u8, 104u8, 105u8, 108u8, 101u8, 32u8,
71u8, 67u8, 32u8, 105u8, 115u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 46u8, 84u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 100u8, 95u8, 112u8, 105u8, 112u8, 4u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8,
20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 15u8, 4u8, 216u8, 73u8, 110u8, 116u8, 101u8, 114u8,
110u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8,
108u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8,
115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8,
32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 46u8, 80u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 95u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 95u8, 112u8, 105u8, 112u8, 8u8,
1u8, 12u8, 100u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8,
100u8, 0u8, 16u8, 4u8, 220u8, 73u8, 110u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 115u8, 32u8, 101u8, 120u8, 112u8,
105u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 80u8, 73u8,
80u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8,
32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8,
111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8,
101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8,
101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 157u8, 7u8, 0u8, 0u8, 2u8,
161u8, 7u8, 0u8, 161u8, 7u8, 0u8, 0u8, 4u8, 8u8, 73u8, 3u8, 165u8, 7u8, 0u8, 165u8, 7u8, 8u8,
44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 56u8, 83u8,
110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 0u8,
1u8, 12u8, 28u8, 65u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 0u8, 0u8, 0u8, 24u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 0u8, 1u8, 0u8, 16u8, 83u8, 107u8, 105u8, 112u8, 0u8, 2u8, 0u8,
0u8, 169u8, 7u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8,
1u8, 24u8, 64u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 4u8, 1u8, 16u8, 110u8, 97u8, 109u8, 101u8, 129u8, 3u8, 1u8, 52u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8,
4u8, 168u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8,
46u8, 64u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 4u8, 1u8, 12u8, 110u8, 117u8, 109u8, 220u8, 1u8, 60u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8,
1u8, 32u8, 53u8, 1u8, 68u8, 101u8, 108u8, 101u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 117u8,
115u8, 101u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8,
32u8, 65u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 99u8,
97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8,
111u8, 110u8, 108u8, 121u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8,
32u8, 110u8, 111u8, 32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 29u8, 1u8, 42u8, 32u8, 96u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 68u8, 111u8, 101u8, 115u8, 78u8, 111u8, 116u8, 69u8, 120u8, 105u8,
115u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 117u8, 109u8, 96u8, 32u8, 100u8,
111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8, 110u8,
99u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 240u8, 42u8, 32u8, 96u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 111u8, 116u8, 69u8, 109u8, 112u8, 116u8, 121u8,
96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 104u8, 111u8, 108u8,
100u8, 115u8, 32u8, 97u8, 110u8, 121u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 0u8, 52u8, 35u8,
32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8,
32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 80u8, 109u8, 111u8, 118u8,
101u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 95u8, 102u8, 117u8,
110u8, 100u8, 115u8, 12u8, 1u8, 16u8, 102u8, 114u8, 111u8, 109u8, 212u8, 1u8, 44u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 8u8, 116u8, 111u8, 212u8,
1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8,
20u8, 105u8, 116u8, 101u8, 109u8, 115u8, 173u8, 7u8, 1u8, 88u8, 86u8, 101u8, 99u8, 60u8, 77u8,
111u8, 118u8, 101u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 116u8,
101u8, 109u8, 62u8, 0u8, 2u8, 60u8, 93u8, 1u8, 77u8, 111u8, 118u8, 101u8, 115u8, 32u8, 97u8,
32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 111u8, 110u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8,
101u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 224u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 32u8, 77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 46u8, 17u8, 1u8, 70u8, 117u8,
110u8, 100u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8,
101u8, 100u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8,
99u8, 97u8, 110u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 99u8,
111u8, 118u8, 101u8, 114u8, 101u8, 100u8, 32u8, 118u8, 105u8, 97u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 109u8, 101u8, 116u8, 104u8, 111u8, 100u8, 46u8, 0u8, 224u8, 65u8, 32u8, 115u8,
104u8, 111u8, 114u8, 116u8, 32u8, 109u8, 101u8, 109u8, 111u8, 32u8, 99u8, 97u8, 110u8, 32u8,
98u8, 101u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 111u8,
32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 97u8, 109u8,
111u8, 117u8, 110u8, 116u8, 32u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8, 0u8, 32u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 105u8, 1u8, 42u8, 32u8, 96u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 68u8, 111u8, 101u8, 115u8, 78u8, 111u8, 116u8, 69u8, 120u8,
105u8, 115u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 111u8, 110u8, 101u8, 32u8, 111u8, 114u8,
32u8, 98u8, 111u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 114u8, 101u8, 102u8, 101u8,
114u8, 101u8, 110u8, 99u8, 101u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 81u8,
1u8, 42u8, 32u8, 96u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8,
110u8, 95u8, 105u8, 115u8, 95u8, 115u8, 97u8, 109u8, 101u8, 95u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 105u8, 102u8, 32u8, 98u8, 111u8, 116u8, 104u8,
32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8,
99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8,
101u8, 145u8, 1u8, 42u8, 32u8, 96u8, 68u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8,
116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 118u8, 101u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 115u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 100u8,
105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 105u8, 101u8, 115u8, 73u8, 1u8, 42u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8,
97u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 65u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8,
99u8, 105u8, 101u8, 110u8, 116u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8,
32u8, 102u8, 114u8, 101u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 52u8,
35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8,
42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 64u8, 114u8, 101u8,
110u8, 97u8, 109u8, 101u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
8u8, 1u8, 12u8, 110u8, 117u8, 109u8, 220u8, 1u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 28u8, 116u8, 111u8, 95u8,
110u8, 97u8, 109u8, 101u8, 129u8, 3u8, 1u8, 52u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 78u8, 97u8, 109u8, 101u8, 0u8, 3u8, 28u8, 128u8, 82u8, 101u8, 110u8, 97u8, 109u8,
101u8, 115u8, 32u8, 97u8, 32u8, 110u8, 111u8, 110u8, 45u8, 100u8, 101u8, 102u8, 97u8, 117u8,
108u8, 116u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 29u8, 1u8, 42u8, 32u8, 96u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 68u8, 111u8, 101u8, 115u8, 78u8, 111u8,
116u8, 69u8, 120u8, 105u8, 115u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 110u8, 117u8,
109u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 102u8,
101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 0u8, 52u8, 35u8, 32u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 88u8, 113u8, 117u8, 105u8, 116u8,
95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 95u8, 99u8, 117u8, 115u8,
116u8, 111u8, 100u8, 121u8, 4u8, 1u8, 12u8, 112u8, 105u8, 100u8, 212u8, 1u8, 44u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 4u8, 32u8, 188u8, 87u8, 104u8,
101u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8, 111u8,
102u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 95u8, 105u8,
100u8, 96u8, 44u8, 73u8, 1u8, 97u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 114u8, 101u8, 116u8,
117u8, 114u8, 110u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8,
116u8, 111u8, 100u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 32u8, 117u8, 110u8, 105u8, 108u8, 97u8, 116u8, 101u8, 114u8, 97u8, 108u8, 108u8,
121u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 93u8, 1u8, 42u8,
32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8,
67u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 96u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 32u8, 111u8, 102u8,
32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 95u8, 105u8, 100u8,
96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
96u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 95u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 121u8, 4u8, 1u8, 28u8, 97u8,
117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 5u8, 0u8, 12u8,
76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8,
97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8,
114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 173u8, 7u8, 0u8, 0u8, 2u8, 177u8, 7u8, 0u8,
177u8, 7u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 68u8, 77u8, 111u8, 118u8, 101u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 116u8, 101u8, 109u8, 0u8, 0u8, 12u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 16u8, 109u8, 101u8, 109u8, 111u8, 124u8, 1u8, 48u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 77u8, 101u8, 109u8, 111u8, 62u8, 0u8, 0u8, 181u8, 7u8, 8u8,
76u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8,
111u8, 108u8, 95u8, 102u8, 101u8, 101u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8,
1u8, 8u8, 72u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 99u8, 111u8, 101u8, 102u8, 102u8,
105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 4u8, 1u8, 44u8, 99u8, 111u8, 101u8, 102u8, 102u8, 105u8,
99u8, 105u8, 101u8, 110u8, 116u8, 145u8, 3u8, 1u8, 32u8, 80u8, 111u8, 115u8, 82u8, 97u8, 116u8,
105u8, 111u8, 0u8, 0u8, 16u8, 192u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 99u8, 111u8, 101u8, 102u8, 102u8, 105u8, 99u8,
105u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8,
111u8, 111u8, 116u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8,
69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 136u8, 42u8, 32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 114u8,
111u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 98u8, 97u8, 115u8, 101u8, 95u8, 102u8, 101u8, 101u8, 8u8,
1u8, 8u8, 111u8, 112u8, 185u8, 7u8, 1u8, 40u8, 80u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8,
108u8, 79u8, 112u8, 0u8, 1u8, 32u8, 98u8, 97u8, 115u8, 101u8, 95u8, 102u8, 101u8, 101u8, 24u8,
1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 16u8, 172u8, 67u8, 104u8, 97u8,
110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 32u8, 98u8, 97u8, 115u8,
101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
114u8, 111u8, 111u8, 116u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 32u8,
35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 136u8, 42u8, 32u8, 96u8, 66u8, 97u8, 100u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8,
114u8, 111u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 12u8,
76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8,
97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8,
114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8,
32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 185u8, 7u8, 12u8, 100u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 109u8, 109u8, 111u8, 110u8, 95u8,
117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8, 115u8, 48u8, 112u8, 114u8, 111u8, 116u8,
111u8, 99u8, 111u8, 108u8, 95u8, 102u8, 101u8, 101u8, 40u8, 80u8, 114u8, 111u8, 116u8, 111u8,
99u8, 111u8, 108u8, 79u8, 112u8, 0u8, 1u8, 52u8, 76u8, 65u8, 115u8, 115u8, 101u8, 116u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
0u8, 0u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 115u8, 115u8, 117u8, 101u8, 0u8, 1u8,
0u8, 68u8, 65u8, 115u8, 115u8, 101u8, 116u8, 65u8, 100u8, 100u8, 68u8, 111u8, 99u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 0u8, 2u8, 0u8, 64u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 114u8,
101u8, 97u8, 116u8, 101u8, 65u8, 115u8, 115u8, 101u8, 116u8, 0u8, 3u8, 0u8, 96u8, 67u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8,
83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 4u8, 0u8, 164u8, 67u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 77u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8,
65u8, 100u8, 100u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 0u8, 5u8, 0u8, 88u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 67u8, 100u8, 100u8, 82u8, 101u8, 103u8, 105u8,
115u8, 116u8, 101u8, 114u8, 68u8, 105u8, 100u8, 0u8, 6u8, 0u8, 64u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 65u8, 100u8, 100u8, 67u8, 108u8, 97u8, 105u8, 109u8, 0u8, 7u8, 0u8,
164u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 65u8, 100u8, 100u8, 83u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 87u8, 105u8, 116u8,
104u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
0u8, 8u8, 0u8, 44u8, 80u8, 105u8, 112u8, 115u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8,
0u8, 9u8, 0u8, 64u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 80u8, 117u8,
116u8, 67u8, 111u8, 100u8, 101u8, 0u8, 10u8, 0u8, 108u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8,
97u8, 116u8, 101u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 65u8, 116u8, 116u8, 97u8, 99u8,
104u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 0u8, 11u8, 0u8, 116u8, 67u8, 97u8, 112u8, 105u8,
116u8, 97u8, 108u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 0u8, 12u8, 0u8, 0u8,
189u8, 7u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 114u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8, 67u8,
97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 16u8, 1u8, 16u8, 119u8, 104u8, 101u8, 110u8, 16u8, 1u8, 56u8, 84u8, 58u8,
58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 56u8,
109u8, 97u8, 121u8, 98u8, 101u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 105u8, 99u8,
193u8, 7u8, 1u8, 160u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 60u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 62u8,
0u8, 1u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 8u8, 1u8, 72u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 114u8, 105u8, 111u8, 114u8,
105u8, 116u8, 121u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 197u8, 7u8, 1u8, 80u8, 66u8,
111u8, 120u8, 60u8, 67u8, 97u8, 108u8, 108u8, 79u8, 114u8, 72u8, 97u8, 115u8, 104u8, 79u8, 102u8,
60u8, 84u8, 62u8, 62u8, 0u8, 0u8, 4u8, 112u8, 65u8, 110u8, 111u8, 110u8, 121u8, 109u8, 111u8,
117u8, 115u8, 108u8, 121u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
97u8, 32u8, 116u8, 97u8, 115u8, 107u8, 46u8, 24u8, 99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 8u8,
1u8, 16u8, 119u8, 104u8, 101u8, 110u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8,
120u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 4u8, 148u8, 67u8, 97u8, 110u8, 99u8, 101u8,
108u8, 32u8, 97u8, 110u8, 32u8, 97u8, 110u8, 111u8, 110u8, 121u8, 109u8, 111u8, 117u8, 115u8,
108u8, 121u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 116u8,
97u8, 115u8, 107u8, 46u8, 56u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8,
110u8, 97u8, 109u8, 101u8, 100u8, 20u8, 1u8, 8u8, 105u8, 100u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 119u8, 104u8, 101u8, 110u8, 16u8, 1u8, 56u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8,
56u8, 109u8, 97u8, 121u8, 98u8, 101u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 105u8,
99u8, 193u8, 7u8, 1u8, 160u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 60u8,
84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8,
62u8, 0u8, 1u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 8u8, 1u8, 72u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 114u8, 105u8, 111u8,
114u8, 105u8, 116u8, 121u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 197u8, 7u8, 1u8, 80u8,
66u8, 111u8, 120u8, 60u8, 67u8, 97u8, 108u8, 108u8, 79u8, 114u8, 72u8, 97u8, 115u8, 104u8, 79u8,
102u8, 60u8, 84u8, 62u8, 62u8, 0u8, 2u8, 4u8, 88u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 32u8, 97u8, 32u8, 110u8, 97u8, 109u8, 101u8, 100u8, 32u8, 116u8, 97u8, 115u8,
107u8, 46u8, 48u8, 99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 95u8, 110u8, 97u8, 109u8, 101u8, 100u8,
4u8, 1u8, 8u8, 105u8, 100u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8,
3u8, 4u8, 120u8, 67u8, 97u8, 110u8, 99u8, 101u8, 108u8, 32u8, 97u8, 32u8, 110u8, 97u8, 109u8,
101u8, 100u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 116u8,
97u8, 115u8, 107u8, 46u8, 56u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8,
97u8, 102u8, 116u8, 101u8, 114u8, 16u8, 1u8, 20u8, 97u8, 102u8, 116u8, 101u8, 114u8, 16u8, 1u8,
56u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
0u8, 1u8, 56u8, 109u8, 97u8, 121u8, 98u8, 101u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8,
105u8, 99u8, 193u8, 7u8, 1u8, 160u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8,
60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
62u8, 62u8, 0u8, 1u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 8u8, 1u8,
72u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 114u8, 105u8,
111u8, 114u8, 105u8, 116u8, 121u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 197u8, 7u8, 1u8,
80u8, 66u8, 111u8, 120u8, 60u8, 67u8, 97u8, 108u8, 108u8, 79u8, 114u8, 72u8, 97u8, 115u8, 104u8,
79u8, 102u8, 60u8, 84u8, 62u8, 62u8, 0u8, 4u8, 20u8, 168u8, 65u8, 110u8, 111u8, 110u8, 121u8,
109u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 97u8, 32u8, 116u8, 97u8, 115u8, 107u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8,
97u8, 32u8, 100u8, 101u8, 108u8, 97u8, 121u8, 46u8, 0u8, 40u8, 35u8, 32u8, 60u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 62u8, 84u8, 83u8, 97u8, 109u8, 101u8, 32u8, 97u8, 115u8, 32u8, 91u8,
96u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 96u8, 93u8, 46u8, 44u8, 35u8, 32u8,
60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 80u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 95u8, 110u8, 97u8, 109u8, 101u8, 100u8, 95u8, 97u8, 102u8, 116u8,
101u8, 114u8, 20u8, 1u8, 8u8, 105u8, 100u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8,
56u8, 62u8, 0u8, 1u8, 20u8, 97u8, 102u8, 116u8, 101u8, 114u8, 16u8, 1u8, 56u8, 84u8, 58u8, 58u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 56u8, 109u8,
97u8, 121u8, 98u8, 101u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 105u8, 99u8, 193u8,
7u8, 1u8, 160u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 60u8, 84u8, 58u8, 58u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 62u8, 0u8, 1u8,
32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 8u8, 1u8, 72u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8,
121u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 197u8, 7u8, 1u8, 80u8, 66u8, 111u8, 120u8, 60u8,
67u8, 97u8, 108u8, 108u8, 79u8, 114u8, 72u8, 97u8, 115u8, 104u8, 79u8, 102u8, 60u8, 84u8, 62u8,
62u8, 0u8, 5u8, 20u8, 144u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 97u8,
32u8, 110u8, 97u8, 109u8, 101u8, 100u8, 32u8, 116u8, 97u8, 115u8, 107u8, 32u8, 97u8, 102u8,
116u8, 101u8, 114u8, 32u8, 97u8, 32u8, 100u8, 101u8, 108u8, 97u8, 121u8, 46u8, 0u8, 40u8, 35u8,
32u8, 60u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 196u8, 83u8, 97u8, 109u8, 101u8,
32u8, 97u8, 115u8, 32u8, 91u8, 96u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8,
110u8, 97u8, 109u8, 101u8, 100u8, 96u8, 93u8, 40u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8, 110u8, 97u8, 109u8, 101u8, 100u8, 41u8,
46u8, 44u8, 35u8, 32u8, 60u8, 47u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 62u8, 4u8, 37u8,
1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8,
118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 46u8, 193u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8,
84u8, 1u8, 153u8, 3u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8,
111u8, 109u8, 101u8, 4u8, 0u8, 153u8, 3u8, 0u8, 0u8, 1u8, 0u8, 0u8, 197u8, 7u8, 16u8, 52u8,
102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 24u8,
116u8, 114u8, 97u8, 105u8, 116u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 44u8, 77u8, 97u8, 121u8, 98u8, 101u8, 72u8, 97u8, 115u8, 104u8, 101u8, 100u8, 8u8, 4u8,
84u8, 1u8, 201u8, 5u8, 16u8, 72u8, 97u8, 115u8, 104u8, 1u8, 36u8, 1u8, 8u8, 20u8, 86u8, 97u8,
108u8, 117u8, 101u8, 4u8, 0u8, 201u8, 5u8, 1u8, 4u8, 84u8, 0u8, 0u8, 0u8, 16u8, 72u8, 97u8,
115u8, 104u8, 4u8, 0u8, 36u8, 1u8, 16u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 0u8, 0u8, 201u8,
7u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8,
68u8, 48u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 118u8, 101u8, 110u8, 117u8, 101u8,
12u8, 1u8, 28u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 169u8, 3u8, 1u8, 48u8, 86u8,
101u8, 110u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 1u8, 28u8, 115u8,
105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 232u8, 1u8, 68u8, 86u8, 101u8, 99u8, 60u8, 84u8, 58u8,
58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 12u8, 116u8,
121u8, 112u8, 173u8, 3u8, 1u8, 36u8, 86u8, 101u8, 110u8, 117u8, 101u8, 84u8, 121u8, 112u8, 101u8,
0u8, 0u8, 20u8, 88u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 115u8, 32u8, 97u8,
32u8, 110u8, 101u8, 119u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 0u8, 164u8, 42u8, 32u8,
96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 45u8, 32u8, 69u8, 120u8, 116u8,
114u8, 97u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 97u8, 98u8, 111u8,
117u8, 116u8, 32u8, 97u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 61u8, 1u8, 42u8, 32u8, 96u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 96u8, 32u8, 45u8, 32u8, 65u8, 114u8, 114u8,
97u8, 121u8, 32u8, 111u8, 102u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 148u8, 42u8, 32u8, 96u8, 116u8, 121u8, 112u8, 96u8,
32u8, 45u8, 32u8, 84u8, 121u8, 112u8, 101u8, 32u8, 111u8, 102u8, 32u8, 118u8, 101u8, 110u8,
117u8, 101u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
101u8, 100u8, 80u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 95u8, 118u8, 101u8, 110u8, 117u8,
101u8, 95u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 8u8, 1u8, 8u8, 105u8, 100u8, 165u8,
3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 1u8, 28u8, 100u8, 101u8,
116u8, 97u8, 105u8, 108u8, 115u8, 169u8, 3u8, 1u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8, 68u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 1u8, 16u8, 92u8, 69u8, 100u8, 105u8, 116u8, 32u8,
97u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 39u8, 115u8, 32u8, 100u8, 101u8, 116u8, 97u8,
105u8, 108u8, 115u8, 46u8, 0u8, 180u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 115u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 73u8, 68u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8,
116u8, 111u8, 32u8, 101u8, 100u8, 105u8, 116u8, 46u8, 192u8, 42u8, 32u8, 96u8, 100u8, 101u8,
116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8,
101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8,
32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8,
46u8, 68u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 95u8, 118u8, 101u8, 110u8, 117u8, 101u8,
95u8, 116u8, 121u8, 112u8, 101u8, 8u8, 1u8, 8u8, 105u8, 100u8, 165u8, 3u8, 1u8, 28u8, 86u8,
101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 1u8, 12u8, 116u8, 121u8, 112u8, 173u8, 3u8, 1u8,
36u8, 86u8, 101u8, 110u8, 117u8, 101u8, 84u8, 121u8, 112u8, 101u8, 0u8, 2u8, 16u8, 80u8, 69u8,
100u8, 105u8, 116u8, 32u8, 97u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 39u8, 115u8, 32u8,
116u8, 121u8, 112u8, 101u8, 46u8, 0u8, 180u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 73u8,
68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8,
32u8, 116u8, 111u8, 32u8, 101u8, 100u8, 105u8, 116u8, 46u8, 180u8, 42u8, 32u8, 96u8, 116u8,
121u8, 112u8, 101u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 60u8,
97u8, 100u8, 100u8, 95u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 20u8, 1u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 165u8, 3u8, 1u8,
28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 0u8, 1u8, 60u8, 115u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 181u8, 3u8, 1u8,
120u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 84u8, 121u8, 112u8,
101u8, 60u8, 84u8, 58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 62u8, 0u8, 1u8, 40u8, 116u8, 114u8, 97u8, 100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8,
240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 118u8, 97u8, 108u8, 117u8, 101u8, 95u8, 100u8,
97u8, 116u8, 101u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8,
58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 16u8, 108u8, 101u8, 103u8, 115u8,
185u8, 3u8, 1u8, 32u8, 86u8, 101u8, 99u8, 60u8, 76u8, 101u8, 103u8, 62u8, 0u8, 3u8, 48u8, 92u8,
65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 105u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 236u8, 42u8, 32u8, 96u8, 118u8, 101u8, 110u8,
117u8, 101u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 98u8,
101u8, 108u8, 111u8, 110u8, 103u8, 115u8, 32u8, 116u8, 111u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8,
115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 116u8, 121u8, 112u8,
101u8, 96u8, 32u8, 45u8, 32u8, 68u8, 101u8, 102u8, 105u8, 110u8, 101u8, 115u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8,
115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 100u8, 93u8, 1u8, 32u8, 32u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 105u8,
110u8, 103u8, 32u8, 97u8, 108u8, 108u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 111u8, 114u8, 32u8, 119u8, 97u8, 105u8, 116u8, 105u8,
110u8, 103u8, 32u8, 116u8, 105u8, 108u8, 108u8, 32u8, 97u8, 32u8, 115u8, 112u8, 101u8, 99u8,
105u8, 102u8, 105u8, 99u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 81u8, 1u8, 42u8, 32u8,
96u8, 116u8, 114u8, 97u8, 100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 45u8, 32u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 112u8, 101u8, 111u8,
112u8, 108u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 97u8,
99u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 109u8, 1u8, 42u8,
32u8, 96u8, 118u8, 97u8, 108u8, 117u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 45u8,
32u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 100u8, 97u8, 116u8, 101u8,
32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 115u8, 101u8, 116u8,
116u8, 108u8, 101u8, 100u8, 32u8, 40u8, 110u8, 111u8, 116u8, 32u8, 101u8, 110u8, 102u8, 111u8,
114u8, 99u8, 101u8, 100u8, 41u8, 180u8, 42u8, 32u8, 96u8, 108u8, 101u8, 103u8, 115u8, 96u8, 32u8,
45u8, 32u8, 76u8, 101u8, 103u8, 115u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8,
100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 152u8, 96u8, 57u8, 53u8, 48u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8,
48u8, 32u8, 43u8, 32u8, 49u8, 95u8, 48u8, 48u8, 48u8, 95u8, 48u8, 48u8, 48u8, 32u8, 42u8, 32u8,
108u8, 101u8, 103u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8, 96u8, 104u8, 97u8, 100u8,
100u8, 95u8, 97u8, 110u8, 100u8, 95u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 95u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 24u8, 1u8, 32u8, 118u8,
101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8,
101u8, 73u8, 100u8, 0u8, 1u8, 60u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8,
110u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 181u8, 3u8, 1u8, 120u8, 83u8, 101u8, 116u8,
116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 84u8, 121u8, 112u8, 101u8, 60u8, 84u8, 58u8,
58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 1u8,
40u8, 116u8, 114u8, 97u8, 100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 240u8, 1u8, 68u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 62u8, 0u8, 1u8, 40u8, 118u8, 97u8, 108u8, 117u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8,
240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 16u8, 108u8, 101u8, 103u8, 115u8, 185u8, 3u8, 1u8,
32u8, 86u8, 101u8, 99u8, 60u8, 76u8, 101u8, 103u8, 62u8, 0u8, 1u8, 40u8, 112u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 228u8, 1u8, 64u8, 86u8, 101u8, 99u8, 60u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 62u8, 0u8, 4u8, 52u8, 140u8,
65u8, 100u8, 100u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8,
109u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 236u8, 42u8, 32u8, 96u8, 118u8, 101u8, 110u8, 117u8, 101u8,
95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 98u8, 101u8, 108u8,
111u8, 110u8, 103u8, 115u8, 32u8, 116u8, 111u8, 46u8, 9u8, 1u8, 42u8, 32u8, 96u8, 115u8, 101u8,
116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8,
32u8, 45u8, 32u8, 68u8, 101u8, 102u8, 105u8, 110u8, 101u8, 115u8, 32u8, 105u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 115u8, 101u8,
116u8, 116u8, 108u8, 101u8, 100u8, 93u8, 1u8, 32u8, 32u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8,
102u8, 116u8, 101u8, 114u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 118u8, 105u8, 110u8, 103u8,
32u8, 97u8, 108u8, 108u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8,
111u8, 110u8, 115u8, 32u8, 111u8, 114u8, 32u8, 119u8, 97u8, 105u8, 116u8, 105u8, 110u8, 103u8,
32u8, 116u8, 105u8, 108u8, 108u8, 32u8, 97u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 99u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 81u8, 1u8, 42u8, 32u8, 96u8, 116u8,
114u8, 97u8, 100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 45u8, 32u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 112u8, 101u8, 111u8, 112u8, 108u8,
101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 97u8, 99u8, 116u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 109u8, 1u8, 42u8, 32u8, 96u8, 118u8, 97u8,
108u8, 117u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 96u8, 32u8, 45u8, 32u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 97u8, 102u8, 116u8,
101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 104u8, 111u8,
117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 100u8,
32u8, 40u8, 110u8, 111u8, 116u8, 32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8,
41u8, 180u8, 42u8, 32u8, 96u8, 108u8, 101u8, 103u8, 115u8, 96u8, 32u8, 45u8, 32u8, 76u8, 101u8,
103u8, 115u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 46u8, 109u8, 1u8, 42u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8,
108u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8, 116u8,
111u8, 32u8, 117u8, 115u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 0u8,
52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 72u8, 97u8,
102u8, 102u8, 105u8, 114u8, 109u8, 95u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 12u8, 1u8, 8u8, 105u8, 100u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 1u8, 40u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 228u8, 1u8, 64u8, 86u8, 101u8, 99u8,
60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 62u8, 0u8, 1u8,
56u8, 109u8, 97u8, 120u8, 95u8, 108u8, 101u8, 103u8, 115u8, 95u8, 99u8, 111u8, 117u8, 110u8,
116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 5u8, 36u8, 188u8, 80u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8,
110u8, 103u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 136u8,
42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 102u8,
102u8, 105u8, 114u8, 109u8, 46u8, 105u8, 1u8, 42u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
111u8, 108u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8,
116u8, 111u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 248u8,
42u8, 32u8, 96u8, 109u8, 97u8, 120u8, 95u8, 108u8, 101u8, 103u8, 115u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 96u8, 32u8, 45u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 108u8, 101u8, 103u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 110u8, 101u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8,
109u8, 101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 80u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 95u8, 97u8, 102u8,
102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 12u8, 1u8, 8u8, 105u8, 100u8,
177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
73u8, 100u8, 0u8, 1u8, 40u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
115u8, 228u8, 1u8, 64u8, 86u8, 101u8, 99u8, 60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 73u8, 100u8, 62u8, 0u8, 1u8, 56u8, 109u8, 97u8, 120u8, 95u8, 108u8, 101u8, 103u8,
115u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 6u8,
36u8, 192u8, 87u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 32u8, 97u8, 110u8, 32u8, 97u8,
102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 236u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8,
73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 102u8, 102u8, 105u8,
114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 103u8, 101u8, 116u8, 32u8, 119u8, 105u8,
116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 110u8, 46u8, 93u8, 1u8, 42u8, 32u8, 96u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 111u8, 108u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 119u8, 97u8, 110u8, 116u8,
115u8, 32u8, 116u8, 111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 100u8, 114u8, 97u8, 119u8, 32u8,
97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 1u8, 1u8, 42u8,
32u8, 96u8, 109u8, 97u8, 120u8, 95u8, 108u8, 101u8, 103u8, 115u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 96u8, 32u8, 45u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 108u8, 101u8, 103u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 110u8, 101u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 117u8, 110u8, 45u8, 97u8, 102u8, 102u8,
105u8, 114u8, 109u8, 101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 72u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 95u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 12u8, 1u8, 8u8, 105u8, 100u8,
177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
73u8, 100u8, 0u8, 1u8, 36u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8,
1u8, 44u8, 110u8, 117u8, 109u8, 95u8, 111u8, 102u8, 95u8, 108u8, 101u8, 103u8, 115u8, 16u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 7u8, 36u8, 128u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 115u8,
32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 136u8, 42u8, 32u8, 96u8, 105u8,
100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8,
116u8, 46u8, 208u8, 42u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 208u8,
42u8, 32u8, 96u8, 110u8, 117u8, 109u8, 95u8, 111u8, 102u8, 95u8, 108u8, 101u8, 103u8, 115u8,
96u8, 32u8, 45u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 108u8,
101u8, 103u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 80u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8,
95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 115u8,
16u8, 1u8, 8u8, 105u8, 100u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 1u8, 60u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 95u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 205u8, 7u8, 1u8, 220u8, 86u8,
101u8, 99u8, 60u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 68u8, 101u8, 116u8, 97u8,
105u8, 108u8, 115u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 44u8, 32u8, 84u8, 58u8, 58u8, 79u8, 102u8, 102u8, 67u8, 104u8, 97u8, 105u8, 110u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 62u8, 62u8, 0u8, 1u8, 40u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 228u8, 1u8, 64u8, 86u8, 101u8, 99u8,
60u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 62u8, 0u8, 1u8,
56u8, 109u8, 97u8, 120u8, 95u8, 108u8, 101u8, 103u8, 115u8, 95u8, 99u8, 111u8, 117u8, 110u8,
116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 8u8, 48u8, 204u8, 65u8, 99u8, 99u8, 101u8, 112u8,
116u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8,
32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8,
105u8, 112u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 124u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 105u8, 100u8, 46u8, 168u8, 42u8, 32u8, 96u8, 108u8, 101u8, 103u8, 95u8, 105u8,
100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 108u8, 101u8, 103u8,
32u8, 105u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8,
99u8, 101u8, 105u8, 112u8, 116u8, 212u8, 42u8, 32u8, 96u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 95u8, 117u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 32u8, 73u8, 68u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8,
114u8, 46u8, 140u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 96u8, 32u8, 45u8,
32u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 46u8, 132u8, 42u8, 32u8, 96u8, 115u8,
105u8, 103u8, 110u8, 101u8, 100u8, 95u8, 100u8, 97u8, 116u8, 97u8, 96u8, 32u8, 45u8, 32u8, 83u8,
105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 46u8,
121u8, 1u8, 42u8, 32u8, 96u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
115u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8,
100u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 115u8, 32u8, 97u8,
110u8, 100u8, 32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8,
101u8, 112u8, 116u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 116u8, 104u8, 0u8, 52u8, 35u8, 32u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 52u8, 99u8, 108u8, 97u8, 105u8,
109u8, 95u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 8u8, 1u8, 8u8, 105u8, 100u8, 177u8,
3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8,
100u8, 0u8, 1u8, 60u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 100u8, 101u8, 116u8,
97u8, 105u8, 108u8, 115u8, 209u8, 7u8, 1u8, 200u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8,
68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 84u8, 58u8, 58u8, 79u8, 102u8, 102u8, 67u8, 104u8,
97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 62u8, 0u8, 9u8,
44u8, 96u8, 67u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8,
65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 188u8, 42u8, 32u8, 96u8, 105u8,
100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 100u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 46u8,
168u8, 42u8, 32u8, 96u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8,
97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 108u8, 101u8, 103u8, 32u8, 105u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8,
212u8, 42u8, 32u8, 96u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8,
100u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 73u8, 68u8,
32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 140u8, 42u8, 32u8,
96u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 46u8, 132u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 101u8,
100u8, 95u8, 100u8, 97u8, 116u8, 97u8, 96u8, 32u8, 45u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8,
100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 60u8, 117u8, 110u8, 99u8, 108u8, 97u8,
105u8, 109u8, 95u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 8u8, 1u8, 56u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 177u8, 3u8,
1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8,
100u8, 0u8, 1u8, 24u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 193u8, 3u8, 1u8, 20u8, 76u8,
101u8, 103u8, 73u8, 100u8, 0u8, 10u8, 32u8, 152u8, 85u8, 110u8, 99u8, 108u8, 97u8, 105u8, 109u8,
115u8, 32u8, 97u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8,
32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 236u8, 42u8, 32u8, 96u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8,
105u8, 112u8, 116u8, 46u8, 168u8, 42u8, 32u8, 96u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8,
96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 108u8, 101u8, 103u8, 32u8,
105u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 76u8, 115u8, 101u8, 116u8, 95u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8,
102u8, 105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 8u8, 1u8, 24u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8,
28u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8,
108u8, 0u8, 11u8, 32u8, 192u8, 69u8, 110u8, 97u8, 98u8, 108u8, 101u8, 115u8, 32u8, 111u8, 114u8,
32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 118u8, 101u8, 110u8, 117u8,
101u8, 32u8, 102u8, 105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 32u8, 102u8, 111u8,
114u8, 32u8, 97u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 180u8, 42u8, 32u8, 96u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8,
110u8, 32u8, 113u8, 117u8, 101u8, 115u8, 116u8, 105u8, 111u8, 110u8, 46u8, 25u8, 1u8, 42u8, 32u8,
96u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 96u8, 32u8, 45u8, 32u8, 66u8, 111u8, 111u8,
108u8, 101u8, 97u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 100u8, 101u8, 99u8, 105u8,
100u8, 101u8, 115u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 108u8,
116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
98u8, 101u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8,
65u8, 115u8, 115u8, 101u8, 116u8, 48u8, 97u8, 108u8, 108u8, 111u8, 119u8, 95u8, 118u8, 101u8,
110u8, 117u8, 101u8, 115u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8,
24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 24u8, 118u8, 101u8, 110u8, 117u8, 101u8,
115u8, 201u8, 3u8, 1u8, 48u8, 86u8, 101u8, 99u8, 60u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8,
100u8, 62u8, 0u8, 12u8, 28u8, 13u8, 1u8, 65u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 97u8,
100u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 118u8, 101u8, 110u8, 117u8,
101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 105u8, 110u8,
118u8, 111u8, 108u8, 118u8, 105u8, 110u8, 103u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 46u8, 0u8, 180u8, 42u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
32u8, 45u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 113u8, 117u8, 101u8,
115u8, 116u8, 105u8, 111u8, 110u8, 46u8, 125u8, 1u8, 42u8, 32u8, 96u8, 118u8, 101u8, 110u8,
117u8, 101u8, 115u8, 96u8, 32u8, 45u8, 32u8, 65u8, 114u8, 114u8, 97u8, 121u8, 32u8, 111u8, 102u8,
32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8,
114u8, 101u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 113u8, 117u8, 101u8, 115u8, 116u8,
105u8, 111u8, 110u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 60u8, 100u8,
105u8, 115u8, 97u8, 108u8, 108u8, 111u8, 119u8, 95u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8,
8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 0u8, 1u8, 24u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 201u8, 3u8, 1u8,
48u8, 86u8, 101u8, 99u8, 60u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8, 62u8, 0u8, 13u8,
28u8, 105u8, 1u8, 82u8, 101u8, 118u8, 111u8, 107u8, 101u8, 115u8, 32u8, 112u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
116u8, 111u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8,
99u8, 114u8, 101u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 105u8, 110u8, 118u8, 111u8, 108u8, 118u8,
105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 117u8, 108u8,
97u8, 114u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 0u8, 180u8, 42u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 45u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8,
105u8, 110u8, 32u8, 113u8, 117u8, 101u8, 115u8, 116u8, 105u8, 111u8, 110u8, 46u8, 165u8, 1u8,
42u8, 32u8, 96u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 96u8, 32u8, 45u8, 32u8, 65u8, 114u8,
114u8, 97u8, 121u8, 32u8, 111u8, 102u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 32u8, 108u8, 111u8,
110u8, 103u8, 101u8, 114u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 113u8, 117u8, 101u8,
115u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
92u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 95u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8,
116u8, 95u8, 118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 8u8, 1u8, 44u8, 114u8, 101u8,
99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8,
0u8, 1u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8, 21u8, 1u8, 1u8, 16u8,
98u8, 111u8, 111u8, 108u8, 0u8, 14u8, 20u8, 252u8, 77u8, 97u8, 114u8, 107u8, 115u8, 32u8, 97u8,
32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 97u8, 115u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 32u8, 111u8,
114u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8,
193u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 105u8, 115u8,
115u8, 117u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 32u8, 111u8, 114u8, 32u8, 114u8, 101u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8,
46u8, 0u8, 172u8, 42u8, 32u8, 96u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8,
105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 32u8, 73u8, 68u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8,
116u8, 46u8, 172u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8, 121u8,
96u8, 32u8, 45u8, 32u8, 78u8, 101u8, 119u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 105u8, 116u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 46u8, 116u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 95u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 95u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 8u8, 1u8, 8u8, 105u8, 100u8, 177u8, 3u8, 1u8, 52u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 1u8, 44u8,
95u8, 108u8, 101u8, 103u8, 115u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8,
51u8, 50u8, 0u8, 15u8, 4u8, 129u8, 1u8, 82u8, 111u8, 111u8, 116u8, 32u8, 99u8, 97u8, 108u8,
108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 44u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8,
110u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8,
111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 97u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8,
109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 46u8, 88u8, 114u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8,
95u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 4u8, 1u8, 8u8,
105u8, 100u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 73u8, 100u8, 0u8, 16u8, 40u8, 132u8, 82u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 115u8, 32u8, 97u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 44u8,
35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 180u8, 42u8, 32u8,
96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 100u8, 32u8,
116u8, 111u8, 32u8, 114u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 46u8,
0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 0u8, 32u8,
35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 61u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 78u8, 111u8, 116u8, 70u8, 97u8,
105u8, 108u8, 101u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 32u8, 97u8,
32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 115u8, 116u8, 97u8, 116u8, 101u8, 32u8,
111u8, 114u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8,
98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8,
99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8,
32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8,
98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8,
97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 205u8, 7u8, 0u8,
0u8, 2u8, 209u8, 7u8, 0u8, 209u8, 7u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 56u8, 82u8, 101u8, 99u8,
101u8, 105u8, 112u8, 116u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 8u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 68u8, 79u8, 102u8, 102u8, 67u8, 104u8,
97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 1u8, 213u8, 7u8,
0u8, 20u8, 1u8, 44u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8, 100u8,
32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 24u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8,
193u8, 3u8, 1u8, 20u8, 76u8, 101u8, 103u8, 73u8, 100u8, 0u8, 1u8, 24u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
0u8, 1u8, 36u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 213u8, 7u8, 1u8,
68u8, 79u8, 102u8, 102u8, 67u8, 104u8, 97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8,
116u8, 117u8, 114u8, 101u8, 0u8, 1u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
197u8, 3u8, 1u8, 60u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 0u8, 0u8, 213u8, 7u8, 8u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 56u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 1u8, 12u8, 28u8, 69u8, 100u8, 50u8, 53u8, 53u8,
49u8, 57u8, 4u8, 0u8, 17u8, 7u8, 1u8, 72u8, 101u8, 100u8, 50u8, 53u8, 53u8, 49u8, 57u8, 58u8,
58u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 0u8, 28u8, 83u8,
114u8, 50u8, 53u8, 53u8, 49u8, 57u8, 4u8, 0u8, 65u8, 7u8, 1u8, 72u8, 115u8, 114u8, 50u8, 53u8,
53u8, 49u8, 57u8, 58u8, 58u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8,
1u8, 0u8, 20u8, 69u8, 99u8, 100u8, 115u8, 97u8, 4u8, 0u8, 217u8, 7u8, 1u8, 64u8, 101u8, 99u8,
100u8, 115u8, 97u8, 58u8, 58u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8,
2u8, 0u8, 0u8, 217u8, 7u8, 12u8, 28u8, 115u8, 112u8, 95u8, 99u8, 111u8, 114u8, 101u8, 20u8,
101u8, 99u8, 100u8, 115u8, 97u8, 36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8,
101u8, 0u8, 0u8, 4u8, 0u8, 89u8, 7u8, 1u8, 32u8, 91u8, 117u8, 56u8, 59u8, 32u8, 54u8, 53u8, 93u8,
0u8, 0u8, 221u8, 7u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8,
97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8,
84u8, 0u8, 1u8, 16u8, 88u8, 115u8, 101u8, 116u8, 95u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8,
95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 116u8, 115u8, 8u8, 1u8, 20u8,
97u8, 115u8, 115u8, 101u8, 116u8, 209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8,
99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 40u8, 115u8, 116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8,
101u8, 115u8, 225u8, 7u8, 1u8, 72u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8,
83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 0u8, 60u8, 128u8, 83u8, 101u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 115u8, 116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8,
115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
37u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8,
97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8,
97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 46u8, 208u8, 45u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 45u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 111u8, 110u8, 46u8, 9u8, 1u8,
45u8, 32u8, 96u8, 115u8, 116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 115u8, 96u8, 32u8,
45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 116u8, 97u8, 116u8,
32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 112u8, 108u8,
97u8, 99u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8,
110u8, 103u8, 32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 29u8, 1u8, 45u8, 32u8, 96u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8,
112u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8,
96u8, 32u8, 45u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 115u8, 116u8,
97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 115u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 97u8, 115u8,
115u8, 101u8, 116u8, 96u8, 46u8, 133u8, 1u8, 45u8, 32u8, 96u8, 67u8, 97u8, 110u8, 110u8, 111u8,
116u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8,
101u8, 73u8, 110u8, 85u8, 115u8, 101u8, 96u8, 32u8, 45u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8,
111u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 32u8, 115u8, 116u8,
97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8,
115u8, 32u8, 105u8, 110u8, 32u8, 117u8, 115u8, 101u8, 32u8, 98u8, 121u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8,
111u8, 110u8, 115u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8,
97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 45u8, 32u8, 65u8, 103u8, 101u8, 110u8,
116u8, 28u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 96u8, 98u8, 97u8, 116u8, 99u8, 104u8,
95u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8,
115u8, 116u8, 97u8, 116u8, 115u8, 12u8, 1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 209u8, 3u8,
1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 36u8,
115u8, 116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 217u8, 3u8, 1u8, 32u8, 83u8, 116u8,
97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8, 1u8, 24u8, 118u8, 97u8, 108u8, 117u8, 101u8, 115u8,
229u8, 7u8, 1u8, 80u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 83u8, 116u8,
97u8, 116u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 62u8, 0u8, 1u8, 60u8, 236u8, 65u8, 108u8,
108u8, 111u8, 119u8, 32u8, 97u8, 32u8, 116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 32u8,
105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 105u8, 116u8,
47u8, 114u8, 101u8, 115u8, 121u8, 110u8, 99u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
47u8, 99u8, 111u8, 109u8, 112u8, 97u8, 110u8, 121u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 37u8,
1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 97u8,
32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8,
97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8,
32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8,
96u8, 46u8, 208u8, 45u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 45u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 111u8, 110u8, 46u8, 144u8, 45u8,
32u8, 96u8, 115u8, 116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8, 32u8, 45u8, 32u8,
115u8, 116u8, 97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 116u8, 111u8, 32u8, 117u8,
112u8, 100u8, 97u8, 116u8, 101u8, 46u8, 176u8, 45u8, 32u8, 96u8, 118u8, 97u8, 108u8, 117u8,
101u8, 115u8, 96u8, 32u8, 45u8, 32u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8, 118u8,
97u8, 108u8, 117u8, 101u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 115u8, 116u8, 97u8,
116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 5u8, 1u8, 45u8, 32u8, 96u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8,
101u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 96u8, 32u8, 45u8, 32u8, 96u8, 115u8,
116u8, 97u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 33u8, 1u8,
45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8,
100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8,
96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 28u8, 45u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 28u8, 45u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 116u8, 115u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 95u8,
116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8,
105u8, 97u8, 110u8, 99u8, 101u8, 8u8, 1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 209u8, 3u8,
1u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 76u8,
116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8, 111u8, 110u8, 100u8, 105u8,
116u8, 105u8, 111u8, 110u8, 115u8, 233u8, 7u8, 1u8, 108u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8,
101u8, 116u8, 60u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 2u8, 60u8, 144u8, 83u8, 101u8, 116u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 117u8,
108u8, 101u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 37u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8,
45u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 97u8, 115u8,
115u8, 101u8, 116u8, 96u8, 46u8, 208u8, 45u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8,
32u8, 45u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8,
111u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 111u8, 110u8, 46u8,
97u8, 1u8, 45u8, 32u8, 96u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8,
111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 96u8, 32u8, 45u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8,
32u8, 114u8, 101u8, 112u8, 108u8, 97u8, 99u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8,
105u8, 111u8, 110u8, 115u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
85u8, 1u8, 45u8, 32u8, 96u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 76u8, 105u8, 109u8, 105u8, 116u8, 82u8, 101u8,
97u8, 99u8, 104u8, 101u8, 100u8, 96u8, 32u8, 45u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8,
110u8, 121u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 116u8, 111u8, 110u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8,
46u8, 145u8, 1u8, 45u8, 32u8, 96u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 77u8,
105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 96u8, 32u8, 45u8, 32u8, 97u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8,
110u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 115u8, 32u8, 97u8, 32u8, 115u8,
116u8, 97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 97u8,
115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 45u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8,
28u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 76u8, 115u8, 101u8, 116u8, 95u8, 101u8,
110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 95u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8,
12u8, 1u8, 36u8, 105u8, 115u8, 95u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 21u8, 1u8, 1u8,
16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 40u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 95u8,
107u8, 101u8, 121u8, 9u8, 4u8, 1u8, 104u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8, 109u8, 112u8,
116u8, 75u8, 101u8, 121u8, 0u8, 1u8, 32u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8,
115u8, 237u8, 7u8, 1u8, 68u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8, 83u8,
99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 62u8, 0u8, 3u8, 56u8, 17u8, 1u8, 83u8, 101u8, 116u8,
47u8, 117u8, 110u8, 115u8, 101u8, 116u8, 32u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8,
115u8, 32u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 39u8, 115u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 32u8, 114u8, 117u8, 108u8, 101u8, 115u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 81u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 45u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8,
99u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 96u8, 101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 95u8, 107u8, 101u8, 121u8,
46u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 224u8, 45u8, 32u8, 96u8, 105u8, 115u8, 95u8,
101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 96u8, 32u8, 45u8, 32u8, 101u8, 110u8, 97u8, 98u8,
108u8, 101u8, 47u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 32u8, 101u8, 120u8, 101u8,
109u8, 112u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 101u8, 110u8,
116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 96u8, 46u8, 29u8, 1u8, 45u8, 32u8, 96u8, 101u8, 120u8,
101u8, 109u8, 112u8, 116u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 115u8, 116u8,
97u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8,
109u8, 112u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 101u8, 110u8, 116u8, 105u8, 116u8,
105u8, 101u8, 115u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 46u8, 236u8, 45u8, 32u8, 96u8,
101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 96u8, 32u8, 45u8, 32u8, 116u8, 104u8,
101u8, 32u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8,
115u8, 101u8, 116u8, 47u8, 117u8, 110u8, 115u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
101u8, 120u8, 101u8, 109u8, 112u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 46u8,
0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 33u8, 1u8, 45u8, 32u8, 96u8,
85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8,
101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 45u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 0u8, 52u8,
35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8,
45u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 28u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 225u8, 7u8, 4u8, 32u8, 66u8, 84u8, 114u8,
101u8, 101u8, 83u8, 101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 217u8, 3u8, 0u8, 4u8, 0u8, 213u8, 3u8,
0u8, 0u8, 0u8, 229u8, 7u8, 4u8, 32u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 4u8,
4u8, 84u8, 1u8, 237u8, 3u8, 0u8, 4u8, 0u8, 233u8, 3u8, 0u8, 0u8, 0u8, 233u8, 7u8, 4u8, 32u8,
66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 5u8, 4u8, 0u8, 4u8,
0u8, 1u8, 4u8, 0u8, 0u8, 0u8, 237u8, 7u8, 4u8, 32u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8,
101u8, 116u8, 4u8, 4u8, 84u8, 1u8, 120u8, 0u8, 4u8, 0u8, 33u8, 1u8, 0u8, 0u8, 0u8, 241u8, 7u8,
8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 16u8, 67u8, 97u8,
108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 68u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8,
102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 40u8, 1u8, 72u8, 111u8,
102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 73u8, 100u8, 0u8, 1u8, 56u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8,
97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 68u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 52u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8,
95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
0u8, 1u8, 20u8, 116u8, 105u8, 101u8, 114u8, 115u8, 245u8, 7u8, 1u8, 56u8, 86u8, 101u8, 99u8,
60u8, 80u8, 114u8, 105u8, 99u8, 101u8, 84u8, 105u8, 101u8, 114u8, 62u8, 0u8, 1u8, 32u8, 118u8,
101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8,
101u8, 73u8, 100u8, 0u8, 1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8, 240u8, 1u8, 68u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8,
116u8, 62u8, 0u8, 1u8, 12u8, 101u8, 110u8, 100u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8,
72u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 95u8, 105u8, 110u8, 118u8, 101u8, 115u8,
116u8, 109u8, 101u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
0u8, 1u8, 60u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 95u8, 110u8,
97u8, 109u8, 101u8, 25u8, 4u8, 1u8, 56u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 78u8, 97u8, 109u8, 101u8, 0u8, 0u8, 64u8, 96u8, 67u8, 114u8, 101u8, 97u8, 116u8,
101u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 46u8, 0u8, 13u8, 1u8, 42u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8,
114u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 99u8,
111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8,
96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 46u8, 164u8, 42u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8,
103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8,
116u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 102u8, 101u8, 114u8, 101u8,
100u8, 46u8, 5u8, 1u8, 42u8, 32u8, 96u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8, 95u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 45u8, 32u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 114u8, 97u8, 105u8,
115u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 46u8, 53u8, 1u8, 42u8,
32u8, 96u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 98u8, 101u8, 105u8, 110u8,
103u8, 32u8, 101u8, 120u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 32u8, 102u8, 111u8,
114u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8,
115u8, 101u8, 116u8, 96u8, 32u8, 111u8, 110u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8,
109u8, 101u8, 110u8, 116u8, 46u8, 232u8, 42u8, 32u8, 96u8, 116u8, 105u8, 101u8, 114u8, 115u8,
96u8, 32u8, 45u8, 32u8, 80u8, 114u8, 105u8, 99u8, 101u8, 32u8, 116u8, 105u8, 101u8, 114u8, 115u8,
32u8, 116u8, 111u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 32u8, 105u8, 110u8, 118u8,
101u8, 115u8, 116u8, 111u8, 114u8, 115u8, 32u8, 111u8, 110u8, 32u8, 105u8, 110u8, 118u8, 101u8,
115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 46u8, 168u8, 42u8, 32u8, 96u8, 118u8, 101u8, 110u8,
117u8, 101u8, 95u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 86u8, 101u8, 110u8, 117u8, 101u8, 32u8,
116u8, 111u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 32u8, 115u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 46u8, 77u8, 1u8, 42u8, 32u8, 96u8, 115u8, 116u8, 97u8,
114u8, 116u8, 96u8, 32u8, 45u8, 32u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8,
32u8, 105u8, 102u8, 32u8, 96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8,
102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8,
97u8, 116u8, 101u8, 108u8, 121u8, 46u8, 41u8, 1u8, 42u8, 32u8, 96u8, 101u8, 110u8, 100u8, 96u8,
32u8, 45u8, 32u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8,
101u8, 110u8, 100u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 105u8, 102u8, 32u8, 96u8,
78u8, 111u8, 110u8, 101u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 110u8, 101u8,
118u8, 101u8, 114u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 205u8, 1u8, 42u8,
32u8, 96u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 95u8, 105u8, 110u8, 118u8, 101u8,
115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 96u8, 32u8, 45u8, 32u8, 77u8, 105u8, 110u8, 105u8,
109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
96u8, 114u8, 97u8, 105u8, 115u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8,
96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 118u8, 101u8,
115u8, 116u8, 111u8, 114u8, 32u8, 110u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 111u8, 32u8,
115u8, 112u8, 101u8, 110u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8,
116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 114u8, 97u8, 105u8, 115u8,
101u8, 46u8, 240u8, 42u8, 32u8, 96u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 95u8, 110u8, 97u8, 109u8, 101u8, 96u8, 32u8, 45u8, 32u8, 70u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 110u8, 97u8, 109u8, 101u8, 44u8, 32u8, 111u8,
110u8, 108u8, 121u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 85u8, 73u8, 115u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 24u8, 105u8,
110u8, 118u8, 101u8, 115u8, 116u8, 28u8, 1u8, 80u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8,
109u8, 101u8, 110u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 73u8, 100u8, 0u8,
1u8, 68u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 212u8, 1u8, 44u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 73u8, 100u8, 0u8, 1u8, 56u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8,
110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 1u8, 60u8, 112u8, 117u8, 114u8, 99u8,
104u8, 97u8, 115u8, 101u8, 95u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 109u8, 97u8, 120u8, 95u8, 112u8, 114u8,
105u8, 99u8, 101u8, 253u8, 3u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 62u8, 0u8, 1u8, 28u8, 114u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 253u8, 7u8, 1u8, 232u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 82u8, 101u8,
99u8, 101u8, 105u8, 112u8, 116u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 60u8, 84u8,
58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 84u8, 58u8,
58u8, 79u8, 102u8, 102u8, 67u8, 104u8, 97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8,
116u8, 117u8, 114u8, 101u8, 62u8, 62u8, 0u8, 1u8, 48u8, 92u8, 73u8, 110u8, 118u8, 101u8, 115u8,
116u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8,
115u8, 101u8, 114u8, 46u8, 0u8, 65u8, 1u8, 42u8, 32u8, 96u8, 105u8, 110u8, 118u8, 101u8, 115u8,
116u8, 109u8, 101u8, 110u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 96u8, 32u8, 45u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8,
103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
98u8, 101u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 32u8, 105u8,
110u8, 46u8, 1u8, 1u8, 42u8, 32u8, 96u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8,
112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 96u8, 32u8, 45u8, 32u8, 80u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 102u8, 117u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8,
105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 46u8, 160u8, 42u8, 32u8,
96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 105u8,
110u8, 118u8, 101u8, 115u8, 116u8, 32u8, 105u8, 110u8, 46u8, 172u8, 42u8, 32u8, 96u8, 105u8,
100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8,
105u8, 110u8, 118u8, 101u8, 115u8, 116u8, 32u8, 105u8, 110u8, 46u8, 244u8, 42u8, 32u8, 96u8,
112u8, 117u8, 114u8, 99u8, 104u8, 97u8, 115u8, 101u8, 95u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 96u8, 32u8, 116u8, 111u8, 32u8, 112u8, 117u8, 114u8, 99u8, 104u8, 97u8, 115u8, 101u8,
46u8, 185u8, 1u8, 42u8, 32u8, 96u8, 109u8, 97u8, 120u8, 95u8, 112u8, 114u8, 105u8, 99u8, 101u8,
96u8, 32u8, 45u8, 32u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 112u8, 114u8, 105u8,
99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 112u8, 101u8, 114u8, 32u8,
117u8, 110u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8,
105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 44u8, 32u8, 73u8, 102u8, 32u8,
96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 97u8, 114u8,
101u8, 32u8, 110u8, 111u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 97u8, 105u8, 110u8,
116u8, 115u8, 32u8, 111u8, 110u8, 32u8, 112u8, 114u8, 105u8, 99u8, 101u8, 46u8, 105u8, 1u8, 42u8,
32u8, 96u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 96u8, 32u8, 45u8, 32u8, 79u8, 102u8,
102u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8,
116u8, 32u8, 116u8, 111u8, 32u8, 117u8, 115u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8,
97u8, 100u8, 32u8, 111u8, 102u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 110u8, 32u8, 96u8, 102u8, 117u8, 110u8,
100u8, 105u8, 110u8, 103u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 44u8, 42u8, 32u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8,
68u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 8u8, 1u8, 56u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8,
103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 2u8, 28u8, 80u8, 70u8, 114u8, 101u8, 101u8, 122u8,
101u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8,
46u8, 0u8, 148u8, 42u8, 32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8,
97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8,
116u8, 111u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 46u8, 160u8, 42u8, 32u8, 96u8,
105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8,
32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8,
109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8,
101u8, 116u8, 76u8, 117u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 95u8, 102u8, 117u8,
110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 8u8, 1u8, 56u8, 111u8, 102u8, 102u8,
101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 21u8, 4u8, 1u8, 48u8, 70u8,
117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8, 3u8, 28u8, 88u8,
85u8, 110u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8,
100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 46u8, 0u8, 156u8, 42u8, 32u8, 96u8, 111u8, 102u8,
102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8,
45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 117u8, 110u8, 102u8,
114u8, 101u8, 101u8, 122u8, 101u8, 46u8, 168u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8,
32u8, 73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8,
100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 117u8, 110u8, 102u8,
114u8, 101u8, 101u8, 122u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
96u8, 109u8, 111u8, 100u8, 105u8, 102u8, 121u8, 95u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 95u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 16u8, 1u8, 56u8,
111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 21u8, 4u8,
1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 73u8, 100u8, 0u8,
1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 1u8, 36u8, 84u8, 58u8, 58u8, 77u8, 111u8,
109u8, 101u8, 110u8, 116u8, 0u8, 1u8, 12u8, 101u8, 110u8, 100u8, 240u8, 1u8, 68u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8, 58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8,
62u8, 0u8, 4u8, 36u8, 180u8, 77u8, 111u8, 100u8, 105u8, 102u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 32u8, 97u8,
32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 105u8, 115u8,
32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 0u8, 148u8, 42u8, 32u8, 96u8, 111u8, 102u8, 102u8,
101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 96u8, 32u8, 45u8,
32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 109u8, 111u8, 100u8, 105u8,
102u8, 121u8, 46u8, 160u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8, 73u8, 68u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 109u8, 111u8, 100u8, 105u8, 102u8, 121u8,
46u8, 160u8, 42u8, 32u8, 96u8, 115u8, 116u8, 97u8, 114u8, 116u8, 96u8, 32u8, 45u8, 32u8, 78u8,
101u8, 119u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 46u8, 184u8,
42u8, 32u8, 96u8, 101u8, 110u8, 100u8, 96u8, 32u8, 45u8, 32u8, 78u8, 101u8, 119u8, 32u8, 101u8,
110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 109u8, 111u8, 100u8, 105u8,
102u8, 121u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 16u8, 115u8, 116u8,
111u8, 112u8, 8u8, 1u8, 56u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8,
115u8, 115u8, 101u8, 116u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8,
8u8, 105u8, 100u8, 21u8, 4u8, 1u8, 48u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 73u8, 100u8, 0u8, 5u8, 28u8, 72u8, 83u8, 116u8, 111u8, 112u8, 32u8, 97u8, 32u8,
102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 46u8, 0u8, 140u8, 42u8,
32u8, 96u8, 111u8, 102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 95u8, 97u8, 115u8, 115u8,
101u8, 116u8, 96u8, 32u8, 45u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8,
115u8, 116u8, 111u8, 112u8, 46u8, 152u8, 42u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 45u8, 32u8,
73u8, 68u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 115u8, 116u8, 111u8, 112u8,
46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8,
0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8,
109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8,
108u8, 101u8, 46u8, 245u8, 7u8, 0u8, 0u8, 2u8, 249u8, 7u8, 0u8, 249u8, 7u8, 8u8, 40u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 36u8, 80u8, 114u8, 105u8, 99u8,
101u8, 84u8, 105u8, 101u8, 114u8, 0u8, 0u8, 8u8, 1u8, 20u8, 116u8, 111u8, 116u8, 97u8, 108u8,
24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 20u8, 112u8, 114u8,
105u8, 99u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8,
253u8, 7u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 209u8, 7u8,
1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8,
0u8, 209u8, 7u8, 0u8, 0u8, 1u8, 0u8, 0u8, 1u8, 8u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 16u8, 67u8, 97u8, 108u8,
108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 48u8, 100u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8,
101u8, 109u8, 101u8, 110u8, 116u8, 4u8, 1u8, 52u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8,
105u8, 97u8, 114u8, 105u8, 101u8, 115u8, 5u8, 8u8, 1u8, 120u8, 86u8, 101u8, 99u8, 60u8, 66u8,
101u8, 110u8, 101u8, 102u8, 105u8, 99u8, 105u8, 97u8, 114u8, 121u8, 60u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 62u8, 62u8, 0u8, 0u8, 28u8, 81u8, 1u8,
73u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8,
114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 32u8, 116u8, 111u8, 32u8, 101u8, 97u8, 99u8,
104u8, 32u8, 111u8, 102u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8, 105u8, 97u8,
114u8, 105u8, 101u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
68u8, 102u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 109u8, 46u8, 0u8, 28u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 196u8, 42u8,
32u8, 96u8, 66u8, 97u8, 100u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 58u8, 32u8, 79u8,
110u8, 108u8, 121u8, 32u8, 114u8, 111u8, 111u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 93u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8,
102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
96u8, 58u8, 32u8, 73u8, 102u8, 32u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 116u8, 111u8, 32u8, 99u8, 111u8,
118u8, 101u8, 114u8, 32u8, 97u8, 108u8, 108u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8,
99u8, 105u8, 97u8, 114u8, 105u8, 101u8, 115u8, 46u8, 37u8, 1u8, 42u8, 32u8, 96u8, 73u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 96u8,
58u8, 32u8, 73u8, 102u8, 32u8, 111u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8, 105u8, 97u8, 114u8, 105u8, 101u8,
115u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 52u8, 114u8,
101u8, 105u8, 109u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8, 110u8, 116u8, 4u8, 1u8,
24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 1u8, 12u8, 29u8, 1u8, 73u8, 116u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 110u8, 116u8,
111u8, 32u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 46u8, 0u8, 73u8, 1u8, 79u8,
110u8, 108u8, 121u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8,
105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 109u8, 97u8, 107u8,
101u8, 32u8, 97u8, 32u8, 100u8, 111u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8,
111u8, 32u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 46u8, 12u8, 76u8, 68u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8,
97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8,
117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 5u8, 8u8, 0u8, 0u8, 2u8, 9u8, 8u8, 0u8, 9u8, 8u8, 8u8,
76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 44u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 99u8,
105u8, 97u8, 114u8, 121u8, 4u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8,
0u8, 8u8, 1u8, 8u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8,
28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 13u8, 8u8, 8u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 16u8, 67u8,
97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 20u8, 98u8, 97u8, 116u8, 99u8, 104u8, 4u8,
1u8, 20u8, 99u8, 97u8, 108u8, 108u8, 115u8, 17u8, 8u8, 1u8, 96u8, 86u8, 101u8, 99u8, 60u8, 60u8,
84u8, 32u8, 97u8, 115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8,
97u8, 108u8, 108u8, 62u8, 0u8, 0u8, 72u8, 196u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8,
110u8, 100u8, 101u8, 114u8, 39u8, 115u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8,
0u8, 232u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 101u8, 120u8,
101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8, 32u8, 116u8, 104u8,
101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 102u8, 97u8,
105u8, 108u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 115u8,
116u8, 111u8, 112u8, 46u8, 0u8, 172u8, 77u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 114u8, 111u8, 111u8, 116u8,
32u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8,
101u8, 116u8, 101u8, 114u8, 115u8, 236u8, 45u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 115u8,
96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 32u8, 116u8, 111u8,
32u8, 98u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 160u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 109u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 97u8, 108u8, 108u8, 115u8, 96u8,
46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 46u8, 0u8,
189u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8,
116u8, 117u8, 114u8, 110u8, 32u8, 96u8, 79u8, 107u8, 96u8, 32u8, 105u8, 110u8, 32u8, 97u8, 108u8,
108u8, 32u8, 99u8, 105u8, 114u8, 99u8, 117u8, 109u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8,
115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 112u8, 116u8, 32u8, 97u8, 110u8, 32u8, 117u8, 110u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8,
32u8, 84u8, 111u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 44u8, 32u8, 97u8, 110u8, 49u8,
1u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 32u8, 73u8, 102u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 32u8, 119u8, 97u8, 115u8, 32u8, 105u8, 110u8,
116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8,
110u8, 32u8, 116u8, 104u8, 101u8, 85u8, 1u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 73u8, 110u8,
116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 96u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8,
100u8, 44u8, 32u8, 97u8, 108u8, 111u8, 110u8, 103u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 32u8, 109u8, 97u8, 100u8, 101u8, 77u8, 1u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8, 32u8, 73u8,
102u8, 32u8, 97u8, 108u8, 108u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8, 115u8, 117u8, 99u8,
99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 44u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 67u8, 111u8, 109u8, 112u8,
108u8, 101u8, 116u8, 101u8, 100u8, 96u8, 76u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8,
115u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 48u8, 98u8,
97u8, 116u8, 99u8, 104u8, 95u8, 97u8, 116u8, 111u8, 109u8, 105u8, 99u8, 4u8, 1u8, 20u8, 99u8,
97u8, 108u8, 108u8, 115u8, 17u8, 8u8, 1u8, 96u8, 86u8, 101u8, 99u8, 60u8, 60u8, 84u8, 32u8, 97u8,
115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8,
62u8, 0u8, 1u8, 76u8, 196u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 109u8,
117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8, 100u8, 101u8,
114u8, 39u8, 115u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 21u8, 1u8, 84u8,
104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 101u8, 32u8, 97u8, 108u8, 108u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 44u8, 32u8, 105u8,
110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 44u8, 32u8, 115u8, 116u8, 111u8, 112u8, 112u8,
105u8, 110u8, 103u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8,
115u8, 116u8, 32u8, 102u8, 97u8, 105u8, 108u8, 117u8, 114u8, 101u8, 44u8, 192u8, 105u8, 110u8,
32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 97u8, 116u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 114u8, 111u8, 108u8, 108u8, 101u8, 100u8, 32u8, 98u8,
97u8, 99u8, 107u8, 46u8, 37u8, 1u8, 79u8, 110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 117u8, 114u8,
101u8, 44u8, 32u8, 97u8, 110u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 96u8, 66u8, 97u8,
116u8, 99u8, 104u8, 73u8, 110u8, 116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8,
40u8, 102u8, 97u8, 105u8, 108u8, 117u8, 114u8, 101u8, 95u8, 105u8, 100u8, 120u8, 44u8, 32u8,
101u8, 114u8, 114u8, 111u8, 114u8, 41u8, 96u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8,
111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 0u8, 172u8, 77u8, 97u8, 121u8, 32u8, 98u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 114u8,
111u8, 111u8, 116u8, 32u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8,
100u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8,
114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 236u8, 45u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 115u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
97u8, 109u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 32u8, 35u8, 32u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 160u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8,
117u8, 109u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 115u8, 96u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 46u8, 0u8, 21u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 32u8, 96u8, 79u8, 107u8, 96u8, 32u8, 105u8,
110u8, 32u8, 97u8, 108u8, 108u8, 32u8, 99u8, 105u8, 114u8, 99u8, 117u8, 109u8, 115u8, 116u8,
97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 112u8, 116u8, 32u8, 97u8,
110u8, 32u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 46u8, 244u8, 84u8, 111u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8,
105u8, 110u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8,
115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 44u8,
32u8, 97u8, 110u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8,
101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 228u8, 73u8, 102u8, 32u8, 97u8,
110u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8,
44u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 73u8, 110u8,
116u8, 101u8, 114u8, 114u8, 117u8, 112u8, 116u8, 101u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8,
100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 21u8, 1u8, 73u8, 102u8,
32u8, 97u8, 108u8, 108u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8, 115u8, 117u8, 99u8, 99u8,
101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 44u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 67u8, 111u8, 109u8, 112u8, 108u8,
101u8, 116u8, 101u8, 100u8, 96u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8,
32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 64u8, 98u8, 97u8,
116u8, 99u8, 104u8, 95u8, 111u8, 112u8, 116u8, 105u8, 109u8, 105u8, 115u8, 116u8, 105u8, 99u8,
4u8, 1u8, 20u8, 99u8, 97u8, 108u8, 108u8, 115u8, 17u8, 8u8, 1u8, 96u8, 86u8, 101u8, 99u8, 60u8,
60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 62u8, 58u8, 58u8,
67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 2u8, 84u8, 196u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8,
99u8, 104u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
101u8, 110u8, 100u8, 101u8, 114u8, 39u8, 115u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
46u8, 0u8, 1u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 97u8, 108u8, 108u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 44u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 44u8, 32u8,
105u8, 114u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 111u8,
102u8, 32u8, 102u8, 97u8, 105u8, 108u8, 117u8, 114u8, 101u8, 115u8, 46u8, 9u8, 1u8, 65u8, 110u8,
121u8, 32u8, 102u8, 97u8, 105u8, 108u8, 117u8, 114u8, 101u8, 115u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8,
105u8, 110u8, 32u8, 97u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 79u8, 112u8, 116u8, 105u8,
109u8, 105u8, 115u8, 116u8, 105u8, 99u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 96u8, 32u8,
101u8, 118u8, 101u8, 110u8, 116u8, 46u8, 0u8, 172u8, 77u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 114u8, 111u8,
111u8, 116u8, 32u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8,
32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8,
97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 236u8, 45u8, 32u8, 96u8, 99u8, 97u8, 108u8,
108u8, 115u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 32u8,
116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8,
109u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 46u8, 0u8, 0u8, 32u8, 35u8, 32u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 160u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8,
117u8, 109u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 115u8, 96u8, 46u8, 48u8, 45u8, 32u8, 79u8, 110u8, 101u8, 32u8, 101u8, 118u8, 101u8,
110u8, 116u8, 46u8, 0u8, 21u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 32u8, 96u8, 79u8, 107u8, 96u8, 32u8, 105u8,
110u8, 32u8, 97u8, 108u8, 108u8, 32u8, 99u8, 105u8, 114u8, 99u8, 117u8, 109u8, 115u8, 116u8,
97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 112u8, 116u8, 32u8, 97u8,
110u8, 32u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 46u8, 244u8, 84u8, 111u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8,
105u8, 110u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8,
115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 44u8,
32u8, 97u8, 110u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8,
101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8, 46u8, 248u8, 73u8, 102u8, 32u8, 97u8,
110u8, 121u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8,
44u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8, 104u8, 79u8, 112u8,
116u8, 105u8, 109u8, 105u8, 115u8, 116u8, 105u8, 99u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8,
96u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 101u8, 100u8,
44u8, 252u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 118u8, 101u8, 99u8, 116u8, 111u8,
114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 99u8, 111u8, 117u8,
110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 97u8,
32u8, 118u8, 101u8, 99u8, 116u8, 111u8, 114u8, 40u8, 111u8, 102u8, 32u8, 101u8, 114u8, 114u8,
111u8, 114u8, 115u8, 46u8, 21u8, 1u8, 73u8, 102u8, 32u8, 97u8, 108u8, 108u8, 32u8, 119u8, 101u8,
114u8, 101u8, 32u8, 115u8, 117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 44u8,
32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 66u8, 97u8, 116u8, 99u8,
104u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 116u8, 101u8, 100u8, 96u8, 32u8, 101u8, 118u8,
101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
101u8, 100u8, 46u8, 32u8, 114u8, 101u8, 108u8, 97u8, 121u8, 95u8, 116u8, 120u8, 12u8, 1u8, 24u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 36u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 213u8, 7u8, 1u8, 80u8, 84u8, 58u8, 58u8, 79u8, 102u8, 102u8, 67u8, 104u8,
97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 1u8, 16u8,
99u8, 97u8, 108u8, 108u8, 21u8, 8u8, 1u8, 124u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 67u8,
97u8, 108u8, 108u8, 60u8, 60u8, 84u8, 32u8, 97u8, 115u8, 32u8, 67u8, 111u8, 110u8, 102u8, 105u8,
103u8, 62u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 62u8, 0u8, 3u8, 48u8, 160u8, 82u8, 101u8,
108u8, 97u8, 121u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8,
97u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
97u8, 110u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 0u8, 81u8, 1u8, 82u8, 101u8, 108u8,
97u8, 121u8, 105u8, 110u8, 103u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
99u8, 111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 115u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 98u8, 105u8, 108u8, 105u8, 116u8,
121u8, 32u8, 111u8, 102u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 116u8, 111u8,
32u8, 109u8, 97u8, 107u8, 101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 111u8, 110u8,
32u8, 98u8, 101u8, 104u8, 97u8, 108u8, 102u8, 32u8, 111u8, 102u8, 28u8, 116u8, 97u8, 114u8,
103u8, 101u8, 116u8, 46u8, 0u8, 104u8, 70u8, 101u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8,
114u8, 115u8, 132u8, 45u8, 32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 96u8, 58u8, 32u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 114u8,
101u8, 108u8, 97u8, 121u8, 101u8, 100u8, 232u8, 45u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 96u8, 58u8, 32u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8,
116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 105u8, 110u8, 103u8, 32u8,
116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 108u8, 97u8, 121u8, 192u8, 45u8, 32u8, 96u8, 99u8, 97u8,
108u8, 108u8, 96u8, 58u8, 32u8, 67u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 114u8, 101u8, 108u8, 97u8, 121u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 98u8, 101u8,
104u8, 97u8, 108u8, 102u8, 32u8, 111u8, 102u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8,
0u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8,
118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8,
32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8,
32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8,
100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 17u8, 8u8, 0u8, 0u8, 2u8, 201u8,
5u8, 0u8, 21u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 117u8, 116u8,
105u8, 108u8, 105u8, 116u8, 121u8, 40u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 67u8, 97u8,
108u8, 108u8, 4u8, 4u8, 67u8, 1u8, 201u8, 5u8, 0u8, 8u8, 1u8, 20u8, 110u8, 111u8, 110u8, 99u8,
101u8, 32u8, 1u8, 72u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8,
105u8, 111u8, 110u8, 78u8, 111u8, 110u8, 99u8, 101u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8,
201u8, 5u8, 1u8, 24u8, 66u8, 111u8, 120u8, 60u8, 67u8, 62u8, 0u8, 0u8, 25u8, 8u8, 8u8, 44u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8, 115u8, 101u8, 16u8, 67u8, 97u8, 108u8,
108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 0u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8,
69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8,
115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8,
99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
29u8, 8u8, 8u8, 88u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 101u8, 120u8, 116u8, 101u8,
114u8, 110u8, 97u8, 108u8, 95u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 16u8, 67u8, 97u8,
108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 32u8, 48u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8,
103u8, 114u8, 111u8, 117u8, 112u8, 8u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 20u8, 112u8, 101u8, 114u8,
109u8, 115u8, 172u8, 1u8, 80u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 0u8, 72u8,
228u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 99u8, 117u8, 115u8,
116u8, 111u8, 109u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 103u8, 114u8, 111u8, 117u8,
112u8, 32u8, 40u8, 65u8, 71u8, 41u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
46u8, 0u8, 212u8, 84u8, 104u8, 101u8, 32u8, 65u8, 71u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
104u8, 97u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 98u8, 121u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 46u8, 41u8, 1u8,
84u8, 104u8, 105u8, 115u8, 32u8, 110u8, 101u8, 119u8, 32u8, 65u8, 71u8, 32u8, 105u8, 115u8, 32u8,
116u8, 104u8, 101u8, 110u8, 32u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8,
96u8, 105u8, 100u8, 32u8, 61u8, 32u8, 65u8, 71u8, 73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8,
110u8, 99u8, 101u8, 58u8, 58u8, 103u8, 101u8, 116u8, 40u8, 41u8, 32u8, 43u8, 32u8, 49u8, 96u8,
32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 115u8, 32u8, 96u8, 65u8, 71u8, 73u8, 100u8, 96u8, 44u8,
57u8, 1u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 121u8, 111u8, 117u8, 32u8, 99u8, 97u8, 110u8,
32u8, 117u8, 115u8, 101u8, 32u8, 97u8, 115u8, 32u8, 96u8, 65u8, 103u8, 101u8, 110u8, 116u8, 71u8,
114u8, 111u8, 117u8, 112u8, 58u8, 58u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 40u8, 105u8,
100u8, 41u8, 96u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8,
103u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8,
117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 156u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8,
102u8, 111u8, 114u8, 46u8, 144u8, 45u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8,
65u8, 71u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 104u8, 97u8, 118u8, 101u8, 46u8, 0u8, 32u8,
35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 57u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8,
116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8,
32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8,
105u8, 115u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 104u8, 97u8,
100u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8,
111u8, 114u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8,
108u8, 111u8, 110u8, 103u8, 46u8, 37u8, 1u8, 45u8, 32u8, 96u8, 67u8, 111u8, 117u8, 110u8, 116u8,
101u8, 114u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 96u8, 32u8, 105u8, 102u8,
32u8, 96u8, 65u8, 71u8, 73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 58u8,
58u8, 103u8, 101u8, 116u8, 40u8, 41u8, 32u8, 43u8, 32u8, 49u8, 96u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 32u8, 96u8, 117u8, 51u8, 50u8, 58u8,
58u8, 77u8, 65u8, 88u8, 96u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 84u8, 115u8, 101u8, 116u8, 95u8, 103u8,
114u8, 111u8, 117u8, 112u8, 95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 12u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 8u8, 105u8, 100u8, 17u8, 1u8, 1u8, 16u8, 65u8, 71u8,
73u8, 100u8, 0u8, 1u8, 20u8, 112u8, 101u8, 114u8, 109u8, 115u8, 172u8, 1u8, 80u8, 69u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 60u8, 81u8, 1u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8,
116u8, 111u8, 109u8, 32u8, 65u8, 71u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8,
105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 96u8, 105u8, 100u8, 96u8, 44u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 144u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
65u8, 71u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8, 103u8, 115u8, 32u8, 116u8, 111u8, 46u8,
164u8, 45u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 65u8, 71u8, 32u8, 119u8, 105u8,
116u8, 104u8, 105u8, 110u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8,
148u8, 45u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 116u8, 111u8, 32u8,
117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8,
116u8, 111u8, 109u8, 32u8, 65u8, 71u8, 32u8, 116u8, 111u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 57u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 97u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 46u8, 33u8, 1u8,
45u8, 32u8, 96u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 104u8, 97u8, 100u8, 32u8, 115u8, 111u8,
109u8, 101u8, 32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 111u8, 114u8, 32u8, 108u8,
105u8, 115u8, 116u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8, 108u8, 111u8, 110u8, 103u8,
46u8, 204u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 65u8, 71u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 32u8, 97u8, 32u8,
99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 65u8, 71u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8,
115u8, 115u8, 101u8, 116u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 48u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 97u8, 103u8, 101u8, 110u8, 116u8, 8u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 20u8, 97u8, 103u8, 101u8, 110u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 2u8, 56u8, 156u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 97u8, 103u8,
101u8, 110u8, 116u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8,
110u8, 116u8, 115u8, 168u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 46u8, 128u8, 45u8, 32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 111u8,
102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 111u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 57u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8,
97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 46u8, 216u8, 45u8, 32u8, 96u8, 78u8,
111u8, 116u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 232u8, 45u8, 32u8, 96u8, 82u8, 101u8, 109u8, 111u8,
118u8, 105u8, 110u8, 103u8, 76u8, 97u8, 115u8, 116u8, 70u8, 117u8, 108u8, 108u8, 65u8, 103u8,
101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8,
96u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8,
102u8, 117u8, 108u8, 108u8, 32u8, 111u8, 110u8, 101u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8,
114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 32u8, 97u8, 98u8, 100u8,
105u8, 99u8, 97u8, 116u8, 101u8, 4u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8,
1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 3u8, 44u8, 128u8, 65u8, 98u8, 100u8,
105u8, 99u8, 97u8, 116u8, 101u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 104u8, 105u8,
112u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8,
46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 172u8,
45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 111u8, 102u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 228u8, 45u8, 32u8, 96u8, 78u8, 111u8,
116u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 252u8, 45u8, 32u8, 96u8, 82u8,
101u8, 109u8, 111u8, 118u8, 105u8, 110u8, 103u8, 76u8, 97u8, 115u8, 116u8, 70u8, 117u8, 108u8,
108u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8, 97u8, 103u8, 101u8,
110u8, 116u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 48u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 12u8, 1u8, 24u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8,
20u8, 97u8, 103u8, 101u8, 110u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 20u8, 103u8, 114u8, 111u8, 117u8, 112u8, 13u8, 1u8,
1u8, 40u8, 65u8, 103u8, 101u8, 110u8, 116u8, 71u8, 114u8, 111u8, 117u8, 112u8, 0u8, 4u8, 64u8,
236u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 103u8,
101u8, 110u8, 116u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8,
103u8, 115u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 128u8, 45u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 97u8,
103u8, 101u8, 110u8, 116u8, 96u8, 46u8, 184u8, 45u8, 32u8, 96u8, 97u8, 103u8, 101u8, 110u8,
116u8, 96u8, 32u8, 111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
116u8, 111u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 102u8, 111u8, 114u8, 46u8, 200u8, 45u8, 32u8, 96u8,
103u8, 114u8, 111u8, 117u8, 112u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 97u8,
103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 108u8,
111u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 32u8, 96u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
57u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 97u8, 115u8,
32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 46u8, 204u8, 45u8, 32u8, 96u8, 78u8, 111u8, 83u8,
117u8, 99u8, 104u8, 65u8, 71u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 105u8, 100u8, 96u8, 32u8,
100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 102u8, 121u8, 32u8, 97u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 65u8, 71u8,
46u8, 216u8, 45u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 96u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8, 45u8, 1u8, 45u8,
32u8, 96u8, 82u8, 101u8, 109u8, 111u8, 118u8, 105u8, 110u8, 103u8, 76u8, 97u8, 115u8, 116u8,
70u8, 117u8, 108u8, 108u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 32u8, 96u8,
70u8, 117u8, 108u8, 108u8, 96u8, 32u8, 111u8, 110u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8,
105u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 100u8, 101u8, 109u8, 111u8, 116u8,
101u8, 100u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 28u8, 42u8, 32u8, 65u8,
103u8, 101u8, 110u8, 116u8, 76u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 98u8, 101u8, 99u8,
111u8, 109u8, 101u8, 95u8, 97u8, 103u8, 101u8, 110u8, 116u8, 4u8, 1u8, 28u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 5u8, 64u8, 1u8, 1u8, 65u8,
99u8, 99u8, 101u8, 112u8, 116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8,
32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 34u8, 65u8, 108u8, 105u8, 99u8, 101u8, 34u8, 32u8,
119u8, 104u8, 111u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 96u8, 97u8, 117u8,
116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 216u8, 116u8, 111u8, 32u8, 97u8, 108u8, 115u8, 111u8,
32u8, 98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 65u8, 108u8, 105u8, 99u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8,
105u8, 101u8, 100u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 208u8, 45u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 46u8, 0u8, 32u8, 35u8,
32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 69u8, 1u8, 45u8, 32u8, 96u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 69u8, 114u8, 114u8, 111u8,
114u8, 58u8, 58u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8,
96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 46u8, 53u8, 1u8, 45u8, 32u8, 96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 69u8, 114u8, 114u8, 111u8, 114u8, 58u8, 58u8,
69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8,
117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8,
97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 77u8, 1u8, 45u8, 32u8,
96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
69u8, 114u8, 114u8, 111u8, 114u8, 58u8, 58u8, 66u8, 97u8, 100u8, 84u8, 121u8, 112u8, 101u8, 96u8,
32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 119u8,
97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 96u8, 66u8,
101u8, 99u8, 111u8, 109u8, 101u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 97u8, 117u8,
116u8, 104u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 37u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 65u8, 103u8, 101u8, 110u8,
116u8, 96u8, 32u8, 105u8, 102u8, 32u8, 34u8, 65u8, 108u8, 105u8, 99u8, 101u8, 34u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 46u8, 13u8, 1u8, 45u8, 32u8,
96u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 65u8, 71u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8,
114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8,
109u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 13u8, 1u8, 45u8, 32u8, 96u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 97u8, 110u8, 32u8, 97u8,
103u8, 101u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8, 100u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 95u8, 97u8,
110u8, 100u8, 95u8, 97u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8, 104u8, 16u8, 1u8, 24u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 0u8,
1u8, 20u8, 112u8, 101u8, 114u8, 109u8, 115u8, 172u8, 1u8, 80u8, 69u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
115u8, 0u8, 1u8, 24u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 120u8, 1u8, 40u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8,
105u8, 114u8, 121u8, 240u8, 1u8, 68u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 84u8, 58u8,
58u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 6u8, 20u8, 232u8, 85u8, 116u8, 105u8,
108u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
32u8, 116u8, 111u8, 32u8, 98u8, 97u8, 116u8, 99u8, 104u8, 32u8, 96u8, 99u8, 114u8, 101u8, 97u8,
116u8, 101u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8,
32u8, 96u8, 97u8, 100u8, 100u8, 95u8, 97u8, 117u8, 116u8, 104u8, 96u8, 46u8, 0u8, 52u8, 35u8,
32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 28u8, 42u8,
32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 28u8, 42u8, 32u8, 65u8, 103u8, 101u8, 110u8, 116u8,
120u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 97u8, 110u8, 100u8, 95u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 95u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 95u8, 103u8, 114u8, 111u8,
117u8, 112u8, 12u8, 1u8, 24u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 156u8, 1u8, 24u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 0u8, 1u8, 20u8, 112u8, 101u8, 114u8, 109u8, 115u8, 172u8, 1u8,
80u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 80u8, 101u8, 114u8, 109u8,
105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 20u8, 97u8, 103u8, 101u8, 110u8,
116u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 0u8,
7u8, 20u8, 85u8, 1u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 32u8, 101u8, 120u8, 116u8,
114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 32u8, 116u8, 111u8, 32u8, 98u8, 97u8, 116u8, 99u8,
104u8, 32u8, 96u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 95u8, 103u8, 114u8, 111u8, 117u8,
112u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 32u8, 96u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 99u8, 117u8,
115u8, 116u8, 111u8, 109u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 115u8, 32u8, 111u8, 110u8,
108u8, 121u8, 46u8, 0u8, 52u8, 35u8, 32u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 28u8, 42u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 28u8, 42u8, 32u8, 65u8,
103u8, 101u8, 110u8, 116u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8,
97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8,
97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8,
32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8,
98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8,
97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 33u8, 8u8, 8u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 114u8, 101u8, 108u8, 97u8, 121u8, 101u8,
114u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 56u8, 115u8, 101u8, 116u8,
95u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 8u8, 1u8, 32u8, 117u8,
115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 111u8, 108u8, 121u8, 120u8,
95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 32u8, 189u8, 1u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 96u8, 117u8, 115u8,
101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 101u8,
112u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
40u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 61u8, 61u8, 32u8, 112u8, 97u8, 121u8,
105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 41u8, 32u8, 97u8, 115u8, 32u8, 116u8,
104u8, 101u8, 105u8, 114u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8, 101u8,
114u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8,
156u8, 45u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8,
116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 107u8, 101u8, 121u8, 32u8, 116u8,
111u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8, 101u8, 46u8, 228u8, 45u8,
32u8, 96u8, 112u8, 111u8, 108u8, 121u8, 120u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8,
32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 32u8, 80u8,
79u8, 76u8, 89u8, 88u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8,
110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 46u8, 68u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 95u8, 112u8, 97u8, 121u8, 105u8, 110u8,
103u8, 95u8, 107u8, 101u8, 121u8, 4u8, 1u8, 28u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8,
32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 56u8, 148u8, 65u8, 99u8, 99u8, 101u8, 112u8, 116u8,
115u8, 32u8, 97u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8,
121u8, 96u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8,
115u8, 232u8, 45u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 105u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8,
116u8, 32u8, 97u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8,
121u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 69u8, 1u8,
45u8, 32u8, 96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 69u8, 114u8, 114u8, 111u8, 114u8, 58u8, 58u8, 73u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8,
100u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 46u8, 45u8, 1u8, 45u8, 32u8,
96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8,
69u8, 114u8, 114u8, 111u8, 114u8, 58u8, 58u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8,
96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 96u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 46u8, 109u8, 1u8, 45u8, 32u8, 96u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 69u8, 114u8, 114u8, 111u8, 114u8, 58u8, 58u8, 66u8, 97u8,
100u8, 84u8, 121u8, 112u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 97u8, 117u8, 116u8,
104u8, 95u8, 105u8, 100u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
32u8, 96u8, 65u8, 100u8, 100u8, 82u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 80u8, 97u8, 121u8,
105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 165u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8,
116u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 70u8, 111u8, 114u8,
85u8, 115u8, 101u8, 114u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8,
96u8, 46u8, 217u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 116u8, 65u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 70u8, 111u8, 114u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8,
75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8,
115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 97u8, 110u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8, 114u8,
101u8, 110u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 39u8, 115u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8,
115u8, 101u8, 114u8, 75u8, 101u8, 121u8, 67u8, 100u8, 100u8, 77u8, 105u8, 115u8, 115u8, 105u8,
110u8, 103u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8,
101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8,
67u8, 68u8, 68u8, 39u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 65u8, 1u8, 45u8, 32u8, 96u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8,
67u8, 100u8, 100u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 96u8, 32u8, 105u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8,
101u8, 121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 116u8, 116u8,
97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 39u8,
100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 49u8, 1u8, 45u8, 32u8,
96u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8,
97u8, 108u8, 108u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8,
115u8, 105u8, 99u8, 46u8, 68u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 112u8, 97u8,
121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 8u8, 1u8, 32u8, 117u8, 115u8, 101u8,
114u8, 95u8, 107u8, 101u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 40u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8,
107u8, 101u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 2u8, 44u8, 172u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8,
121u8, 96u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 32u8, 96u8, 117u8, 115u8, 101u8,
114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 212u8, 45u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8,
107u8, 101u8, 121u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8,
107u8, 101u8, 121u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 102u8, 114u8,
111u8, 109u8, 46u8, 9u8, 1u8, 45u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8,
107u8, 101u8, 121u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 97u8, 121u8, 105u8, 110u8,
103u8, 32u8, 107u8, 101u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8,
32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8,
32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 141u8, 1u8, 45u8, 32u8, 96u8, 78u8,
111u8, 116u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 70u8, 111u8,
114u8, 85u8, 115u8, 101u8, 114u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8,
98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 248u8, 45u8, 32u8, 96u8,
78u8, 111u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8,
121u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8,
101u8, 32u8, 97u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8,
121u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 78u8, 111u8, 116u8, 80u8, 97u8, 121u8, 105u8,
110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 100u8,
111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 96u8, 112u8, 97u8,
121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8,
85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8,
108u8, 108u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 46u8, 72u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 95u8, 112u8, 111u8, 108u8,
121u8, 120u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 8u8, 1u8, 32u8, 117u8, 115u8, 101u8,
114u8, 95u8, 107u8, 101u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 112u8, 111u8, 108u8, 121u8, 120u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
3u8, 40u8, 180u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8,
101u8, 121u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 29u8, 1u8, 45u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8,
96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 107u8, 101u8, 121u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8,
121u8, 32u8, 116u8, 111u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8, 79u8, 76u8,
89u8, 88u8, 46u8, 53u8, 1u8, 45u8, 32u8, 96u8, 112u8, 111u8, 108u8, 121u8, 120u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 97u8, 118u8, 97u8,
105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 115u8, 117u8, 98u8,
115u8, 105u8, 100u8, 105u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 248u8, 45u8, 32u8, 96u8, 78u8, 111u8, 80u8, 97u8, 121u8,
105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 100u8, 111u8,
101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 96u8, 112u8,
97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 17u8, 1u8, 45u8, 32u8,
96u8, 78u8, 111u8, 116u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 100u8, 111u8,
101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 96u8, 112u8, 97u8, 121u8,
105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8,
110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 46u8, 80u8, 105u8, 110u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 95u8, 112u8, 111u8,
108u8, 121u8, 120u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 8u8, 1u8, 32u8, 117u8, 115u8,
101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 4u8, 44u8, 184u8, 73u8, 110u8,
99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 118u8, 97u8,
105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 102u8, 111u8,
114u8, 32u8, 97u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8,
0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 29u8, 1u8,
45u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 116u8,
104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 116u8,
111u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 46u8,
13u8, 1u8, 45u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8,
89u8, 88u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 111u8, 102u8, 32u8, 96u8,
117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8,
114u8, 114u8, 111u8, 114u8, 115u8, 248u8, 45u8, 32u8, 96u8, 78u8, 111u8, 80u8, 97u8, 121u8,
105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 100u8, 111u8,
101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 96u8, 112u8,
97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 17u8, 1u8, 45u8, 32u8,
96u8, 78u8, 111u8, 116u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8,
105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 100u8, 111u8,
101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 96u8, 112u8, 97u8, 121u8,
105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8,
110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8, 108u8,
108u8, 101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8,
99u8, 46u8, 61u8, 1u8, 45u8, 32u8, 96u8, 79u8, 118u8, 101u8, 114u8, 108u8, 111u8, 119u8, 96u8,
32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8,
121u8, 39u8, 115u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8,
80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 104u8, 97u8, 118u8,
101u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 96u8,
117u8, 49u8, 50u8, 56u8, 58u8, 58u8, 77u8, 65u8, 88u8, 96u8, 46u8, 80u8, 100u8, 101u8, 99u8,
114u8, 101u8, 97u8, 115u8, 101u8, 95u8, 112u8, 111u8, 108u8, 121u8, 120u8, 95u8, 108u8, 105u8,
109u8, 105u8, 116u8, 8u8, 1u8, 32u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 0u8,
1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8,
24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 5u8, 44u8, 184u8, 68u8, 101u8, 99u8, 114u8, 101u8, 97u8, 115u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8,
79u8, 76u8, 89u8, 88u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 96u8, 117u8, 115u8, 101u8,
114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 29u8, 1u8, 45u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8,
107u8, 101u8, 121u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8,
107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8,
115u8, 105u8, 100u8, 121u8, 32u8, 116u8, 111u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8,
80u8, 79u8, 76u8, 89u8, 88u8, 46u8, 33u8, 1u8, 45u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8,
110u8, 116u8, 96u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8,
109u8, 111u8, 118u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 111u8, 102u8, 32u8, 96u8, 117u8, 115u8,
101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8,
111u8, 114u8, 115u8, 248u8, 45u8, 32u8, 96u8, 78u8, 111u8, 80u8, 97u8, 121u8, 105u8, 110u8,
103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8,
110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 96u8, 112u8, 97u8, 121u8,
105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 17u8, 1u8, 45u8, 32u8, 96u8, 78u8,
111u8, 116u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 96u8, 32u8, 105u8,
102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 100u8, 111u8, 101u8,
115u8, 110u8, 39u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8,
110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 49u8, 1u8, 45u8, 32u8, 96u8, 85u8, 110u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8, 108u8, 108u8,
101u8, 114u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8,
46u8, 9u8, 1u8, 45u8, 32u8, 96u8, 79u8, 118u8, 101u8, 114u8, 108u8, 111u8, 119u8, 96u8, 32u8,
105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8,
32u8, 104u8, 97u8, 115u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 101u8, 110u8,
32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8,
32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 46u8, 12u8, 76u8, 68u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8,
97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8,
117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 37u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8,
4u8, 84u8, 0u8, 1u8, 8u8, 64u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8, 105u8, 116u8, 110u8, 95u8,
114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 12u8, 1u8, 56u8, 114u8, 101u8, 119u8, 97u8, 114u8,
100u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 44u8, 105u8, 116u8, 110u8,
95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 36u8, 115u8, 105u8, 103u8, 110u8,
97u8, 116u8, 117u8, 114u8, 101u8, 213u8, 7u8, 1u8, 80u8, 84u8, 58u8, 58u8, 79u8, 102u8, 102u8,
67u8, 104u8, 97u8, 105u8, 110u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8,
0u8, 0u8, 52u8, 80u8, 67u8, 108u8, 97u8, 105u8, 109u8, 32u8, 97u8, 110u8, 32u8, 73u8, 84u8, 78u8,
32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 0u8, 48u8, 35u8, 35u8, 32u8, 65u8, 114u8,
103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 216u8, 42u8, 32u8, 96u8, 105u8, 116u8, 110u8,
95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 96u8, 32u8, 115u8, 112u8, 101u8, 99u8,
105u8, 102u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 119u8, 97u8,
114u8, 100u8, 101u8, 100u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 111u8,
110u8, 32u8, 73u8, 84u8, 78u8, 46u8, 212u8, 42u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 97u8,
116u8, 117u8, 114u8, 101u8, 96u8, 32u8, 97u8, 117u8, 116u8, 104u8, 101u8, 110u8, 116u8, 105u8,
99u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 108u8, 97u8,
105u8, 109u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 119u8, 97u8,
114u8, 100u8, 46u8, 117u8, 1u8, 32u8, 32u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 105u8, 103u8,
110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 32u8, 96u8, 114u8, 101u8, 119u8, 97u8, 114u8,
100u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 96u8, 32u8, 102u8, 111u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
117u8, 102u8, 102u8, 105u8, 120u8, 32u8, 96u8, 34u8, 99u8, 108u8, 97u8, 105u8, 109u8, 95u8,
105u8, 116u8, 110u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 34u8, 96u8, 44u8, 184u8,
32u8, 32u8, 32u8, 97u8, 110u8, 100u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 104u8, 97u8, 118u8,
101u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 96u8, 105u8, 116u8, 110u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8,
115u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 69u8, 1u8,
42u8, 32u8, 96u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 96u8, 32u8, 45u8, 32u8, 73u8, 116u8, 110u8,
32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8, 105u8,
110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 32u8, 102u8, 117u8,
110u8, 100u8, 115u8, 32u8, 116u8, 111u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 49u8, 1u8, 42u8, 32u8, 96u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8,
114u8, 101u8, 96u8, 32u8, 45u8, 32u8, 96u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8,
114u8, 101u8, 96u8, 32u8, 104u8, 97u8, 100u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8,
105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 109u8, 101u8, 115u8, 115u8, 97u8, 103u8,
101u8, 46u8, 105u8, 1u8, 42u8, 32u8, 96u8, 73u8, 116u8, 110u8, 82u8, 101u8, 119u8, 97u8, 114u8,
100u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 67u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 96u8, 32u8, 45u8, 32u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 105u8, 115u8, 115u8,
117u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 105u8, 116u8,
110u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 96u8, 32u8, 104u8, 97u8, 115u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8, 137u8, 1u8, 42u8, 32u8, 96u8, 85u8, 110u8, 107u8,
110u8, 111u8, 119u8, 110u8, 73u8, 116u8, 110u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
96u8, 32u8, 45u8, 32u8, 96u8, 105u8, 116u8, 110u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8,
115u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 32u8, 116u8, 97u8, 98u8,
108u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8, 32u8,
114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8, 84u8, 115u8, 101u8, 116u8, 95u8, 105u8, 116u8,
110u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 95u8, 115u8, 116u8, 97u8, 116u8, 117u8,
115u8, 8u8, 1u8, 44u8, 105u8, 116u8, 110u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8,
1u8, 24u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 41u8, 8u8, 1u8, 60u8, 73u8, 116u8, 110u8,
82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 0u8,
12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8,
97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8,
102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8,
32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 41u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 60u8, 73u8, 116u8,
110u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8,
8u8, 36u8, 85u8, 110u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 4u8, 0u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 0u8, 28u8, 67u8, 108u8, 97u8, 105u8,
109u8, 101u8, 100u8, 0u8, 1u8, 0u8, 0u8, 45u8, 8u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 24u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 16u8,
99u8, 97u8, 108u8, 108u8, 20u8, 1u8, 16u8, 100u8, 101u8, 115u8, 116u8, 65u8, 5u8, 1u8, 140u8,
60u8, 84u8, 58u8, 58u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 97u8, 115u8, 32u8, 83u8,
116u8, 97u8, 116u8, 105u8, 99u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 62u8, 58u8, 58u8, 83u8,
111u8, 117u8, 114u8, 99u8, 101u8, 0u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8,
1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 1u8,
36u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 13u8, 5u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 84u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 108u8, 105u8, 109u8, 105u8,
116u8, 49u8, 8u8, 1u8, 196u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 60u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 32u8, 97u8, 115u8, 32u8, 99u8,
111u8, 100u8, 101u8, 99u8, 58u8, 58u8, 72u8, 97u8, 115u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8,
116u8, 62u8, 58u8, 58u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8,
97u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 64u8, 5u8, 1u8,
77u8, 97u8, 107u8, 101u8, 115u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8,
32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 111u8, 112u8,
116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 108u8, 121u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8,
102u8, 101u8, 114u8, 114u8, 105u8, 110u8, 103u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8, 114u8, 97u8,
109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 0u8, 168u8, 42u8, 32u8, 96u8, 100u8, 101u8, 115u8,
116u8, 96u8, 58u8, 32u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8, 252u8, 42u8, 32u8, 96u8, 118u8, 97u8, 108u8,
117u8, 101u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 32u8, 116u8, 111u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 116u8, 111u8, 32u8, 96u8, 100u8, 101u8, 115u8, 116u8, 96u8, 46u8, 21u8,
1u8, 42u8, 32u8, 96u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 58u8,
32u8, 84u8, 104u8, 101u8, 32u8, 103u8, 97u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 111u8, 114u8, 46u8, 85u8, 1u8,
42u8, 32u8, 96u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8,
111u8, 115u8, 105u8, 116u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 58u8, 32u8, 84u8,
104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8,
117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8,
114u8, 103u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 164u8,
32u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 100u8, 46u8, 196u8, 42u8,
32u8, 96u8, 100u8, 97u8, 116u8, 97u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 105u8, 110u8,
112u8, 117u8, 116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8,
115u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 46u8, 0u8, 37u8, 1u8, 42u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
115u8, 109u8, 97u8, 114u8, 116u8, 45u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 111u8, 100u8, 101u8,
32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 172u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 110u8, 121u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 46u8, 21u8, 1u8, 42u8, 32u8, 73u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
105u8, 115u8, 32u8, 97u8, 32u8, 114u8, 101u8, 103u8, 117u8, 108u8, 97u8, 114u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 44u8, 32u8, 97u8, 110u8, 121u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 46u8, 69u8, 1u8, 42u8, 32u8, 73u8, 102u8,
32u8, 110u8, 111u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
97u8, 108u8, 108u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 96u8,
101u8, 120u8, 105u8, 115u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 95u8, 100u8, 101u8,
112u8, 111u8, 115u8, 105u8, 116u8, 96u8, 44u8, 17u8, 1u8, 97u8, 32u8, 114u8, 101u8, 103u8, 117u8,
108u8, 97u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 97u8,
110u8, 100u8, 32u8, 97u8, 110u8, 121u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 114u8, 101u8, 100u8, 46u8, 84u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8,
97u8, 116u8, 101u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 24u8, 1u8,
20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 1u8, 36u8, 103u8, 97u8, 115u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 13u8, 5u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8,
1u8, 84u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 49u8, 8u8, 1u8, 196u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 60u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8,
60u8, 84u8, 62u8, 32u8, 97u8, 115u8, 32u8, 99u8, 111u8, 100u8, 101u8, 99u8, 58u8, 58u8, 72u8,
97u8, 115u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 62u8, 58u8, 58u8, 84u8, 121u8, 112u8,
101u8, 62u8, 0u8, 1u8, 16u8, 99u8, 111u8, 100u8, 101u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8,
117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8,
60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 115u8, 97u8, 108u8, 116u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 104u8, 49u8, 1u8, 73u8, 110u8, 115u8, 116u8, 97u8,
110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 96u8,
99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 111u8, 112u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8,
108u8, 121u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 105u8, 110u8,
103u8, 52u8, 115u8, 111u8, 109u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8,
0u8, 33u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8,
104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 97u8, 109u8, 101u8, 32u8, 101u8, 102u8, 102u8, 101u8, 99u8, 116u8, 32u8, 97u8, 115u8,
32u8, 99u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8, 102u8,
58u8, 58u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 93u8,
32u8, 43u8, 61u8, 1u8, 91u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 105u8, 110u8, 115u8,
116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 96u8, 93u8, 46u8, 32u8, 66u8, 117u8, 110u8,
100u8, 108u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 109u8, 32u8, 116u8, 111u8, 103u8,
101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 115u8,
32u8, 101u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 99u8, 121u8, 32u8, 103u8, 97u8,
105u8, 110u8, 115u8, 46u8, 32u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 216u8, 97u8, 108u8,
115u8, 111u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8,
111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8,
102u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 117u8, 112u8, 108u8, 111u8, 97u8,
100u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 93u8, 46u8, 0u8, 48u8, 35u8, 32u8, 80u8, 97u8,
114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 0u8, 77u8, 1u8, 42u8, 32u8, 96u8, 118u8,
97u8, 108u8, 117u8, 101u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 96u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8,
101u8, 119u8, 108u8, 121u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 21u8, 1u8, 42u8, 32u8, 96u8, 103u8, 97u8,
115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8,
103u8, 97u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 101u8, 110u8, 102u8, 111u8,
114u8, 99u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 101u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 111u8, 114u8, 46u8, 85u8, 1u8, 42u8, 32u8, 96u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8,
108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8,
120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 47u8,
114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 200u8, 32u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 116u8,
111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8,
101u8, 100u8, 46u8, 204u8, 42u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 58u8, 32u8, 84u8,
104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 99u8, 111u8,
100u8, 101u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 32u8, 105u8,
110u8, 32u8, 114u8, 97u8, 119u8, 32u8, 98u8, 121u8, 116u8, 101u8, 115u8, 46u8, 244u8, 42u8, 32u8,
96u8, 100u8, 97u8, 116u8, 97u8, 96u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 105u8, 110u8, 112u8,
117u8, 116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 115u8,
115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 111u8,
114u8, 46u8, 49u8, 1u8, 42u8, 32u8, 96u8, 115u8, 97u8, 108u8, 116u8, 96u8, 58u8, 32u8, 85u8,
115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 100u8,
100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 100u8, 101u8, 114u8, 105u8, 118u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 32u8, 83u8, 101u8, 101u8, 32u8, 91u8, 96u8, 80u8, 97u8, 108u8, 108u8, 101u8,
116u8, 58u8, 58u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 95u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 96u8, 93u8, 46u8, 0u8, 148u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8,
116u8, 105u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 101u8,
99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8,
119u8, 115u8, 58u8, 0u8, 89u8, 1u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 112u8,
112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 105u8,
115u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 109u8, 101u8, 110u8, 116u8, 101u8, 100u8,
44u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 101u8, 100u8, 44u8, 32u8, 97u8, 110u8,
100u8, 32u8, 97u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 96u8,
32u8, 105u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 28u8, 32u8, 32u8, 99u8, 111u8, 100u8, 101u8, 46u8, 89u8,
1u8, 45u8, 32u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8,
95u8, 104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 100u8, 101u8,
114u8, 108u8, 121u8, 105u8, 110u8, 103u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 115u8, 104u8, 97u8, 114u8, 101u8, 100u8,
46u8, 73u8, 1u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8,
105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 100u8, 32u8, 98u8, 97u8,
115u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8,
100u8, 101u8, 114u8, 44u8, 32u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8,
32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 108u8, 116u8, 46u8, 1u8,
1u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 109u8, 97u8, 114u8, 116u8, 45u8, 99u8, 111u8,
110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
105u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 100u8, 32u8, 97u8,
100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 192u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8,
96u8, 118u8, 97u8, 108u8, 117u8, 101u8, 96u8, 32u8, 105u8, 115u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 65u8,
1u8, 45u8, 32u8, 84u8, 104u8, 101u8, 32u8, 96u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 96u8,
32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 119u8, 108u8, 121u8, 45u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8,
100u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 44u8, 105u8, 110u8, 115u8,
116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 24u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8,
101u8, 201u8, 1u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8,
84u8, 62u8, 0u8, 1u8, 36u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 13u8,
5u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 84u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 49u8, 8u8, 1u8, 196u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
60u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 32u8, 97u8,
115u8, 32u8, 99u8, 111u8, 100u8, 101u8, 99u8, 58u8, 58u8, 72u8, 97u8, 115u8, 67u8, 111u8, 109u8,
112u8, 97u8, 99u8, 116u8, 62u8, 58u8, 58u8, 84u8, 121u8, 112u8, 101u8, 62u8, 0u8, 1u8, 36u8,
99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 44u8, 67u8, 111u8, 100u8,
101u8, 72u8, 97u8, 115u8, 104u8, 60u8, 84u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8,
40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 115u8, 97u8, 108u8,
116u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 2u8, 20u8, 252u8, 73u8,
110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
97u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 100u8,
101u8, 112u8, 108u8, 111u8, 121u8, 101u8, 100u8, 32u8, 119u8, 97u8, 115u8, 109u8, 32u8, 98u8,
105u8, 110u8, 97u8, 114u8, 121u8, 46u8, 0u8, 53u8, 1u8, 84u8, 104u8, 105u8, 115u8, 32u8, 102u8,
117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 99u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8,
95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 93u8, 32u8, 98u8, 117u8,
116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 116u8, 104u8, 101u8, 73u8,
1u8, 99u8, 111u8, 100u8, 101u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 109u8, 101u8,
110u8, 116u8, 32u8, 115u8, 116u8, 101u8, 112u8, 46u8, 32u8, 73u8, 110u8, 115u8, 116u8, 101u8,
97u8, 100u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8,
97u8, 115u8, 104u8, 96u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 111u8, 110u8, 45u8, 99u8,
104u8, 97u8, 105u8, 110u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 101u8, 100u8, 32u8,
119u8, 97u8, 115u8, 109u8, 32u8, 98u8, 105u8, 110u8, 97u8, 114u8, 121u8, 68u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8,
46u8, 44u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 95u8, 99u8, 111u8, 100u8, 101u8, 8u8, 1u8,
16u8, 99u8, 111u8, 100u8, 101u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8,
0u8, 1u8, 84u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 49u8, 8u8, 1u8, 196u8, 79u8, 112u8,
116u8, 105u8, 111u8, 110u8, 60u8, 60u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8,
60u8, 84u8, 62u8, 32u8, 97u8, 115u8, 32u8, 99u8, 111u8, 100u8, 101u8, 99u8, 58u8, 58u8, 72u8,
97u8, 115u8, 67u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 62u8, 58u8, 58u8, 84u8, 121u8, 112u8,
101u8, 62u8, 0u8, 3u8, 64u8, 236u8, 85u8, 112u8, 108u8, 111u8, 97u8, 100u8, 32u8, 110u8, 101u8,
119u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8,
117u8, 116u8, 32u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 105u8,
110u8, 103u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 105u8, 116u8, 46u8, 0u8, 33u8, 1u8, 73u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8,
116u8, 32u8, 97u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 105u8, 115u8,
32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 69u8, 1u8, 97u8, 110u8,
100u8, 32u8, 117u8, 110u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 32u8, 111u8,
110u8, 108u8, 121u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 99u8, 111u8, 100u8, 101u8,
96u8, 93u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 46u8, 32u8, 84u8,
104u8, 101u8, 32u8, 115u8, 105u8, 122u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 240u8, 100u8, 101u8, 112u8, 101u8, 110u8,
100u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 109u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 115u8, 105u8, 122u8, 101u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 112u8,
112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 46u8, 0u8, 49u8,
1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 105u8,
110u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8, 116u8, 117u8,
114u8, 110u8, 32u8, 96u8, 79u8, 107u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 117u8, 112u8, 103u8,
114u8, 97u8, 100u8, 101u8, 115u8, 148u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 32u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 208u8, 91u8, 96u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 58u8, 58u8, 118u8, 101u8, 114u8, 115u8,
105u8, 111u8, 110u8, 96u8, 93u8, 40u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 41u8, 46u8, 0u8, 24u8, 35u8,
32u8, 78u8, 111u8, 116u8, 101u8, 0u8, 89u8, 1u8, 65u8, 110u8, 121u8, 111u8, 110u8, 101u8, 32u8,
99u8, 97u8, 110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8,
101u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 97u8, 110u8, 121u8, 32u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 101u8,
100u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 117u8,
115u8, 32u8, 112u8, 114u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 105u8, 116u8, 115u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 97u8, 108u8, 46u8, 65u8, 1u8, 84u8, 111u8, 32u8, 97u8, 118u8,
111u8, 105u8, 100u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 115u8, 105u8, 116u8, 117u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 111u8, 114u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 32u8, 101u8, 109u8, 112u8,
108u8, 111u8, 121u8, 32u8, 97u8, 99u8, 99u8, 101u8, 115u8, 115u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 111u8, 108u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8,
116u8, 32u8, 99u8, 97u8, 110u8, 57u8, 1u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8,
105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8,
32u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 46u8, 32u8, 84u8, 104u8, 101u8,
32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 114u8, 117u8, 101u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 105u8, 110u8, 103u8,
160u8, 116u8, 104u8, 114u8, 111u8, 117u8, 103u8, 104u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8,
102u8, 58u8, 58u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8,
95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 93u8, 46u8, 44u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 99u8, 111u8, 100u8, 101u8, 4u8, 1u8, 36u8, 99u8, 111u8,
100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 44u8, 67u8, 111u8, 100u8, 101u8, 72u8,
97u8, 115u8, 104u8, 60u8, 84u8, 62u8, 0u8, 4u8, 16u8, 53u8, 1u8, 82u8, 101u8, 109u8, 111u8,
118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 115u8, 116u8,
111u8, 114u8, 101u8, 100u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 96u8, 99u8, 111u8,
100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8,
101u8, 102u8, 117u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8, 115u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 46u8, 0u8, 69u8, 1u8, 65u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 99u8, 97u8,
110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 105u8, 116u8, 115u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 97u8, 108u8, 32u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 101u8, 114u8,
32u8, 40u8, 105u8, 116u8, 115u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 41u8, 32u8, 97u8,
110u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8,
105u8, 115u8, 100u8, 110u8, 111u8, 116u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 97u8, 110u8, 121u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 4u8,
37u8, 1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8,
118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 46u8, 49u8, 8u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8,
1u8, 201u8, 1u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8,
109u8, 101u8, 4u8, 0u8, 201u8, 1u8, 0u8, 0u8, 1u8, 0u8, 0u8, 53u8, 8u8, 8u8, 72u8, 112u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 115u8, 16u8, 67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 108u8, 105u8, 110u8,
115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 95u8, 119u8, 105u8, 116u8, 104u8,
95u8, 99u8, 111u8, 100u8, 101u8, 95u8, 112u8, 101u8, 114u8, 109u8, 115u8, 28u8, 1u8, 36u8, 101u8,
110u8, 100u8, 111u8, 119u8, 109u8, 101u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 84u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 108u8,
105u8, 109u8, 105u8, 116u8, 253u8, 3u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 62u8, 0u8, 1u8, 16u8, 99u8, 111u8, 100u8, 101u8,
40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8,
97u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 115u8, 97u8,
108u8, 116u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 20u8, 112u8,
101u8, 114u8, 109u8, 115u8, 148u8, 1u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 0u8, 0u8, 96u8, 45u8, 1u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8,
116u8, 105u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 109u8, 97u8, 114u8, 116u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 100u8, 101u8, 102u8, 105u8,
110u8, 105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8,
96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 115u8, 97u8, 108u8, 116u8, 96u8, 46u8, 0u8, 196u8,
84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8,
100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 44u8, 224u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 112u8,
101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 115u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 32u8, 116u8, 111u8,
32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 96u8, 39u8, 115u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8, 224u8, 84u8, 104u8, 101u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 96u8, 101u8, 110u8, 100u8, 111u8,
119u8, 109u8, 101u8, 110u8, 116u8, 96u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 46u8, 152u8, 84u8, 104u8, 105u8, 115u8, 32u8,
105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 116u8, 105u8, 110u8, 99u8, 116u8, 32u8, 102u8, 114u8,
111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8,
109u8, 105u8, 116u8, 96u8, 44u8, 17u8, 1u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 99u8, 111u8,
110u8, 116u8, 114u8, 111u8, 108u8, 115u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 117u8, 99u8,
104u8, 32u8, 103u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 112u8, 108u8,
111u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 109u8, 97u8,
121u8, 32u8, 97u8, 116u8, 32u8, 109u8, 111u8, 115u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8,
117u8, 109u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8, 114u8, 103u8, 117u8, 109u8, 101u8, 110u8,
116u8, 115u8, 232u8, 45u8, 32u8, 96u8, 101u8, 110u8, 100u8, 111u8, 119u8, 109u8, 101u8, 110u8,
116u8, 96u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8,
76u8, 89u8, 88u8, 32u8, 116u8, 111u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 46u8, 85u8, 1u8, 45u8, 32u8, 96u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8,
109u8, 105u8, 116u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8,
117u8, 99u8, 104u8, 32u8, 103u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 100u8,
101u8, 112u8, 108u8, 111u8, 121u8, 96u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 105u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
109u8, 97u8, 121u8, 32u8, 97u8, 116u8, 32u8, 109u8, 111u8, 115u8, 116u8, 32u8, 99u8, 111u8,
110u8, 115u8, 117u8, 109u8, 101u8, 46u8, 81u8, 1u8, 45u8, 32u8, 96u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 108u8, 105u8,
109u8, 105u8, 116u8, 96u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8,
117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 100u8, 47u8, 114u8, 101u8,
115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 200u8, 32u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8,
112u8, 97u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 100u8,
46u8, 232u8, 45u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 87u8, 65u8, 83u8, 77u8, 32u8, 98u8, 105u8, 110u8, 97u8, 114u8,
121u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 109u8, 97u8, 114u8, 116u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 46u8, 240u8, 45u8, 32u8, 96u8, 100u8, 97u8, 116u8, 97u8, 96u8, 32u8, 84u8, 104u8, 101u8,
32u8, 105u8, 110u8, 112u8, 117u8, 116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 111u8,
32u8, 112u8, 97u8, 115u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 111u8, 114u8, 46u8, 184u8, 45u8, 32u8, 96u8, 115u8, 97u8, 108u8, 116u8, 96u8,
32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 100u8,
101u8, 114u8, 105u8, 118u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 33u8, 1u8, 32u8, 32u8, 32u8,
66u8, 121u8, 32u8, 118u8, 97u8, 114u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8,
115u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 96u8, 99u8, 111u8,
100u8, 101u8, 96u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8,
32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8,
101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 188u8, 45u8, 32u8,
96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 104u8, 97u8,
118u8, 101u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 101u8, 1u8,
45u8, 32u8, 65u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8,
58u8, 58u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 95u8,
119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 99u8, 97u8, 110u8, 32u8,
97u8, 108u8, 115u8, 111u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 104u8, 101u8,
114u8, 101u8, 46u8, 240u8, 45u8, 32u8, 67u8, 68u8, 68u8, 47u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 99u8, 104u8, 101u8,
99u8, 107u8, 101u8, 100u8, 44u8, 32u8, 117u8, 110u8, 108u8, 105u8, 107u8, 101u8, 32u8, 105u8,
110u8, 32u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 115u8, 96u8, 46u8, 33u8, 1u8, 45u8, 32u8, 69u8, 114u8, 114u8, 111u8,
114u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 105u8, 115u8, 101u8, 32u8,
119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8,
110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 111u8, 99u8,
99u8, 117u8, 114u8, 32u8, 104u8, 101u8, 114u8, 101u8, 46u8, 108u8, 105u8, 110u8, 115u8, 116u8,
97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 104u8,
97u8, 115u8, 104u8, 95u8, 112u8, 101u8, 114u8, 109u8, 115u8, 28u8, 1u8, 36u8, 101u8, 110u8,
100u8, 111u8, 119u8, 109u8, 101u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 1u8, 36u8, 103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8,
1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 84u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 108u8, 105u8,
109u8, 105u8, 116u8, 253u8, 3u8, 1u8, 60u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 62u8, 0u8, 1u8, 36u8, 99u8, 111u8, 100u8, 101u8, 95u8,
104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 44u8, 67u8, 111u8, 100u8, 101u8, 72u8, 97u8, 115u8, 104u8,
60u8, 84u8, 62u8, 0u8, 1u8, 16u8, 100u8, 97u8, 116u8, 97u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8,
60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 16u8, 115u8, 97u8, 108u8, 116u8, 40u8, 1u8, 28u8, 86u8, 101u8,
99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 1u8, 20u8, 112u8, 101u8, 114u8, 109u8, 115u8, 148u8, 1u8,
44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8,
108u8, 57u8, 1u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8,
115u8, 32u8, 97u8, 32u8, 115u8, 109u8, 97u8, 114u8, 116u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8,
117u8, 115u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 97u8,
110u8, 100u8, 32u8, 96u8, 115u8, 97u8, 108u8, 116u8, 96u8, 46u8, 0u8, 124u8, 85u8, 110u8, 108u8,
105u8, 107u8, 101u8, 32u8, 96u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8,
116u8, 101u8, 95u8, 119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 44u8,
105u8, 1u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 115u8, 115u8, 117u8, 109u8, 101u8, 115u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 116u8, 32u8, 108u8, 101u8, 97u8, 115u8, 116u8, 32u8,
111u8, 110u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 87u8,
65u8, 83u8, 77u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 108u8,
111u8, 97u8, 100u8, 101u8, 100u8, 46u8, 0u8, 196u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 97u8,
116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 44u8, 224u8, 119u8,
105u8, 116u8, 104u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8, 115u8, 96u8, 32u8, 97u8, 115u8,
32u8, 105u8, 116u8, 115u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8,
110u8, 115u8, 44u8, 32u8, 116u8, 111u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8,
96u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 0u8,
224u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
105u8, 115u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8,
32u8, 96u8, 101u8, 110u8, 100u8, 111u8, 119u8, 109u8, 101u8, 110u8, 116u8, 96u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 46u8,
152u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 116u8, 105u8,
110u8, 99u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8,
103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 44u8, 17u8, 1u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 115u8, 32u8, 104u8,
111u8, 119u8, 32u8, 109u8, 117u8, 99u8, 104u8, 32u8, 103u8, 97u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 99u8,
111u8, 100u8, 101u8, 32u8, 109u8, 97u8, 121u8, 32u8, 97u8, 116u8, 32u8, 109u8, 111u8, 115u8,
116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 46u8, 0u8, 44u8, 35u8, 32u8, 65u8,
114u8, 103u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 232u8, 45u8, 32u8, 96u8, 101u8, 110u8,
100u8, 111u8, 119u8, 109u8, 101u8, 110u8, 116u8, 96u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 116u8, 111u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 85u8, 1u8, 45u8, 32u8, 96u8,
103u8, 97u8, 115u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 102u8, 111u8, 114u8,
32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 117u8, 99u8, 104u8, 32u8, 103u8, 97u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8, 96u8, 32u8, 99u8,
111u8, 100u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 109u8, 97u8, 121u8, 32u8, 97u8, 116u8, 32u8, 109u8, 111u8,
115u8, 116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 46u8, 81u8, 1u8, 45u8, 32u8,
96u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 95u8, 108u8, 105u8, 109u8, 105u8, 116u8, 96u8, 32u8, 84u8, 104u8, 101u8, 32u8,
109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8,
100u8, 47u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 100u8, 200u8, 32u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8,
117u8, 109u8, 101u8, 100u8, 46u8, 196u8, 45u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 95u8,
104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 117u8, 112u8, 108u8, 111u8, 97u8, 100u8, 101u8, 100u8, 32u8,
87u8, 65u8, 83u8, 77u8, 32u8, 98u8, 105u8, 110u8, 97u8, 114u8, 121u8, 46u8, 240u8, 45u8, 32u8,
96u8, 100u8, 97u8, 116u8, 97u8, 96u8, 32u8, 84u8, 104u8, 101u8, 32u8, 105u8, 110u8, 112u8, 117u8,
116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 115u8, 115u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 111u8, 114u8, 46u8,
184u8, 45u8, 32u8, 96u8, 115u8, 97u8, 108u8, 116u8, 96u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8,
102u8, 111u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 97u8,
100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 100u8, 101u8, 114u8, 105u8, 118u8, 97u8, 116u8,
105u8, 111u8, 110u8, 46u8, 33u8, 1u8, 32u8, 32u8, 32u8, 66u8, 121u8, 32u8, 118u8, 97u8, 114u8,
121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8, 44u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 96u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 99u8, 97u8,
110u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 117u8, 110u8, 100u8, 101u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 188u8, 45u8, 32u8, 96u8, 112u8, 101u8, 114u8, 109u8,
115u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 104u8, 97u8, 118u8, 101u8, 46u8, 0u8, 32u8, 35u8,
32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 61u8, 1u8, 45u8, 32u8, 65u8, 108u8, 108u8, 32u8,
116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 32u8, 105u8, 110u8, 32u8,
96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 115u8, 58u8, 58u8, 67u8, 97u8, 108u8, 108u8, 58u8, 58u8, 105u8, 110u8, 115u8, 116u8,
97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 96u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 108u8,
115u8, 111u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 104u8, 101u8, 114u8, 101u8,
46u8, 240u8, 45u8, 32u8, 67u8, 68u8, 68u8, 47u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8,
101u8, 100u8, 44u8, 32u8, 117u8, 110u8, 108u8, 105u8, 107u8, 101u8, 32u8, 105u8, 110u8, 32u8,
96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 115u8, 96u8, 46u8, 33u8, 1u8, 45u8, 32u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 105u8, 115u8, 101u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 97u8, 100u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 111u8, 99u8, 99u8, 117u8,
114u8, 32u8, 104u8, 101u8, 114u8, 101u8, 46u8, 12u8, 76u8, 68u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 115u8, 46u8, 0u8,
85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 117u8, 109u8, 32u8, 109u8,
97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8,
116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8,
101u8, 46u8, 57u8, 8u8, 12u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 114u8,
101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 16u8,
67u8, 97u8, 108u8, 108u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 52u8, 110u8, 111u8, 116u8, 101u8, 95u8,
112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 4u8, 1u8, 20u8, 98u8, 121u8, 116u8, 101u8,
115u8, 40u8, 1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 16u8, 116u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 32u8, 97u8, 32u8, 112u8, 114u8, 101u8, 105u8,
109u8, 97u8, 103u8, 101u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 0u8,
85u8, 1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8,
103u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8,
115u8, 108u8, 121u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 44u8,
32u8, 110u8, 111u8, 32u8, 102u8, 101u8, 101u8, 115u8, 32u8, 111u8, 114u8, 32u8, 100u8, 101u8,
112u8, 111u8, 115u8, 105u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 97u8, 107u8,
101u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 105u8,
110u8, 103u8, 85u8, 1u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8,
103u8, 101u8, 46u8, 32u8, 79u8, 116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 44u8,
32u8, 97u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8,
116u8, 97u8, 107u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8,
111u8, 110u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 105u8,
122u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8,
109u8, 97u8, 103u8, 101u8, 46u8, 60u8, 117u8, 110u8, 110u8, 111u8, 116u8, 101u8, 95u8, 112u8,
114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 4u8, 1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8,
1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 4u8, 220u8, 67u8, 108u8, 101u8,
97u8, 114u8, 32u8, 97u8, 110u8, 32u8, 117u8, 110u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8,
116u8, 101u8, 100u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 64u8, 114u8, 101u8, 113u8,
117u8, 101u8, 115u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 4u8,
1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8, 72u8, 97u8, 115u8,
104u8, 0u8, 2u8, 16u8, 65u8, 1u8, 82u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 32u8, 97u8,
32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 98u8, 101u8, 32u8, 117u8,
112u8, 108u8, 111u8, 97u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8, 116u8,
32u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 32u8, 97u8, 110u8, 121u8, 32u8, 102u8, 101u8,
101u8, 115u8, 32u8, 111u8, 114u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 115u8,
46u8, 0u8, 85u8, 1u8, 73u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8,
109u8, 97u8, 103u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 115u8, 32u8,
104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 111u8, 110u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 44u8, 32u8, 119u8, 101u8, 32u8, 117u8, 110u8, 114u8,
101u8, 115u8, 101u8, 114u8, 118u8, 101u8, 32u8, 97u8, 110u8, 121u8, 32u8, 100u8, 101u8, 112u8,
111u8, 115u8, 105u8, 116u8, 57u8, 1u8, 97u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 109u8, 97u8,
121u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 112u8, 97u8, 105u8, 100u8, 44u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 97u8, 107u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 111u8, 108u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8,
101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 104u8, 97u8, 110u8, 100u8, 115u8, 46u8, 72u8, 117u8,
110u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8,
97u8, 103u8, 101u8, 4u8, 1u8, 16u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 28u8, 84u8, 58u8, 58u8,
72u8, 97u8, 115u8, 104u8, 0u8, 3u8, 12u8, 188u8, 67u8, 108u8, 101u8, 97u8, 114u8, 32u8, 97u8,
32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 109u8, 97u8,
100u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 46u8, 0u8, 45u8, 1u8,
78u8, 79u8, 84u8, 69u8, 58u8, 32u8, 84u8, 72u8, 73u8, 83u8, 32u8, 77u8, 85u8, 83u8, 84u8, 32u8,
78u8, 79u8, 84u8, 32u8, 66u8, 69u8, 32u8, 67u8, 65u8, 76u8, 76u8, 69u8, 68u8, 32u8, 79u8, 78u8,
32u8, 96u8, 104u8, 97u8, 115u8, 104u8, 96u8, 32u8, 77u8, 79u8, 82u8, 69u8, 32u8, 84u8, 73u8,
77u8, 69u8, 83u8, 32u8, 84u8, 72u8, 65u8, 78u8, 32u8, 96u8, 114u8, 101u8, 113u8, 117u8, 101u8,
115u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 96u8, 46u8, 4u8, 37u8,
1u8, 67u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8,
118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 112u8, 101u8, 114u8, 32u8, 100u8, 105u8,
115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8,
105u8, 99u8, 46u8, 61u8, 8u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 116u8,
101u8, 115u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 115u8, 16u8, 67u8, 97u8, 108u8, 108u8,
4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 48u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
95u8, 100u8, 105u8, 100u8, 8u8, 1u8, 12u8, 117u8, 105u8, 100u8, 101u8, 4u8, 1u8, 44u8, 73u8,
110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 105u8, 100u8, 0u8, 1u8, 56u8, 115u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 140u8,
1u8, 124u8, 86u8, 101u8, 99u8, 60u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8,
75u8, 101u8, 121u8, 60u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 62u8, 62u8, 0u8, 0u8, 40u8, 77u8, 1u8, 71u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8,
101u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 96u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 73u8, 68u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8,
115u8, 115u8, 117u8, 101u8, 115u8, 32u8, 97u8, 32u8, 115u8, 101u8, 108u8, 102u8, 45u8, 103u8,
101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8,
97u8, 105u8, 109u8, 46u8, 0u8, 240u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 93u8, 1u8, 70u8, 111u8, 114u8,
32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 96u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8,
101u8, 121u8, 115u8, 96u8, 44u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 96u8, 74u8, 111u8,
105u8, 110u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 96u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8,
32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 44u8, 32u8, 115u8, 111u8, 65u8, 1u8, 101u8,
97u8, 99u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 109u8, 32u8, 119u8, 105u8,
108u8, 108u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8,
101u8, 112u8, 116u8, 32u8, 105u8, 116u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8,
98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 110u8, 101u8, 119u8, 32u8, 96u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 68u8, 96u8, 46u8, 0u8, 32u8, 35u8, 32u8, 69u8, 114u8,
114u8, 111u8, 114u8, 115u8, 213u8, 1u8, 45u8, 32u8, 96u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 76u8, 105u8, 110u8, 107u8, 101u8, 100u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 111u8, 114u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8, 121u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 115u8, 101u8,
99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 96u8, 32u8,
104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 108u8, 105u8,
110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8, 96u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 68u8, 96u8, 77u8, 1u8, 45u8, 32u8, 96u8, 83u8,
101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 115u8, 67u8, 111u8,
110u8, 116u8, 97u8, 105u8, 110u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8,
121u8, 96u8, 32u8, 105u8, 102u8, 32u8, 96u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8,
114u8, 121u8, 95u8, 107u8, 101u8, 121u8, 115u8, 96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8,
32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 232u8, 45u8, 32u8, 96u8, 68u8, 105u8,
100u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8,
96u8, 32u8, 105u8, 102u8, 32u8, 97u8, 117u8, 116u8, 111u8, 45u8, 103u8, 101u8, 110u8, 101u8,
114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 68u8, 73u8, 68u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8, 84u8, 109u8, 111u8, 99u8,
107u8, 95u8, 99u8, 100u8, 100u8, 95u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
95u8, 100u8, 105u8, 100u8, 4u8, 1u8, 56u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 0u8, 1u8, 48u8, 84u8, 58u8, 58u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 48u8, 61u8, 1u8, 82u8, 101u8, 103u8, 105u8,
115u8, 116u8, 101u8, 114u8, 115u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 115u8, 32u8,
97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 116u8, 111u8, 32u8,
105u8, 116u8, 46u8, 81u8, 1u8, 84u8, 104u8, 101u8, 32u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8,
111u8, 114u8, 32u8, 85u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 103u8, 101u8, 110u8, 101u8,
114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8,
105u8, 115u8, 116u8, 105u8, 99u8, 97u8, 108u8, 108u8, 121u8, 32u8, 98u8, 121u8, 32u8, 116u8,
104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8, 32u8, 68u8, 73u8, 68u8, 32u8,
97u8, 110u8, 100u8, 176u8, 116u8, 104u8, 101u8, 110u8, 32u8, 119u8, 101u8, 32u8, 102u8, 105u8,
120u8, 32u8, 105u8, 116u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 85u8, 85u8,
73u8, 68u8, 32u8, 118u8, 52u8, 46u8, 0u8, 20u8, 35u8, 32u8, 83u8, 101u8, 101u8, 220u8, 45u8,
32u8, 91u8, 82u8, 70u8, 67u8, 32u8, 52u8, 49u8, 50u8, 50u8, 58u8, 32u8, 85u8, 85u8, 73u8, 68u8,
93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 116u8, 111u8, 111u8, 108u8,
115u8, 46u8, 105u8, 101u8, 116u8, 102u8, 46u8, 111u8, 114u8, 103u8, 47u8, 104u8, 116u8, 109u8,
108u8, 47u8, 114u8, 102u8, 99u8, 52u8, 49u8, 50u8, 50u8, 41u8, 0u8, 36u8, 35u8, 32u8, 70u8, 97u8,
105u8, 108u8, 117u8, 114u8, 101u8, 73u8, 1u8, 45u8, 32u8, 96u8, 111u8, 114u8, 105u8, 103u8,
105u8, 110u8, 96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 97u8,
110u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 46u8, 32u8, 73u8, 110u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
114u8, 115u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 97u8, 100u8, 100u8, 32u8,
110u8, 101u8, 119u8, 28u8, 99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 46u8, 93u8, 1u8, 45u8, 32u8,
96u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 95u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 96u8, 32u8, 40u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 41u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8,
101u8, 32u8, 108u8, 105u8, 110u8, 107u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 106u8, 117u8,
115u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 111u8, 110u8, 108u8,
121u8, 52u8, 111u8, 110u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 40u8, 103u8, 101u8, 116u8, 95u8, 109u8, 121u8, 95u8, 100u8, 105u8, 100u8, 0u8, 2u8, 4u8,
152u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 118u8, 101u8, 110u8,
116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8,
115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 40u8, 103u8, 101u8,
116u8, 95u8, 99u8, 100u8, 100u8, 95u8, 111u8, 102u8, 4u8, 1u8, 8u8, 111u8, 102u8, 0u8, 1u8, 48u8,
84u8, 58u8, 58u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 3u8, 4u8,
212u8, 69u8, 109u8, 105u8, 116u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 118u8, 101u8, 110u8,
116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 39u8,
115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 97u8, 110u8, 100u8,
32u8, 67u8, 68u8, 68u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 46u8, 12u8, 76u8, 68u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 115u8, 46u8, 0u8, 85u8, 1u8, 69u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 114u8, 105u8,
97u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8,
117u8, 109u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 100u8,
105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 102u8, 117u8,
110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 65u8, 8u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 52u8, 80u8, 111u8,
108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 86u8, 111u8, 116u8, 101u8, 115u8, 4u8, 44u8, 66u8,
108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 0u8, 16u8, 1u8,
20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 16u8, 97u8, 121u8, 101u8, 115u8,
33u8, 1u8, 1u8, 60u8, 86u8, 101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 62u8, 0u8, 1u8, 16u8, 110u8, 97u8, 121u8, 115u8, 33u8, 1u8, 1u8, 60u8, 86u8,
101u8, 99u8, 60u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 62u8, 0u8,
1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 53u8, 1u8, 1u8, 92u8, 77u8, 97u8, 121u8,
98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8, 60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 0u8, 69u8, 8u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 28u8, 86u8,
101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8,
0u8, 73u8, 8u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 8u8, 4u8, 84u8,
0u8, 4u8, 73u8, 0u8, 1u8, 36u8, 52u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8,
86u8, 111u8, 116u8, 101u8, 0u8, 0u8, 4u8, 128u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8,
116u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 40u8, 78u8, 111u8,
116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 8u8, 136u8, 65u8, 32u8, 68u8,
73u8, 68u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8,
101u8, 46u8, 212u8, 84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 109u8, 97u8, 121u8, 32u8,
101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 111u8, 116u8,
104u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 46u8, 56u8, 78u8,
111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 2u8,
4u8, 68u8, 78u8, 111u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 46u8, 60u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8,
120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 3u8, 4u8, 144u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 44u8, 32u8, 98u8, 117u8,
116u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8,
101u8, 100u8, 46u8, 68u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 4u8, 4u8, 76u8, 68u8, 117u8, 112u8, 108u8,
105u8, 99u8, 97u8, 116u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
46u8, 84u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 86u8, 111u8,
116u8, 105u8, 110u8, 103u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 5u8, 4u8, 96u8, 77u8, 105u8,
115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8,
103u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 80u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 0u8, 6u8, 4u8,
148u8, 80u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 32u8, 109u8, 117u8,
115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8,
108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 46u8, 60u8, 70u8, 105u8, 114u8, 115u8,
116u8, 86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 0u8, 7u8, 12u8, 252u8,
70u8, 105u8, 114u8, 115u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 111u8, 110u8, 32u8,
97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 99u8, 114u8, 101u8,
97u8, 116u8, 101u8, 115u8, 32u8, 105u8, 116u8, 44u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8,
32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8,
114u8, 111u8, 118u8, 97u8, 108u8, 46u8, 1u8, 1u8, 65u8, 108u8, 108u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 109u8, 111u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8,
101u8, 32u8, 115u8, 111u8, 109u8, 101u8, 116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 97u8, 115u8,
32u8, 34u8, 71u8, 67u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 34u8, 46u8,
252u8, 84u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 101u8, 46u8, 103u8,
46u8, 44u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 44u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8,
105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8,
115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 42u8, 97u8, 112u8, 112u8,
114u8, 111u8, 118u8, 101u8, 100u8, 42u8, 46u8, 84u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8,
100u8, 0u8, 8u8, 4u8, 180u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8,
101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 0u8, 77u8, 8u8, 8u8, 48u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 20u8, 69u8, 114u8, 114u8, 111u8,
114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 84u8, 79u8, 110u8, 108u8, 121u8, 80u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 65u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 0u8, 0u8, 4u8, 176u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8, 114u8, 105u8, 109u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8,
97u8, 116u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 4u8, 124u8, 71u8, 114u8,
111u8, 117u8, 112u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8,
32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
46u8, 48u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8,
2u8, 4u8, 164u8, 67u8, 97u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8,
80u8, 76u8, 97u8, 115u8, 116u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 97u8, 110u8, 110u8,
111u8, 116u8, 81u8, 117u8, 105u8, 116u8, 0u8, 3u8, 4u8, 168u8, 76u8, 97u8, 115u8, 116u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8,
110u8, 111u8, 116u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 88u8, 77u8, 105u8, 115u8, 115u8,
105u8, 110u8, 103u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 0u8, 4u8, 4u8, 76u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 104u8, 65u8, 99u8,
116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8,
105u8, 116u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 5u8, 4u8, 93u8, 1u8,
84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 46u8, 104u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 0u8, 6u8, 4u8, 21u8, 1u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 119u8, 97u8,
115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8,
32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 108u8,
105u8, 109u8, 105u8, 116u8, 46u8, 0u8, 81u8, 8u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 20u8, 69u8, 114u8,
114u8, 111u8, 114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 36u8, 52u8, 68u8, 117u8, 112u8,
108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 86u8, 111u8, 116u8, 101u8, 0u8, 0u8, 4u8, 128u8, 68u8,
117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8,
1u8, 8u8, 136u8, 65u8, 32u8, 68u8, 73u8, 68u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8,
112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 212u8, 84u8, 104u8, 101u8, 32u8, 68u8,
73u8, 68u8, 32u8, 109u8, 97u8, 121u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 98u8,
101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8, 115u8,
111u8, 109u8, 101u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8,
101u8, 120u8, 116u8, 46u8, 56u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 2u8, 4u8, 68u8, 78u8, 111u8, 32u8, 115u8, 117u8, 99u8,
104u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 60u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8,
3u8, 4u8, 144u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 101u8, 120u8, 105u8,
115u8, 116u8, 115u8, 44u8, 32u8, 98u8, 117u8, 116u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 68u8, 68u8, 117u8, 112u8,
108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
0u8, 4u8, 4u8, 76u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 84u8, 77u8, 105u8, 115u8, 109u8, 97u8,
116u8, 99u8, 104u8, 101u8, 100u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 73u8, 110u8, 100u8,
101u8, 120u8, 0u8, 5u8, 4u8, 96u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 101u8,
100u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
46u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 80u8, 114u8, 111u8, 112u8, 111u8,
114u8, 116u8, 105u8, 111u8, 110u8, 0u8, 6u8, 4u8, 148u8, 80u8, 114u8, 111u8, 112u8, 111u8, 114u8,
116u8, 105u8, 111u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8,
32u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 46u8, 60u8, 70u8, 105u8, 114u8, 115u8, 116u8, 86u8, 111u8, 116u8, 101u8, 82u8,
101u8, 106u8, 101u8, 99u8, 116u8, 0u8, 7u8, 12u8, 252u8, 70u8, 105u8, 114u8, 115u8, 116u8, 32u8,
118u8, 111u8, 116u8, 101u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 115u8, 32u8, 105u8,
116u8, 44u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8,
98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 97u8, 108u8, 46u8,
1u8, 1u8, 65u8, 108u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8,
111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 32u8, 115u8, 111u8, 109u8, 101u8,
116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 97u8, 115u8, 32u8, 34u8, 71u8, 67u8, 32u8, 109u8, 97u8,
106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 34u8, 46u8, 252u8, 84u8, 111u8, 32u8, 114u8, 101u8,
106u8, 101u8, 99u8, 116u8, 32u8, 101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 97u8, 32u8, 80u8, 73u8,
80u8, 44u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8,
114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
98u8, 101u8, 32u8, 42u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 42u8, 46u8, 84u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8,
82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 0u8, 8u8, 4u8, 180u8, 77u8, 97u8, 120u8, 105u8,
109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 0u8, 85u8,
8u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8,
20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 84u8,
79u8, 110u8, 108u8, 121u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8,
65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 0u8, 0u8, 4u8, 176u8, 79u8, 110u8, 108u8, 121u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 68u8,
117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
0u8, 1u8, 4u8, 124u8, 71u8, 114u8, 111u8, 117u8, 112u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 46u8, 48u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 0u8, 2u8, 4u8, 164u8, 67u8, 97u8, 110u8, 39u8, 116u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 80u8, 76u8, 97u8, 115u8, 116u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 81u8, 117u8, 105u8, 116u8, 0u8, 3u8,
4u8, 168u8, 76u8, 97u8, 115u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8,
101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 113u8, 117u8, 105u8, 116u8,
46u8, 88u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 67u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 4u8, 4u8, 76u8, 77u8,
105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 68u8, 73u8, 68u8, 104u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 0u8, 5u8, 4u8, 93u8, 1u8, 84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8,
114u8, 111u8, 117u8, 112u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 46u8, 104u8, 65u8, 99u8, 116u8, 105u8,
118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8,
79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 6u8, 4u8, 21u8, 1u8, 65u8, 99u8,
116u8, 105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 108u8, 105u8,
109u8, 105u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8,
114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8,
32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 0u8, 89u8, 8u8, 8u8,
64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8,
1u8, 36u8, 52u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 86u8, 111u8, 116u8,
101u8, 0u8, 0u8, 4u8, 128u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 32u8,
118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8,
97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8, 77u8,
101u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 8u8, 136u8, 65u8, 32u8, 68u8, 73u8, 68u8, 32u8,
105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8,
212u8, 84u8, 104u8, 101u8, 32u8, 68u8, 73u8, 68u8, 32u8, 109u8, 97u8, 121u8, 32u8, 101u8, 105u8,
116u8, 104u8, 101u8, 114u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 32u8, 111u8, 114u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 111u8, 116u8, 104u8, 101u8,
114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 46u8, 56u8, 78u8, 111u8, 83u8,
117u8, 99u8, 104u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 2u8, 4u8, 68u8,
78u8, 111u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 46u8, 60u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8, 120u8,
112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 3u8, 4u8, 144u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 44u8, 32u8, 98u8, 117u8, 116u8,
32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 46u8, 68u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 4u8, 4u8, 76u8, 68u8, 117u8, 112u8, 108u8, 105u8,
99u8, 97u8, 116u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8,
84u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 86u8, 111u8, 116u8,
105u8, 110u8, 103u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 5u8, 4u8, 96u8, 77u8, 105u8, 115u8,
109u8, 97u8, 116u8, 99u8, 104u8, 101u8, 100u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8,
32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 80u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 0u8, 6u8, 4u8, 148u8,
80u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 46u8, 60u8, 70u8, 105u8, 114u8, 115u8, 116u8,
86u8, 111u8, 116u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 0u8, 7u8, 12u8, 252u8, 70u8,
105u8, 114u8, 115u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 111u8, 110u8, 32u8, 97u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 99u8, 114u8, 101u8, 97u8,
116u8, 101u8, 115u8, 32u8, 105u8, 116u8, 44u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8, 32u8,
109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8,
114u8, 111u8, 118u8, 97u8, 108u8, 46u8, 1u8, 1u8, 65u8, 108u8, 108u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 109u8, 111u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8,
101u8, 32u8, 115u8, 111u8, 109u8, 101u8, 116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 97u8, 115u8,
32u8, 34u8, 71u8, 67u8, 32u8, 109u8, 97u8, 106u8, 111u8, 114u8, 105u8, 116u8, 121u8, 34u8, 46u8,
252u8, 84u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8, 101u8, 46u8, 103u8,
46u8, 44u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 44u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8,
105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 32u8,
115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 42u8, 97u8, 112u8, 112u8,
114u8, 111u8, 118u8, 101u8, 100u8, 42u8, 46u8, 84u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8,
100u8, 0u8, 8u8, 4u8, 180u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8,
101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 0u8, 93u8, 8u8, 8u8, 48u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 111u8, 117u8, 112u8, 20u8, 69u8, 114u8, 114u8, 111u8,
114u8, 8u8, 4u8, 84u8, 0u8, 4u8, 73u8, 0u8, 1u8, 28u8, 84u8, 79u8, 110u8, 108u8, 121u8, 80u8,
114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 65u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 0u8, 0u8, 4u8, 176u8, 79u8, 110u8, 108u8, 121u8, 32u8, 112u8, 114u8, 105u8, 109u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8,
97u8, 116u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 4u8, 124u8, 71u8, 114u8,
111u8, 117u8, 112u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 97u8, 115u8,
32u8, 97u8, 100u8, 100u8, 101u8, 100u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
46u8, 48u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 0u8,
2u8, 4u8, 164u8, 67u8, 97u8, 110u8, 39u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8,
32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8,
80u8, 76u8, 97u8, 115u8, 116u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 67u8, 97u8, 110u8, 110u8,
111u8, 116u8, 81u8, 117u8, 105u8, 116u8, 0u8, 3u8, 4u8, 168u8, 76u8, 97u8, 115u8, 116u8, 32u8,
109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8,
110u8, 111u8, 116u8, 32u8, 113u8, 117u8, 105u8, 116u8, 46u8, 88u8, 77u8, 105u8, 115u8, 115u8,
105u8, 110u8, 103u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 0u8, 4u8, 4u8, 76u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 104u8, 65u8, 99u8,
116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8,
105u8, 116u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 5u8, 4u8, 93u8, 1u8,
84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
99u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 103u8, 114u8, 111u8, 117u8, 112u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 46u8, 104u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 0u8, 6u8, 4u8, 21u8, 1u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 119u8, 97u8,
115u8, 32u8, 103u8, 114u8, 101u8, 97u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8,
32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 108u8,
105u8, 109u8, 105u8, 116u8, 46u8, 0u8, 97u8, 8u8, 0u8, 0u8, 4u8, 8u8, 0u8, 105u8, 1u8, 0u8,
101u8, 8u8, 0u8, 0u8, 4u8, 8u8, 0u8, 32u8, 0u8, 105u8, 8u8, 0u8, 0u8, 4u8, 8u8, 0u8, 201u8, 5u8,
0u8, 109u8, 8u8, 0u8, 0u8, 4u8, 12u8, 0u8, 105u8, 1u8, 32u8, 0u8, 113u8, 8u8, 8u8, 60u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
60u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 4u8, 4u8, 84u8, 1u8, 32u8, 0u8, 20u8, 1u8, 36u8, 97u8, 112u8, 112u8, 114u8, 111u8,
118u8, 97u8, 108u8, 115u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8, 1u8, 40u8, 114u8, 101u8,
106u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 1u8, 12u8, 117u8, 54u8, 52u8, 0u8,
1u8, 24u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 117u8, 8u8, 1u8, 56u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 24u8, 101u8,
120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 36u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8,
60u8, 84u8, 62u8, 0u8, 1u8, 40u8, 97u8, 117u8, 116u8, 111u8, 95u8, 99u8, 108u8, 111u8, 115u8,
101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 117u8, 8u8, 8u8, 60u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
56u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 117u8,
115u8, 0u8, 1u8, 20u8, 28u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 0u8, 0u8, 0u8, 60u8,
65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 79u8, 114u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 0u8, 1u8, 0u8, 76u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 83u8,
117u8, 99u8, 99u8, 101u8, 115u8, 115u8, 102u8, 117u8, 108u8, 0u8, 2u8, 0u8, 60u8, 69u8, 120u8,
101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 3u8,
0u8, 32u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 0u8, 4u8, 0u8, 0u8, 121u8, 8u8,
8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8,
8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 125u8, 8u8, 8u8, 60u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 20u8, 69u8, 114u8, 114u8,
111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 100u8, 40u8, 67u8, 100u8, 100u8, 77u8, 105u8, 115u8,
115u8, 105u8, 110u8, 103u8, 0u8, 0u8, 4u8, 196u8, 84u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 67u8, 68u8,
68u8, 39u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 60u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8,
103u8, 0u8, 1u8, 4u8, 112u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 46u8, 52u8, 68u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 69u8,
114u8, 114u8, 111u8, 114u8, 0u8, 2u8, 4u8, 68u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 36u8, 78u8, 111u8, 83u8,
105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 0u8, 3u8, 4u8, 44u8, 78u8, 111u8, 32u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 115u8, 46u8, 116u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
100u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8, 79u8, 117u8, 116u8,
79u8, 102u8, 66u8, 111u8, 117u8, 110u8, 100u8, 115u8, 0u8, 4u8, 4u8, 160u8, 84u8, 111u8, 111u8,
32u8, 102u8, 101u8, 119u8, 32u8, 111u8, 114u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8,
110u8, 121u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 115u8, 105u8,
103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 115u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8,
83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 0u8, 5u8, 4u8, 52u8, 78u8, 111u8, 116u8, 32u8, 97u8,
32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 56u8, 78u8, 111u8, 83u8, 117u8, 99u8,
104u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 0u8, 6u8, 4u8, 68u8, 78u8, 111u8,
32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8,
46u8, 64u8, 78u8, 111u8, 116u8, 69u8, 110u8, 111u8, 117u8, 103u8, 104u8, 83u8, 105u8, 103u8,
110u8, 101u8, 114u8, 115u8, 0u8, 7u8, 4u8, 76u8, 78u8, 111u8, 116u8, 32u8, 101u8, 110u8, 111u8,
117u8, 103u8, 104u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 46u8, 52u8, 78u8,
111u8, 110u8, 99u8, 101u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 8u8, 4u8,
68u8, 65u8, 32u8, 110u8, 111u8, 110u8, 99u8, 101u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8,
108u8, 111u8, 119u8, 46u8, 48u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 86u8, 111u8,
116u8, 101u8, 100u8, 0u8, 9u8, 4u8, 56u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
118u8, 111u8, 116u8, 101u8, 100u8, 46u8, 56u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
65u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 0u8, 10u8, 4u8, 68u8, 65u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 32u8, 97u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 68u8, 70u8,
97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 67u8, 104u8, 97u8, 114u8, 103u8, 101u8, 70u8,
101u8, 101u8, 0u8, 11u8, 4u8, 160u8, 67u8, 111u8, 117u8, 108u8, 100u8, 110u8, 39u8, 116u8, 32u8,
99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 46u8, 72u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 78u8, 111u8,
116u8, 67u8, 114u8, 101u8, 97u8, 116u8, 111u8, 114u8, 0u8, 12u8, 4u8, 192u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 39u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
111u8, 114u8, 46u8, 64u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 78u8, 111u8, 116u8, 65u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 0u8, 13u8, 4u8, 37u8, 1u8, 67u8, 104u8, 97u8, 110u8,
103u8, 105u8, 110u8, 103u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8,
112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8,
32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 105u8, 115u8, 32u8, 97u8,
32u8, 112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 46u8, 116u8,
83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 76u8,
105u8, 110u8, 107u8, 101u8, 100u8, 84u8, 111u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 0u8, 14u8, 4u8, 17u8, 1u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 32u8, 105u8, 115u8,
32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 107u8, 101u8, 121u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 46u8, 116u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 76u8, 105u8, 110u8, 107u8, 101u8, 100u8, 84u8, 111u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 0u8, 15u8, 4u8, 21u8, 1u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8,
32u8, 105u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
107u8, 101u8, 121u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8,
101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 128u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 84u8, 111u8, 76u8,
105u8, 110u8, 107u8, 84u8, 111u8, 73u8, 116u8, 115u8, 101u8, 108u8, 102u8, 0u8, 16u8, 4u8, 188u8,
77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 100u8, 100u8, 32u8,
105u8, 116u8, 115u8, 101u8, 108u8, 102u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 115u8, 105u8,
103u8, 110u8, 101u8, 114u8, 46u8, 88u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 67u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
0u8, 17u8, 4u8, 88u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8,
32u8, 105u8, 115u8, 32u8, 109u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 52u8, 78u8, 111u8,
116u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 0u8, 18u8, 4u8, 244u8,
84u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8,
97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 109u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 100u8, 105u8, 100u8, 92u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 65u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8,
0u8, 19u8, 4u8, 116u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 97u8,
115u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 101u8, 97u8, 114u8,
108u8, 105u8, 101u8, 114u8, 60u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 69u8,
120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 20u8, 4u8, 80u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8,
100u8, 92u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 65u8, 108u8, 114u8, 101u8,
97u8, 100u8, 121u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 0u8, 21u8, 4u8, 116u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 101u8, 97u8, 114u8, 108u8, 105u8, 101u8,
114u8, 92u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 77u8, 105u8, 115u8, 115u8,
105u8, 110u8, 103u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 22u8, 4u8,
156u8, 77u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 64u8, 70u8,
97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 0u8, 23u8, 4u8, 120u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8,
32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 102u8, 97u8, 105u8, 108u8, 115u8, 56u8, 84u8, 111u8, 111u8, 77u8, 97u8, 110u8, 121u8, 83u8,
105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 0u8, 24u8, 4u8, 108u8, 77u8, 111u8, 114u8, 101u8, 32u8,
115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 114u8,
101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 46u8, 4u8, 92u8, 77u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 32u8, 101u8, 114u8,
114u8, 111u8, 114u8, 115u8, 46u8, 129u8, 8u8, 0u8, 0u8, 4u8, 8u8, 0u8, 16u8, 0u8, 133u8, 8u8,
8u8, 52u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8,
101u8, 56u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 68u8, 101u8, 116u8, 97u8,
105u8, 108u8, 4u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
1u8, 16u8, 0u8, 16u8, 1u8, 24u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 24u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8,
137u8, 8u8, 1u8, 56u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 83u8, 116u8, 97u8,
116u8, 117u8, 115u8, 0u8, 1u8, 60u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8,
110u8, 95u8, 98u8, 108u8, 111u8, 99u8, 107u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8,
78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 28u8, 116u8, 120u8, 95u8, 104u8, 97u8, 115u8,
104u8, 36u8, 1u8, 16u8, 72u8, 50u8, 53u8, 54u8, 0u8, 0u8, 137u8, 8u8, 8u8, 52u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 56u8, 66u8, 114u8,
105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 20u8,
24u8, 65u8, 98u8, 115u8, 101u8, 110u8, 116u8, 0u8, 0u8, 0u8, 28u8, 80u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 1u8, 0u8, 24u8, 70u8, 114u8,
111u8, 122u8, 101u8, 110u8, 0u8, 2u8, 0u8, 40u8, 84u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8,
107u8, 101u8, 100u8, 0u8, 3u8, 0u8, 28u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 0u8,
4u8, 0u8, 0u8, 141u8, 8u8, 0u8, 0u8, 4u8, 8u8, 24u8, 16u8, 0u8, 145u8, 8u8, 8u8, 52u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 28u8, 86u8,
101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8,
0u8, 149u8, 8u8, 8u8, 52u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 52u8,
64u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 78u8, 111u8, 116u8,
83u8, 101u8, 116u8, 0u8, 0u8, 4u8, 164u8, 84u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8,
103u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8,
97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 115u8, 101u8, 116u8, 46u8, 36u8, 66u8, 97u8, 100u8, 67u8, 97u8, 108u8, 108u8, 101u8, 114u8,
0u8, 1u8, 4u8, 216u8, 84u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8,
105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
46u8, 32u8, 66u8, 97u8, 100u8, 65u8, 100u8, 109u8, 105u8, 110u8, 0u8, 2u8, 4u8, 144u8, 84u8,
104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 32u8, 97u8,
100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 40u8, 78u8, 111u8, 86u8, 97u8, 108u8, 105u8,
100u8, 67u8, 100u8, 100u8, 0u8, 3u8, 4u8, 140u8, 84u8, 104u8, 101u8, 32u8, 114u8, 101u8, 99u8,
105u8, 112u8, 105u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 32u8, 104u8, 97u8, 115u8, 32u8,
110u8, 111u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 46u8, 88u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 0u8, 4u8, 4u8, 57u8, 1u8, 84u8, 104u8, 101u8,
32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8,
101u8, 110u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 110u8, 100u8, 115u8, 32u8, 109u8, 105u8, 110u8,
116u8, 101u8, 100u8, 46u8, 48u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
122u8, 101u8, 100u8, 0u8, 5u8, 4u8, 148u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 112u8, 101u8, 114u8, 102u8, 111u8, 114u8,
109u8, 32u8, 97u8, 110u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8,
46u8, 24u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 0u8, 6u8, 4u8, 116u8, 84u8, 104u8, 101u8,
32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 36u8, 78u8,
111u8, 116u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 0u8, 7u8, 4u8, 100u8, 84u8, 104u8, 101u8,
32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 32u8, 70u8, 114u8, 111u8, 122u8, 101u8,
110u8, 84u8, 120u8, 0u8, 8u8, 4u8, 104u8, 84u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 102u8, 114u8, 111u8,
122u8, 101u8, 110u8, 46u8, 72u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 76u8, 105u8, 109u8,
105u8, 116u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 0u8, 9u8, 4u8, 228u8, 84u8, 104u8,
101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 39u8, 115u8, 32u8, 109u8,
105u8, 110u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 104u8, 97u8,
115u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 32u8,
79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 10u8, 4u8, 172u8, 84u8, 104u8, 101u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 39u8, 115u8, 32u8, 109u8, 105u8,
110u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 104u8, 97u8, 115u8,
32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 56u8, 68u8,
105u8, 118u8, 105u8, 115u8, 105u8, 111u8, 110u8, 66u8, 121u8, 90u8, 101u8, 114u8, 111u8, 0u8,
11u8, 4u8, 204u8, 84u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 105u8, 110u8,
116u8, 101u8, 114u8, 118u8, 97u8, 108u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 105u8, 115u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 32u8, 67u8, 97u8, 110u8,
110u8, 111u8, 116u8, 32u8, 100u8, 105u8, 118u8, 105u8, 100u8, 101u8, 46u8, 48u8, 84u8, 105u8,
109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 84u8, 120u8, 0u8, 12u8, 4u8, 120u8, 84u8,
104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
32u8, 105u8, 115u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8,
46u8, 0u8, 153u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8,
97u8, 107u8, 105u8, 110u8, 103u8, 52u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 76u8,
101u8, 100u8, 103u8, 101u8, 114u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 1u8, 0u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 20u8, 1u8,
20u8, 115u8, 116u8, 97u8, 115u8, 104u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 0u8, 1u8, 20u8, 116u8, 111u8, 116u8, 97u8, 108u8, 201u8, 1u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 24u8, 97u8, 99u8, 116u8, 105u8, 118u8,
101u8, 201u8, 1u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 117u8,
110u8, 108u8, 111u8, 99u8, 107u8, 105u8, 110u8, 103u8, 157u8, 8u8, 1u8, 100u8, 86u8, 101u8, 99u8,
60u8, 85u8, 110u8, 108u8, 111u8, 99u8, 107u8, 67u8, 104u8, 117u8, 110u8, 107u8, 60u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 62u8, 62u8, 0u8, 1u8, 60u8, 99u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 53u8, 4u8, 1u8, 52u8, 86u8,
101u8, 99u8, 60u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 62u8, 0u8, 0u8, 157u8,
8u8, 0u8, 0u8, 2u8, 161u8, 8u8, 0u8, 161u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 44u8, 85u8, 110u8, 108u8, 111u8,
99u8, 107u8, 67u8, 104u8, 117u8, 110u8, 107u8, 4u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 1u8, 24u8, 0u8, 8u8, 1u8, 20u8, 118u8, 97u8, 108u8, 117u8, 101u8, 201u8, 1u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 12u8, 101u8, 114u8, 97u8, 121u8, 4u8, 1u8,
32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 0u8, 165u8, 8u8, 8u8, 56u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8,
44u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 4u8, 36u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 12u8, 1u8, 28u8, 116u8, 97u8,
114u8, 103u8, 101u8, 116u8, 115u8, 232u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 48u8, 115u8, 117u8, 98u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 95u8, 105u8, 110u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 1u8, 40u8, 115u8, 117u8, 112u8, 112u8, 114u8, 101u8, 115u8, 115u8,
101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 169u8, 8u8, 8u8, 56u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8,
52u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 69u8, 114u8, 97u8, 73u8, 110u8, 102u8, 111u8, 0u8,
0u8, 8u8, 1u8, 20u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8,
110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 20u8, 115u8, 116u8, 97u8, 114u8, 116u8, 240u8, 1u8, 44u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 54u8, 52u8, 62u8, 0u8, 0u8, 173u8, 8u8,
0u8, 0u8, 4u8, 8u8, 16u8, 0u8, 0u8, 177u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 60u8, 69u8, 114u8, 97u8, 82u8,
101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 111u8, 105u8, 110u8, 116u8, 115u8, 4u8, 36u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 8u8, 1u8, 20u8, 116u8, 111u8,
116u8, 97u8, 108u8, 16u8, 1u8, 44u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 111u8, 105u8,
110u8, 116u8, 0u8, 1u8, 40u8, 105u8, 110u8, 100u8, 105u8, 118u8, 105u8, 100u8, 117u8, 97u8,
108u8, 181u8, 8u8, 1u8, 128u8, 66u8, 84u8, 114u8, 101u8, 101u8, 77u8, 97u8, 112u8, 60u8, 65u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 82u8, 101u8, 119u8, 97u8, 114u8,
100u8, 80u8, 111u8, 105u8, 110u8, 116u8, 62u8, 0u8, 0u8, 181u8, 8u8, 4u8, 32u8, 66u8, 84u8,
114u8, 101u8, 101u8, 77u8, 97u8, 112u8, 8u8, 4u8, 75u8, 1u8, 0u8, 4u8, 86u8, 1u8, 16u8, 0u8, 4u8,
0u8, 185u8, 8u8, 0u8, 0u8, 0u8, 185u8, 8u8, 0u8, 0u8, 2u8, 129u8, 8u8, 0u8, 189u8, 8u8, 8u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8,
103u8, 28u8, 70u8, 111u8, 114u8, 99u8, 105u8, 110u8, 103u8, 0u8, 1u8, 16u8, 40u8, 78u8, 111u8,
116u8, 70u8, 111u8, 114u8, 99u8, 105u8, 110u8, 103u8, 0u8, 0u8, 0u8, 32u8, 70u8, 111u8, 114u8,
99u8, 101u8, 78u8, 101u8, 119u8, 0u8, 1u8, 0u8, 36u8, 70u8, 111u8, 114u8, 99u8, 101u8, 78u8,
111u8, 110u8, 101u8, 0u8, 2u8, 0u8, 44u8, 70u8, 111u8, 114u8, 99u8, 101u8, 65u8, 108u8, 119u8,
97u8, 121u8, 115u8, 0u8, 3u8, 0u8, 0u8, 193u8, 8u8, 0u8, 0u8, 2u8, 197u8, 8u8, 0u8, 197u8, 8u8,
8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8,
110u8, 103u8, 56u8, 85u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 83u8, 108u8,
97u8, 115u8, 104u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8,
0u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 20u8, 1u8, 36u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 12u8, 111u8, 119u8, 110u8, 24u8, 1u8, 28u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 24u8, 111u8, 116u8, 104u8, 101u8, 114u8, 115u8,
201u8, 8u8, 1u8, 100u8, 86u8, 101u8, 99u8, 60u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 44u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 41u8, 62u8, 0u8,
1u8, 36u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 114u8, 115u8, 232u8, 1u8, 56u8, 86u8,
101u8, 99u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8,
24u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 201u8, 8u8, 0u8, 0u8, 2u8, 205u8, 8u8, 0u8, 205u8, 8u8, 0u8, 0u8, 4u8,
8u8, 0u8, 24u8, 0u8, 209u8, 8u8, 0u8, 0u8, 4u8, 8u8, 137u8, 1u8, 24u8, 0u8, 213u8, 8u8, 12u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8,
103u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 52u8, 83u8, 108u8, 97u8,
115u8, 104u8, 105u8, 110u8, 103u8, 83u8, 112u8, 97u8, 110u8, 115u8, 0u8, 0u8, 16u8, 1u8, 40u8,
115u8, 112u8, 97u8, 110u8, 95u8, 105u8, 110u8, 100u8, 101u8, 120u8, 16u8, 1u8, 36u8, 83u8, 112u8,
97u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 40u8, 108u8, 97u8, 115u8, 116u8, 95u8,
115u8, 116u8, 97u8, 114u8, 116u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8,
120u8, 0u8, 1u8, 72u8, 108u8, 97u8, 115u8, 116u8, 95u8, 110u8, 111u8, 110u8, 122u8, 101u8, 114u8,
111u8, 95u8, 115u8, 108u8, 97u8, 115u8, 104u8, 16u8, 1u8, 32u8, 69u8, 114u8, 97u8, 73u8, 110u8,
100u8, 101u8, 120u8, 0u8, 1u8, 20u8, 112u8, 114u8, 105u8, 111u8, 114u8, 53u8, 4u8, 1u8, 52u8,
86u8, 101u8, 99u8, 60u8, 69u8, 114u8, 97u8, 73u8, 110u8, 100u8, 101u8, 120u8, 62u8, 0u8, 0u8,
217u8, 8u8, 12u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8,
105u8, 110u8, 103u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 40u8, 83u8,
112u8, 97u8, 110u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 4u8, 28u8, 66u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 8u8, 1u8, 28u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8,
100u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 32u8, 112u8, 97u8,
105u8, 100u8, 95u8, 111u8, 117u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 221u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8,
116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 56u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 73u8, 100u8, 1u8, 0u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8,
12u8, 1u8, 60u8, 101u8, 108u8, 101u8, 99u8, 116u8, 101u8, 100u8, 95u8, 115u8, 116u8, 97u8, 115u8,
104u8, 101u8, 115u8, 232u8, 1u8, 56u8, 86u8, 101u8, 99u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 1u8, 36u8, 101u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8,
101u8, 115u8, 189u8, 1u8, 1u8, 184u8, 86u8, 101u8, 99u8, 60u8, 40u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 69u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8,
101u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 44u8, 32u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 62u8, 41u8, 62u8, 0u8, 1u8, 28u8, 99u8, 111u8, 109u8, 112u8,
117u8, 116u8, 101u8, 133u8, 1u8, 1u8, 60u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8,
67u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 0u8, 0u8, 225u8, 8u8, 8u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 56u8, 69u8,
108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 4u8,
44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 1u8,
8u8, 24u8, 67u8, 108u8, 111u8, 115u8, 101u8, 100u8, 0u8, 0u8, 0u8, 16u8, 79u8, 112u8, 101u8,
110u8, 4u8, 0u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 0u8, 1u8, 0u8, 0u8, 229u8, 8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 100u8, 80u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 80u8, 114u8, 101u8, 102u8, 115u8, 0u8, 0u8, 8u8, 1u8, 56u8, 105u8, 110u8, 116u8, 101u8,
110u8, 100u8, 101u8, 100u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 1u8, 52u8, 114u8, 117u8, 110u8, 110u8, 105u8, 110u8, 103u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 233u8, 8u8, 8u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 82u8,
101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 115u8, 0u8, 1u8, 32u8, 52u8, 86u8, 49u8, 95u8, 48u8,
95u8, 48u8, 65u8, 110u8, 99u8, 105u8, 101u8, 110u8, 116u8, 0u8, 0u8, 0u8, 24u8, 86u8, 50u8, 95u8,
48u8, 95u8, 48u8, 0u8, 1u8, 0u8, 24u8, 86u8, 51u8, 95u8, 48u8, 95u8, 48u8, 0u8, 2u8, 0u8, 24u8,
86u8, 52u8, 95u8, 48u8, 95u8, 48u8, 0u8, 3u8, 0u8, 24u8, 86u8, 53u8, 95u8, 48u8, 95u8, 48u8, 0u8,
4u8, 0u8, 24u8, 86u8, 54u8, 95u8, 48u8, 95u8, 48u8, 0u8, 5u8, 0u8, 24u8, 86u8, 54u8, 95u8, 48u8,
95u8, 49u8, 0u8, 6u8, 0u8, 24u8, 86u8, 55u8, 95u8, 48u8, 95u8, 48u8, 0u8, 7u8, 0u8, 0u8, 237u8,
8u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 107u8, 105u8,
110u8, 103u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 168u8, 52u8,
78u8, 111u8, 116u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 0u8,
0u8, 4u8, 100u8, 78u8, 111u8, 116u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8,
108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 32u8, 78u8,
111u8, 116u8, 83u8, 116u8, 97u8, 115u8, 104u8, 0u8, 1u8, 4u8, 80u8, 78u8, 111u8, 116u8, 32u8,
97u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
46u8, 52u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 66u8, 111u8, 110u8, 100u8, 101u8,
100u8, 0u8, 2u8, 4u8, 96u8, 83u8, 116u8, 97u8, 115u8, 104u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 46u8,
52u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 80u8, 97u8, 105u8, 114u8, 101u8, 100u8, 0u8,
3u8, 4u8, 116u8, 67u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8,
105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 97u8, 105u8,
114u8, 101u8, 100u8, 46u8, 48u8, 69u8, 109u8, 112u8, 116u8, 121u8, 84u8, 97u8, 114u8, 103u8,
101u8, 116u8, 115u8, 0u8, 4u8, 4u8, 96u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 32u8,
99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 101u8, 109u8, 112u8, 116u8,
121u8, 46u8, 68u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 108u8, 97u8, 115u8,
104u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 5u8, 4u8, 132u8, 83u8, 108u8, 97u8, 115u8, 104u8,
32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8,
111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 111u8, 117u8, 110u8, 100u8, 115u8, 46u8,
68u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 86u8,
97u8, 108u8, 117u8, 101u8, 0u8, 6u8, 4u8, 200u8, 67u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8,
32u8, 98u8, 111u8, 110u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 109u8,
105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
46u8, 48u8, 78u8, 111u8, 77u8, 111u8, 114u8, 101u8, 67u8, 104u8, 117u8, 110u8, 107u8, 115u8, 0u8,
7u8, 4u8, 144u8, 67u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 117u8, 110u8, 108u8, 111u8,
99u8, 107u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 46u8, 52u8, 78u8, 111u8, 85u8, 110u8,
108u8, 111u8, 99u8, 107u8, 67u8, 104u8, 117u8, 110u8, 107u8, 0u8, 8u8, 4u8, 160u8, 67u8, 97u8,
110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 114u8, 101u8, 98u8, 111u8, 110u8, 100u8, 32u8, 119u8,
105u8, 116u8, 104u8, 111u8, 117u8, 116u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 105u8,
110u8, 103u8, 32u8, 99u8, 104u8, 117u8, 110u8, 107u8, 115u8, 46u8, 48u8, 70u8, 117u8, 110u8,
100u8, 101u8, 100u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 0u8, 9u8, 4u8, 200u8, 65u8, 116u8,
116u8, 101u8, 109u8, 112u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 116u8, 97u8,
114u8, 103u8, 101u8, 116u8, 32u8, 97u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 104u8, 97u8, 115u8, 32u8,
102u8, 117u8, 110u8, 100u8, 115u8, 46u8, 72u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
69u8, 114u8, 97u8, 84u8, 111u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 0u8, 10u8, 4u8, 88u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 101u8, 114u8, 97u8, 32u8, 116u8, 111u8,
32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 72u8, 78u8, 111u8, 116u8, 83u8, 111u8,
114u8, 116u8, 101u8, 100u8, 65u8, 110u8, 100u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 0u8,
11u8, 4u8, 128u8, 73u8, 116u8, 101u8, 109u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8,
116u8, 32u8, 115u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 117u8,
110u8, 105u8, 113u8, 117u8, 101u8, 46u8, 56u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
67u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 0u8, 12u8, 4u8, 9u8, 1u8, 82u8, 101u8, 119u8,
97u8, 114u8, 100u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
101u8, 114u8, 97u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 124u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8,
105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 69u8, 97u8, 114u8, 108u8,
121u8, 83u8, 117u8, 98u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 0u8, 13u8, 4u8, 224u8,
84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8,
114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 99u8, 101u8,
105u8, 118u8, 101u8, 100u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 111u8, 112u8, 101u8, 110u8, 32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 46u8,
120u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8,
105u8, 111u8, 110u8, 87u8, 101u8, 97u8, 107u8, 83u8, 117u8, 98u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 0u8, 14u8, 4u8, 252u8, 84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 109u8,
105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 115u8, 32u8, 103u8, 111u8, 111u8, 100u8, 32u8,
97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 101u8, 32u8, 115u8, 116u8, 111u8,
114u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 76u8, 83u8,
110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 85u8, 110u8, 97u8, 118u8, 97u8, 105u8, 108u8,
97u8, 98u8, 108u8, 101u8, 0u8, 15u8, 4u8, 204u8, 84u8, 104u8, 101u8, 32u8, 115u8, 110u8, 97u8,
112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 119u8, 105u8,
110u8, 100u8, 111u8, 119u8, 32u8, 105u8, 115u8, 32u8, 109u8, 105u8, 115u8, 115u8, 105u8, 110u8,
103u8, 46u8, 128u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8,
99u8, 116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 87u8, 105u8, 110u8, 110u8,
101u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 16u8, 4u8, 172u8, 73u8, 110u8, 99u8, 111u8,
114u8, 114u8, 101u8, 99u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8,
32u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 101u8, 100u8, 46u8, 108u8, 79u8, 102u8,
102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8,
66u8, 111u8, 103u8, 117u8, 115u8, 87u8, 105u8, 110u8, 110u8, 101u8, 114u8, 0u8, 17u8, 8u8, 93u8,
1u8, 79u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8,
109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 115u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 99u8, 97u8, 110u8, 100u8, 105u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8,
110u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 40u8, 105u8, 110u8, 100u8, 101u8, 120u8,
32u8, 105u8, 115u8, 32u8, 111u8, 117u8, 116u8, 32u8, 111u8, 102u8, 32u8, 114u8, 97u8, 110u8,
103u8, 101u8, 52u8, 105u8, 110u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8,
41u8, 46u8, 112u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8,
116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 67u8, 111u8, 109u8, 112u8, 97u8,
99u8, 116u8, 0u8, 18u8, 8u8, 89u8, 1u8, 69u8, 114u8, 114u8, 111u8, 114u8, 32u8, 119u8, 104u8,
105u8, 108u8, 101u8, 32u8, 98u8, 117u8, 105u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 105u8, 103u8, 110u8, 109u8, 101u8, 110u8, 116u8, 32u8,
116u8, 121u8, 112u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 111u8, 109u8, 112u8, 97u8, 99u8, 116u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8,
97u8, 110u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 105u8, 102u8, 32u8, 97u8,
110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 164u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8,
97u8, 108u8, 105u8, 100u8, 44u8, 32u8, 111u8, 114u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 32u8, 95u8, 111u8, 118u8, 101u8,
114u8, 102u8, 108u8, 111u8, 119u8, 95u8, 46u8, 120u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8,
105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8,
115u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 0u8, 19u8, 4u8, 17u8, 1u8,
79u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8,
109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 110u8, 32u8,
97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 32u8, 111u8, 110u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 124u8, 79u8,
102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8,
111u8, 110u8, 0u8, 20u8, 4u8, 73u8, 1u8, 79u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 110u8,
111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8,
97u8, 110u8, 32u8, 101u8, 100u8, 103u8, 101u8, 32u8, 116u8, 111u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 110u8,
111u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 99u8, 104u8,
97u8, 105u8, 110u8, 46u8, 132u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8,
108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 108u8, 97u8, 115u8, 104u8, 101u8, 100u8,
78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 21u8, 8u8, 93u8, 1u8,
79u8, 110u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8,
109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8,
111u8, 114u8, 115u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 100u8, 103u8,
101u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 115u8, 117u8, 98u8,
109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 110u8, 111u8, 110u8, 45u8, 122u8,
101u8, 114u8, 111u8, 80u8, 115u8, 108u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 46u8, 116u8, 79u8, 102u8, 102u8,
99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 66u8,
111u8, 103u8, 117u8, 115u8, 83u8, 101u8, 108u8, 102u8, 86u8, 111u8, 116u8, 101u8, 0u8, 22u8, 4u8,
33u8, 1u8, 65u8, 32u8, 115u8, 101u8, 108u8, 102u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 109u8,
117u8, 115u8, 116u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 111u8, 114u8,
105u8, 103u8, 105u8, 110u8, 97u8, 116u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 116u8, 111u8,
32u8, 79u8, 78u8, 76u8, 89u8, 32u8, 116u8, 104u8, 101u8, 109u8, 115u8, 101u8, 108u8, 118u8,
101u8, 115u8, 46u8, 100u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 69u8, 100u8, 103u8,
101u8, 0u8, 23u8, 4u8, 65u8, 1u8, 84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 109u8, 105u8,
116u8, 116u8, 101u8, 100u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 117u8, 110u8, 107u8, 110u8, 111u8, 119u8, 110u8, 32u8, 101u8, 100u8, 103u8, 101u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 109u8, 111u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8,
115u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 110u8, 110u8, 101u8, 114u8, 115u8,
46u8, 104u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8, 101u8, 99u8,
116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 83u8, 99u8, 111u8, 114u8, 101u8,
0u8, 24u8, 4u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8,
100u8, 32u8, 115u8, 99u8, 111u8, 114u8, 101u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 97u8,
116u8, 97u8, 46u8, 132u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 69u8, 108u8,
101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 66u8, 111u8, 103u8, 117u8, 115u8, 69u8, 108u8, 101u8,
99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 105u8, 122u8, 101u8, 0u8, 25u8, 4u8, 116u8, 84u8, 104u8,
101u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 105u8, 122u8,
101u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 56u8,
67u8, 97u8, 108u8, 108u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8,
0u8, 26u8, 4u8, 69u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8,
97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8,
105u8, 109u8, 101u8, 32u8, 100u8, 117u8, 101u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 115u8,
116u8, 114u8, 105u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 111u8, 102u8, 32u8, 101u8,
108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8,
46u8, 88u8, 73u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 83u8, 108u8, 97u8, 115u8,
104u8, 105u8, 110u8, 103u8, 83u8, 112u8, 97u8, 110u8, 115u8, 0u8, 27u8, 4u8, 176u8, 73u8, 110u8,
99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 115u8,
112u8, 97u8, 110u8, 115u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 46u8,
52u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8,
0u8, 28u8, 4u8, 152u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
101u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8,
36u8, 78u8, 111u8, 116u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 0u8, 29u8, 4u8, 136u8, 80u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 115u8, 46u8, 32u8, 78u8, 111u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 0u8,
30u8, 4u8, 96u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 46u8, 96u8, 73u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 31u8, 4u8, 184u8, 71u8, 105u8, 118u8,
101u8, 110u8, 32u8, 112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
46u8, 104u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 86u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 67u8, 111u8, 109u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8,
0u8, 32u8, 4u8, 156u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 112u8,
114u8, 101u8, 102u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8,
110u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 46u8,
100u8, 83u8, 116u8, 97u8, 115u8, 104u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
68u8, 111u8, 101u8, 115u8, 78u8, 111u8, 116u8, 69u8, 120u8, 105u8, 115u8, 116u8, 0u8, 33u8, 4u8,
212u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 114u8, 32u8,
110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8, 115u8,
104u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 100u8, 111u8, 101u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 112u8, 83u8,
116u8, 97u8, 115u8, 104u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 78u8, 111u8,
116u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 0u8,
34u8, 4u8, 184u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 115u8, 116u8,
97u8, 115u8, 104u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 119u8,
97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 101u8, 100u8, 46u8, 84u8, 83u8, 116u8, 97u8, 115u8, 104u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 78u8, 111u8, 116u8, 67u8, 68u8, 68u8, 101u8, 100u8,
0u8, 35u8, 4u8, 120u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 115u8,
116u8, 97u8, 115u8, 104u8, 32u8, 119u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 67u8, 68u8,
68u8, 101u8, 100u8, 46u8, 100u8, 72u8, 105u8, 116u8, 73u8, 110u8, 116u8, 101u8, 110u8, 100u8,
101u8, 100u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 67u8, 111u8, 117u8,
110u8, 116u8, 0u8, 36u8, 4u8, 188u8, 82u8, 117u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8,
32u8, 104u8, 105u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8,
100u8, 101u8, 100u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 152u8, 73u8, 110u8, 116u8,
101u8, 110u8, 100u8, 101u8, 100u8, 67u8, 111u8, 117u8, 110u8, 116u8, 73u8, 115u8, 69u8, 120u8,
99u8, 101u8, 101u8, 100u8, 105u8, 110u8, 103u8, 67u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8,
117u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 0u8, 37u8, 4u8, 53u8, 1u8, 87u8, 104u8, 101u8,
110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 116u8, 101u8, 110u8, 100u8, 101u8, 100u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 116u8, 111u8, 32u8, 114u8, 117u8, 110u8,
32u8, 105u8, 115u8, 32u8, 62u8, 61u8, 32u8, 50u8, 47u8, 51u8, 32u8, 111u8, 102u8, 32u8, 96u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8, 110u8,
116u8, 96u8, 46u8, 48u8, 66u8, 111u8, 110u8, 100u8, 84u8, 111u8, 111u8, 83u8, 109u8, 97u8, 108u8,
108u8, 0u8, 38u8, 4u8, 220u8, 87u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 98u8, 111u8,
110u8, 100u8, 101u8, 100u8, 32u8, 105u8, 115u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8,
104u8, 97u8, 110u8, 32u8, 96u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 66u8, 111u8,
110u8, 100u8, 96u8, 32u8, 66u8, 97u8, 100u8, 83u8, 116u8, 97u8, 116u8, 101u8, 0u8, 39u8, 4u8,
57u8, 1u8, 73u8, 110u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 32u8, 115u8, 116u8, 97u8, 116u8,
101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 32u8, 115u8,
111u8, 109u8, 101u8, 104u8, 111u8, 119u8, 32u8, 99u8, 111u8, 114u8, 114u8, 117u8, 112u8, 116u8,
101u8, 100u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 112u8, 101u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
99u8, 111u8, 110u8, 116u8, 105u8, 110u8, 117u8, 101u8, 46u8, 56u8, 84u8, 111u8, 111u8, 77u8,
97u8, 110u8, 121u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 0u8, 40u8, 4u8, 148u8, 84u8,
111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 115u8, 32u8, 115u8,
117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 46u8, 36u8, 66u8, 97u8, 100u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 0u8, 41u8, 4u8, 61u8, 1u8, 65u8, 32u8, 110u8, 111u8, 109u8, 105u8,
110u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8,
119u8, 97u8, 115u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 101u8,
100u8, 32u8, 111u8, 114u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8,
32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 46u8, 4u8, 116u8, 69u8, 114u8, 114u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 241u8, 8u8, 12u8, 40u8, 115u8, 112u8, 95u8, 115u8,
116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 28u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8,
56u8, 79u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 8u8, 32u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 114u8, 1u8, 0u8, 32u8, 79u8,
102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 1u8, 193u8, 1u8, 0u8, 8u8, 1u8, 32u8, 111u8,
102u8, 102u8, 101u8, 110u8, 100u8, 101u8, 114u8, 193u8, 1u8, 1u8, 32u8, 79u8, 102u8, 102u8,
101u8, 110u8, 100u8, 101u8, 114u8, 0u8, 1u8, 36u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8,
101u8, 114u8, 115u8, 232u8, 1u8, 52u8, 86u8, 101u8, 99u8, 60u8, 82u8, 101u8, 112u8, 111u8, 114u8,
116u8, 101u8, 114u8, 62u8, 0u8, 0u8, 245u8, 8u8, 0u8, 0u8, 4u8, 8u8, 149u8, 1u8, 40u8, 0u8,
249u8, 8u8, 0u8, 0u8, 2u8, 253u8, 8u8, 0u8, 253u8, 8u8, 0u8, 0u8, 4u8, 8u8, 0u8, 241u8, 6u8, 0u8,
1u8, 9u8, 0u8, 0u8, 4u8, 8u8, 5u8, 9u8, 40u8, 0u8, 5u8, 9u8, 12u8, 28u8, 115u8, 112u8, 95u8,
99u8, 111u8, 114u8, 101u8, 24u8, 99u8, 114u8, 121u8, 112u8, 116u8, 111u8, 36u8, 75u8, 101u8,
121u8, 84u8, 121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 0u8, 4u8, 0u8, 56u8, 1u8, 28u8, 91u8, 117u8,
56u8, 59u8, 32u8, 52u8, 93u8, 0u8, 0u8, 9u8, 9u8, 12u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 24u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 48u8, 73u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 0u8, 4u8, 96u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 115u8,
104u8, 105u8, 112u8, 32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 46u8, 92u8, 78u8, 111u8, 65u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 86u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 73u8, 100u8, 0u8, 1u8, 4u8, 156u8, 78u8, 111u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 32u8, 73u8, 68u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 52u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8,
101u8, 100u8, 75u8, 101u8, 121u8, 0u8, 2u8, 4u8, 100u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8,
101u8, 114u8, 101u8, 100u8, 32u8, 100u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8,
32u8, 107u8, 101u8, 121u8, 46u8, 24u8, 78u8, 111u8, 75u8, 101u8, 121u8, 115u8, 0u8, 3u8, 4u8,
164u8, 78u8, 111u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 36u8,
78u8, 111u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 0u8, 4u8, 4u8, 25u8, 1u8, 75u8, 101u8,
121u8, 32u8, 115u8, 101u8, 116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 108u8, 105u8, 118u8,
101u8, 44u8, 32u8, 115u8, 111u8, 32u8, 105u8, 116u8, 39u8, 115u8, 32u8, 105u8, 109u8, 112u8,
111u8, 115u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 97u8, 115u8, 115u8,
111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 32u8, 107u8, 101u8, 121u8, 115u8, 46u8, 4u8, 116u8, 69u8,
114u8, 114u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8,
13u8, 9u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8,
100u8, 112u8, 97u8, 44u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 83u8, 116u8, 97u8, 116u8,
101u8, 4u8, 4u8, 78u8, 1u8, 16u8, 1u8, 16u8, 16u8, 76u8, 105u8, 118u8, 101u8, 0u8, 0u8, 0u8,
48u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 80u8, 97u8, 117u8, 115u8, 101u8, 8u8, 1u8,
48u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 95u8, 97u8, 116u8, 16u8, 1u8,
4u8, 78u8, 0u8, 1u8, 20u8, 100u8, 101u8, 108u8, 97u8, 121u8, 16u8, 1u8, 4u8, 78u8, 0u8, 1u8, 0u8,
24u8, 80u8, 97u8, 117u8, 115u8, 101u8, 100u8, 0u8, 2u8, 0u8, 52u8, 80u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 82u8, 101u8, 115u8, 117u8, 109u8, 101u8, 8u8, 1u8, 48u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 95u8, 97u8, 116u8, 16u8, 1u8, 4u8, 78u8, 0u8, 1u8,
20u8, 100u8, 101u8, 108u8, 97u8, 121u8, 16u8, 1u8, 4u8, 78u8, 0u8, 3u8, 0u8, 0u8, 17u8, 9u8, 8u8,
56u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8,
97u8, 76u8, 83u8, 116u8, 111u8, 114u8, 101u8, 100u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8,
103u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 8u8, 4u8, 78u8, 1u8, 16u8, 20u8, 76u8, 105u8,
109u8, 105u8, 116u8, 0u8, 0u8, 16u8, 1u8, 48u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 100u8, 95u8, 97u8, 116u8, 16u8, 1u8, 4u8, 78u8, 0u8, 1u8, 20u8, 100u8, 101u8, 108u8, 97u8,
121u8, 16u8, 1u8, 4u8, 78u8, 0u8, 1u8, 64u8, 110u8, 101u8, 120u8, 116u8, 95u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8, 21u8, 9u8, 1u8, 108u8, 66u8,
111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 76u8, 105u8, 115u8, 116u8, 60u8, 76u8, 105u8, 109u8, 105u8, 116u8, 62u8, 0u8, 1u8, 24u8,
102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 17u8, 6u8, 1u8, 36u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 78u8, 62u8, 0u8, 0u8, 21u8, 9u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8,
115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 64u8, 119u8, 101u8, 97u8, 107u8, 95u8, 98u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8,
95u8, 118u8, 101u8, 99u8, 56u8, 87u8, 101u8, 97u8, 107u8, 66u8, 111u8, 117u8, 110u8, 100u8,
101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 165u8, 1u8, 4u8, 83u8, 0u8, 0u8, 4u8, 0u8,
161u8, 1u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8, 25u8, 9u8, 12u8, 56u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8,
24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8,
84u8, 0u8, 1u8, 28u8, 44u8, 80u8, 97u8, 117u8, 115u8, 101u8, 70u8, 97u8, 105u8, 108u8, 101u8,
100u8, 0u8, 0u8, 8u8, 5u8, 1u8, 65u8, 116u8, 116u8, 101u8, 109u8, 112u8, 116u8, 32u8, 116u8,
111u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 108u8, 32u8, 71u8, 82u8, 65u8, 78u8, 68u8, 80u8,
65u8, 32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8,
101u8, 116u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 108u8, 105u8, 118u8, 101u8, 164u8,
40u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8,
32u8, 111u8, 114u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 101u8,
110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 41u8, 46u8, 48u8,
82u8, 101u8, 115u8, 117u8, 109u8, 101u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 1u8, 8u8,
17u8, 1u8, 65u8, 116u8, 116u8, 101u8, 109u8, 112u8, 116u8, 32u8, 116u8, 111u8, 32u8, 115u8,
105u8, 103u8, 110u8, 97u8, 108u8, 32u8, 71u8, 82u8, 65u8, 78u8, 68u8, 80u8, 65u8, 32u8, 114u8,
101u8, 115u8, 117u8, 109u8, 101u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 115u8, 101u8, 116u8,
32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 32u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8, 160u8,
40u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 108u8, 105u8, 118u8, 101u8, 32u8, 111u8,
114u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 32u8, 114u8, 101u8, 115u8, 117u8, 109u8, 101u8, 41u8, 46u8, 52u8, 67u8,
104u8, 97u8, 110u8, 103u8, 101u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 0u8, 2u8, 4u8,
232u8, 65u8, 116u8, 116u8, 101u8, 109u8, 112u8, 116u8, 32u8, 116u8, 111u8, 32u8, 115u8, 105u8,
103u8, 110u8, 97u8, 108u8, 32u8, 71u8, 82u8, 65u8, 78u8, 68u8, 80u8, 65u8, 32u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 111u8, 110u8, 101u8, 32u8,
97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8,
103u8, 46u8, 28u8, 84u8, 111u8, 111u8, 83u8, 111u8, 111u8, 110u8, 0u8, 3u8, 4u8, 188u8, 67u8,
97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 108u8, 32u8, 102u8,
111u8, 114u8, 99u8, 101u8, 100u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 115u8,
111u8, 32u8, 115u8, 111u8, 111u8, 110u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 108u8,
97u8, 115u8, 116u8, 46u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 75u8, 101u8,
121u8, 79u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 80u8, 114u8, 111u8, 111u8,
102u8, 0u8, 4u8, 4u8, 49u8, 1u8, 65u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 119u8, 110u8,
101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 112u8,
114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 112u8, 97u8, 114u8,
116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8,
99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 32u8,
105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 96u8, 73u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 69u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8,
105u8, 111u8, 110u8, 80u8, 114u8, 111u8, 111u8, 102u8, 0u8, 5u8, 4u8, 49u8, 1u8, 65u8, 110u8,
32u8, 101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
112u8, 114u8, 111u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
32u8, 97u8, 115u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8,
101u8, 113u8, 117u8, 105u8, 118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8,
101u8, 112u8, 111u8, 114u8, 116u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 46u8, 88u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 79u8,
102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 0u8, 6u8, 4u8,
21u8, 1u8, 65u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 101u8, 113u8, 117u8, 105u8,
118u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8,
116u8, 32u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 98u8, 117u8, 116u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 112u8, 114u8, 101u8, 118u8, 105u8,
111u8, 117u8, 115u8, 108u8, 121u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8,
46u8, 4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 91u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8,
115u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8,
115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8,
47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8,
101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8,
115u8, 41u8, 10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 29u8, 9u8, 16u8, 52u8, 102u8, 114u8,
97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 64u8, 119u8, 101u8, 97u8, 107u8, 95u8, 98u8, 111u8, 117u8,
110u8, 100u8, 101u8, 100u8, 95u8, 118u8, 101u8, 99u8, 56u8, 87u8, 101u8, 97u8, 107u8, 66u8,
111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 181u8, 1u8,
4u8, 83u8, 0u8, 0u8, 4u8, 0u8, 33u8, 9u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8,
0u8, 33u8, 9u8, 0u8, 0u8, 2u8, 181u8, 1u8, 0u8, 37u8, 9u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 24u8, 116u8, 114u8, 97u8, 105u8,
116u8, 115u8, 16u8, 109u8, 105u8, 115u8, 99u8, 52u8, 87u8, 114u8, 97u8, 112u8, 112u8, 101u8,
114u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8, 4u8, 4u8, 84u8, 1u8, 41u8, 9u8, 0u8, 8u8, 0u8,
121u8, 4u8, 0u8, 0u8, 0u8, 41u8, 9u8, 1u8, 4u8, 84u8, 0u8, 0u8, 41u8, 9u8, 8u8, 64u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8,
101u8, 100u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 79u8, 112u8, 97u8, 113u8, 117u8,
101u8, 78u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 83u8, 116u8, 97u8, 116u8, 101u8, 12u8,
76u8, 80u8, 101u8, 101u8, 114u8, 73u8, 100u8, 69u8, 110u8, 99u8, 111u8, 100u8, 105u8, 110u8,
103u8, 76u8, 105u8, 109u8, 105u8, 116u8, 0u8, 88u8, 77u8, 117u8, 108u8, 116u8, 105u8, 65u8,
100u8, 100u8, 114u8, 69u8, 110u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 76u8, 105u8, 109u8,
105u8, 116u8, 0u8, 56u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 101u8, 115u8, 76u8,
105u8, 109u8, 105u8, 116u8, 0u8, 0u8, 8u8, 1u8, 28u8, 112u8, 101u8, 101u8, 114u8, 95u8, 105u8,
100u8, 45u8, 9u8, 1u8, 156u8, 87u8, 101u8, 97u8, 107u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8,
100u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 44u8, 32u8, 80u8, 101u8, 101u8, 114u8, 73u8, 100u8,
69u8, 110u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 76u8, 105u8, 109u8, 105u8, 116u8, 62u8,
0u8, 1u8, 72u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 95u8, 97u8, 100u8, 100u8,
114u8, 101u8, 115u8, 115u8, 101u8, 115u8, 49u8, 9u8, 1u8, 45u8, 1u8, 87u8, 101u8, 97u8, 107u8,
66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 60u8, 87u8, 101u8, 97u8,
107u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
44u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 65u8, 100u8, 100u8, 114u8, 69u8, 110u8, 99u8,
111u8, 100u8, 105u8, 110u8, 103u8, 76u8, 105u8, 109u8, 105u8, 116u8, 62u8, 44u8, 32u8, 65u8,
100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 101u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 10u8,
62u8, 0u8, 0u8, 45u8, 9u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8,
112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 64u8,
119u8, 101u8, 97u8, 107u8, 95u8, 98u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 95u8, 118u8,
101u8, 99u8, 56u8, 87u8, 101u8, 97u8, 107u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8,
86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 8u8, 4u8, 83u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 24u8,
86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8, 49u8, 9u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 64u8, 119u8, 101u8, 97u8, 107u8, 95u8, 98u8, 111u8, 117u8, 110u8, 100u8,
101u8, 100u8, 95u8, 118u8, 101u8, 99u8, 56u8, 87u8, 101u8, 97u8, 107u8, 66u8, 111u8, 117u8,
110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 45u8, 9u8, 4u8, 83u8, 0u8,
0u8, 4u8, 0u8, 53u8, 9u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8, 53u8, 9u8,
0u8, 0u8, 2u8, 45u8, 9u8, 0u8, 57u8, 9u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 105u8, 109u8, 95u8, 111u8, 110u8, 108u8, 105u8, 110u8, 101u8, 24u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 40u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 75u8, 101u8, 121u8, 0u8, 0u8, 4u8, 96u8, 78u8,
111u8, 110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 101u8, 110u8, 116u8, 32u8, 112u8, 117u8,
98u8, 108u8, 105u8, 99u8, 32u8, 107u8, 101u8, 121u8, 46u8, 76u8, 68u8, 117u8, 112u8, 108u8,
105u8, 99u8, 97u8, 116u8, 101u8, 100u8, 72u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8,
116u8, 0u8, 1u8, 4u8, 84u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 100u8,
32u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 46u8, 4u8, 173u8, 1u8, 10u8,
9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 91u8, 100u8, 105u8, 115u8, 112u8,
97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 93u8, 40u8, 104u8,
116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8, 115u8, 46u8, 115u8, 117u8,
98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8, 47u8, 118u8, 51u8, 47u8,
114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8,
45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8, 115u8, 41u8, 10u8, 9u8, 9u8,
9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 61u8, 9u8, 16u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8,
115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 44u8, 98u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 95u8, 118u8, 101u8, 99u8, 40u8,
66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8, 101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 36u8,
4u8, 83u8, 0u8, 0u8, 4u8, 0u8, 109u8, 4u8, 1u8, 24u8, 86u8, 101u8, 99u8, 60u8, 84u8, 62u8, 0u8,
0u8, 65u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 117u8, 100u8,
111u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 4u8, 44u8, 82u8, 101u8,
113u8, 117u8, 105u8, 114u8, 101u8, 83u8, 117u8, 100u8, 111u8, 0u8, 0u8, 4u8, 124u8, 83u8, 101u8,
110u8, 100u8, 101u8, 114u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 83u8, 117u8, 100u8, 111u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 4u8, 100u8, 69u8, 114u8, 114u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 101u8, 32u8, 83u8, 117u8, 100u8, 111u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8,
69u8, 9u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8,
116u8, 72u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 85u8, 1u8, 32u8, 0u8, 8u8, 1u8, 20u8, 111u8,
119u8, 110u8, 101u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 73u8, 100u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 240u8, 1u8, 36u8,
79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 85u8, 62u8, 0u8, 0u8, 73u8, 9u8, 8u8, 48u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 52u8, 83u8, 101u8,
99u8, 117u8, 114u8, 105u8, 116u8, 121u8, 84u8, 111u8, 107u8, 101u8, 110u8, 0u8, 0u8, 16u8, 1u8,
48u8, 116u8, 111u8, 116u8, 97u8, 108u8, 95u8, 115u8, 117u8, 112u8, 112u8, 108u8, 121u8, 24u8,
1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 36u8, 111u8, 119u8, 110u8,
101u8, 114u8, 95u8, 100u8, 105u8, 100u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 36u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8,
108u8, 101u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 40u8, 97u8, 115u8,
115u8, 101u8, 116u8, 95u8, 116u8, 121u8, 112u8, 101u8, 225u8, 1u8, 1u8, 36u8, 65u8, 115u8, 115u8,
101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 0u8, 0u8, 77u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 120u8,
0u8, 81u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 221u8, 1u8, 0u8, 85u8, 9u8, 0u8, 0u8, 4u8, 8u8, 120u8,
156u8, 0u8, 89u8, 9u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8,
115u8, 101u8, 116u8, 88u8, 65u8, 115u8, 115u8, 101u8, 116u8, 79u8, 119u8, 110u8, 101u8, 114u8,
115u8, 104u8, 105u8, 112u8, 82u8, 101u8, 108u8, 97u8, 116u8, 105u8, 111u8, 110u8, 0u8, 1u8, 12u8,
32u8, 78u8, 111u8, 116u8, 79u8, 119u8, 110u8, 101u8, 100u8, 0u8, 0u8, 0u8, 44u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 79u8, 119u8, 110u8, 101u8, 100u8, 0u8, 1u8, 0u8, 40u8, 65u8, 115u8,
115u8, 101u8, 116u8, 79u8, 119u8, 110u8, 101u8, 100u8, 0u8, 2u8, 0u8, 0u8, 93u8, 9u8, 0u8, 0u8,
4u8, 8u8, 156u8, 253u8, 1u8, 0u8, 97u8, 9u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 100u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8,
84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 0u8, 0u8, 8u8, 1u8, 36u8, 101u8, 116u8, 104u8, 95u8, 111u8, 119u8,
110u8, 101u8, 114u8, 45u8, 2u8, 1u8, 60u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8,
65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 0u8, 1u8, 40u8, 105u8, 115u8, 95u8, 99u8, 114u8,
101u8, 97u8, 116u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 0u8,
101u8, 9u8, 0u8, 0u8, 4u8, 8u8, 120u8, 120u8, 0u8, 105u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 101u8,
7u8, 0u8, 109u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 65u8, 2u8, 0u8, 113u8, 9u8, 0u8, 0u8, 4u8, 8u8,
156u8, 69u8, 2u8, 0u8, 117u8, 9u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
97u8, 115u8, 115u8, 101u8, 116u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8,
4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 121u8, 9u8, 8u8, 48u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8,
4u8, 4u8, 84u8, 0u8, 1u8, 132u8, 48u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 0u8, 0u8, 4u8, 108u8, 84u8, 104u8, 101u8, 32u8, 117u8, 115u8, 101u8,
114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 101u8, 100u8, 46u8, 76u8, 65u8, 115u8, 115u8, 101u8, 116u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 67u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 0u8, 1u8, 4u8,
140u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8,
114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8, 52u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 0u8, 2u8, 4u8, 144u8, 84u8, 104u8, 101u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8,
105u8, 115u8, 32u8, 111u8, 118u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8,
109u8, 105u8, 116u8, 46u8, 56u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 78u8, 111u8, 116u8,
65u8, 115u8, 99u8, 105u8, 105u8, 0u8, 3u8, 4u8, 156u8, 84u8, 104u8, 101u8, 32u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8, 110u8, 45u8, 97u8,
115u8, 99u8, 105u8, 105u8, 45u8, 101u8, 110u8, 99u8, 111u8, 100u8, 101u8, 100u8, 32u8, 112u8,
97u8, 114u8, 116u8, 115u8, 46u8, 92u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8,
100u8, 0u8, 4u8, 4u8, 196u8, 84u8, 104u8, 101u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 114u8, 101u8,
103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 111u8,
109u8, 101u8, 111u8, 110u8, 101u8, 32u8, 101u8, 108u8, 115u8, 101u8, 46u8, 84u8, 84u8, 111u8,
116u8, 97u8, 108u8, 83u8, 117u8, 112u8, 112u8, 108u8, 121u8, 65u8, 98u8, 111u8, 118u8, 101u8,
76u8, 105u8, 109u8, 105u8, 116u8, 0u8, 5u8, 4u8, 144u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8,
116u8, 97u8, 108u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 121u8, 32u8, 105u8, 115u8, 32u8,
97u8, 98u8, 111u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 46u8, 44u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 65u8, 115u8, 115u8, 101u8, 116u8, 0u8,
6u8, 4u8, 56u8, 78u8, 111u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 46u8, 52u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 70u8, 114u8, 111u8, 122u8,
101u8, 110u8, 0u8, 7u8, 4u8, 112u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 102u8, 114u8,
111u8, 122u8, 101u8, 110u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8, 110u8, 79u8, 119u8, 110u8,
101u8, 114u8, 0u8, 8u8, 4u8, 152u8, 78u8, 111u8, 116u8, 32u8, 97u8, 110u8, 32u8, 111u8, 119u8,
110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 111u8, 110u8, 32u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8,
46u8, 60u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 0u8, 9u8, 4u8, 168u8, 65u8, 110u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 32u8, 119u8, 104u8, 105u8, 108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8,
108u8, 97u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 46u8, 76u8, 84u8, 111u8, 116u8, 97u8, 108u8, 83u8, 117u8, 112u8, 112u8,
108u8, 121u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 10u8, 4u8, 188u8, 65u8,
110u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 32u8, 119u8, 104u8, 105u8,
108u8, 101u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8, 108u8, 97u8, 116u8, 105u8, 110u8, 103u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 117u8, 112u8,
112u8, 108u8, 121u8, 46u8, 72u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 71u8, 114u8,
97u8, 110u8, 117u8, 108u8, 97u8, 114u8, 105u8, 116u8, 121u8, 0u8, 11u8, 4u8, 92u8, 65u8, 110u8,
32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 103u8, 114u8, 97u8, 110u8, 117u8,
108u8, 97u8, 114u8, 105u8, 116u8, 121u8, 46u8, 36u8, 78u8, 111u8, 116u8, 70u8, 114u8, 111u8,
122u8, 101u8, 110u8, 0u8, 12u8, 4u8, 100u8, 84u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 102u8, 114u8, 111u8, 122u8,
101u8, 110u8, 46u8, 60u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 0u8, 13u8, 4u8, 132u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
99u8, 104u8, 101u8, 99u8, 107u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 46u8, 76u8, 73u8,
110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 0u8, 14u8, 4u8, 148u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 110u8,
100u8, 101u8, 114u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8,
46u8, 84u8, 65u8, 115u8, 115u8, 101u8, 116u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8,
68u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8, 0u8, 15u8, 4u8, 124u8, 84u8, 104u8,
101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 100u8, 105u8, 118u8, 105u8, 115u8, 105u8, 98u8, 108u8, 101u8,
46u8, 96u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 69u8, 116u8, 104u8, 101u8, 114u8,
101u8, 117u8, 109u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 16u8, 4u8,
148u8, 65u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 69u8, 116u8,
104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 32u8, 96u8, 69u8, 99u8, 100u8, 115u8, 97u8, 83u8,
105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 96u8, 46u8, 76u8, 78u8, 111u8, 83u8,
117u8, 99u8, 104u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 0u8, 17u8, 4u8, 152u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 32u8, 99u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 32u8, 111u8, 110u8, 101u8, 46u8,
100u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 18u8, 4u8,
140u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
111u8, 102u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8,
101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 46u8, 80u8, 83u8, 101u8, 110u8, 100u8, 101u8,
114u8, 83u8, 97u8, 109u8, 101u8, 65u8, 115u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8,
114u8, 0u8, 19u8, 4u8, 132u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8,
116u8, 111u8, 32u8, 115u8, 101u8, 108u8, 102u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8,
116u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 36u8, 78u8, 111u8, 83u8, 117u8,
99u8, 104u8, 68u8, 111u8, 99u8, 0u8, 20u8, 4u8, 136u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 100u8,
111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8,
112u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 79u8, 102u8, 65u8, 115u8,
115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 0u8, 21u8, 4u8, 188u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8,
110u8, 97u8, 109u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 46u8, 132u8, 70u8, 117u8, 110u8, 100u8,
105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8,
120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 0u8, 22u8, 4u8, 236u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8,
110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 32u8, 110u8, 97u8,
109u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8,
99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 46u8, 88u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8,
101u8, 114u8, 0u8, 23u8, 4u8, 140u8, 83u8, 111u8, 109u8, 101u8, 32u8, 96u8, 65u8, 115u8, 115u8,
101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8, 96u8, 32u8,
119u8, 97u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 132u8, 73u8,
110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8,
101u8, 115u8, 115u8, 67u8, 108u8, 97u8, 105u8, 109u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8,
111u8, 119u8, 101u8, 100u8, 0u8, 24u8, 4u8, 232u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8,
111u8, 114u8, 32u8, 85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 32u8,
99u8, 108u8, 97u8, 105u8, 109u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 96u8, 73u8, 110u8, 118u8,
97u8, 108u8, 105u8, 100u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8, 101u8,
116u8, 84u8, 121u8, 112u8, 101u8, 73u8, 100u8, 0u8, 25u8, 4u8, 112u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 96u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 65u8, 115u8, 115u8,
101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 73u8, 100u8, 96u8, 46u8, 136u8, 65u8, 115u8, 115u8,
101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 78u8, 97u8, 109u8, 101u8, 77u8,
97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 0u8, 26u8, 4u8, 5u8, 1u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8,
108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 104u8, 97u8, 115u8,
32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8,
46u8, 140u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8,
104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 27u8, 4u8, 244u8, 77u8, 97u8,
120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 109u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 46u8, 148u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 84u8, 121u8, 112u8, 101u8, 68u8, 101u8, 102u8, 77u8, 97u8, 120u8, 76u8, 101u8,
110u8, 103u8, 116u8, 104u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 28u8, 4u8,
29u8, 1u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8,
116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 32u8, 109u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 116u8, 121u8, 112u8,
101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 105u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8,
97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 46u8, 100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 75u8, 101u8, 121u8, 73u8, 115u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8,
103u8, 0u8, 29u8, 4u8, 120u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 115u8, 32u8, 109u8, 105u8,
115u8, 115u8, 105u8, 110u8, 103u8, 46u8, 104u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 73u8, 115u8, 76u8, 111u8,
99u8, 107u8, 101u8, 100u8, 0u8, 30u8, 4u8, 124u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8,
105u8, 115u8, 32u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 46u8, 136u8, 65u8, 115u8, 115u8,
101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8,
75u8, 101u8, 121u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8,
116u8, 115u8, 0u8, 31u8, 4u8, 204u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 76u8, 111u8, 99u8, 97u8, 108u8, 32u8, 116u8, 121u8, 112u8,
101u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8,
116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 140u8,
65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 71u8,
108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 0u8, 32u8, 4u8, 168u8, 65u8, 115u8, 115u8, 101u8,
116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 71u8, 108u8, 111u8, 98u8,
97u8, 108u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8, 0u8, 125u8, 9u8, 0u8, 0u8, 4u8, 8u8,
109u8, 2u8, 120u8, 0u8, 129u8, 9u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 115u8, 48u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8,
111u8, 110u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8,
8u8, 117u8, 56u8, 0u8, 0u8, 133u8, 9u8, 12u8, 96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 48u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 60u8,
48u8, 67u8, 65u8, 78u8, 111u8, 116u8, 66u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 0u8, 0u8,
4u8, 212u8, 65u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 97u8, 115u8, 32u8,
109u8, 97u8, 100u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 110u8, 111u8, 110u8,
45u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 32u8, 67u8, 65u8, 46u8, 52u8, 65u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 0u8, 1u8, 4u8, 168u8,
65u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8,
32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 46u8, 76u8,
69u8, 120u8, 112u8, 105u8, 114u8, 121u8, 66u8, 101u8, 102u8, 111u8, 114u8, 101u8, 80u8, 97u8,
121u8, 109u8, 101u8, 110u8, 116u8, 0u8, 2u8, 8u8, 41u8, 1u8, 65u8, 32u8, 100u8, 105u8, 115u8,
116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8, 32u8, 100u8,
97u8, 116u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8,
108u8, 121u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 105u8, 116u8, 115u8, 32u8,
112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 33u8, 1u8,
73u8, 110u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 119u8, 111u8, 114u8, 100u8, 115u8,
44u8, 32u8, 101u8, 118u8, 101u8, 114u8, 121u8, 116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 116u8,
111u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 32u8, 119u8,
111u8, 117u8, 108u8, 100u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8,
108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 102u8, 111u8, 114u8, 102u8, 101u8, 105u8, 116u8, 101u8,
100u8, 46u8, 68u8, 72u8, 111u8, 108u8, 100u8, 101u8, 114u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 80u8, 97u8, 105u8, 100u8, 0u8, 3u8, 4u8, 212u8, 84u8, 104u8, 101u8, 32u8, 116u8,
111u8, 107u8, 101u8, 110u8, 32u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8,
32u8, 112u8, 97u8, 105u8, 100u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 98u8, 101u8,
110u8, 101u8, 102u8, 105u8, 116u8, 46u8, 72u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 68u8,
105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 0u8, 4u8, 4u8, 196u8,
65u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8,
39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 46u8, 88u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 67u8,
108u8, 97u8, 105u8, 109u8, 66u8, 101u8, 102u8, 111u8, 114u8, 101u8, 83u8, 116u8, 97u8, 114u8,
116u8, 0u8, 5u8, 4u8, 97u8, 1u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 32u8, 97u8, 108u8, 108u8, 111u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8,
99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 105u8, 115u8, 32u8, 98u8, 101u8,
102u8, 111u8, 114u8, 101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 45u8, 111u8, 102u8, 45u8,
112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 46u8, 88u8, 67u8, 97u8, 110u8, 110u8, 111u8,
116u8, 67u8, 108u8, 97u8, 105u8, 109u8, 65u8, 102u8, 116u8, 101u8, 114u8, 69u8, 120u8, 112u8,
105u8, 114u8, 121u8, 0u8, 6u8, 4u8, 105u8, 1u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8,
117u8, 116u8, 105u8, 111u8, 110u8, 39u8, 115u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 121u8,
32u8, 104u8, 97u8, 115u8, 32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 46u8, 32u8, 68u8, 73u8,
68u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8,
97u8, 110u8, 121u8, 109u8, 111u8, 114u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 104u8, 97u8,
115u8, 32u8, 102u8, 111u8, 114u8, 102u8, 101u8, 105u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 98u8, 101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 46u8, 128u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 80u8, 101u8, 114u8, 83u8, 104u8, 97u8, 114u8, 101u8, 80u8,
114u8, 111u8, 100u8, 117u8, 99u8, 116u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8,
101u8, 100u8, 0u8, 7u8, 4u8, 41u8, 1u8, 77u8, 117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 105u8,
99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 32u8, 115u8, 104u8, 97u8, 114u8, 101u8, 32u8, 112u8,
97u8, 121u8, 111u8, 117u8, 116u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 88u8, 78u8, 111u8, 116u8,
68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 67u8, 114u8,
101u8, 97u8, 116u8, 111u8, 114u8, 0u8, 8u8, 4u8, 192u8, 68u8, 73u8, 68u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 101u8, 32u8, 119u8,
104u8, 111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8,
64u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 82u8, 101u8, 99u8, 108u8, 97u8, 105u8,
109u8, 101u8, 100u8, 0u8, 9u8, 4u8, 212u8, 68u8, 73u8, 68u8, 32u8, 119u8, 104u8, 111u8, 32u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 105u8,
115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 100u8, 105u8, 100u8, 32u8, 114u8, 101u8, 99u8, 108u8, 97u8,
105u8, 109u8, 46u8, 40u8, 78u8, 111u8, 116u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8,
0u8, 10u8, 4u8, 240u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8,
110u8, 32u8, 104u8, 97u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 112u8, 105u8,
114u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 44u8, 32u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 114u8, 101u8, 39u8, 115u8, 32u8, 110u8, 111u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8,
121u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 76u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 0u8,
11u8, 4u8, 1u8, 1u8, 65u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 99u8,
116u8, 105u8, 118u8, 97u8, 116u8, 101u8, 100u8, 44u8, 32u8, 97u8, 115u8, 32u8, 96u8, 112u8, 97u8,
121u8, 109u8, 101u8, 110u8, 116u8, 95u8, 97u8, 116u8, 32u8, 60u8, 61u8, 32u8, 110u8, 111u8,
119u8, 96u8, 32u8, 104u8, 111u8, 108u8, 100u8, 115u8, 46u8, 108u8, 73u8, 110u8, 115u8, 117u8,
102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 82u8, 101u8, 109u8, 97u8, 105u8, 110u8,
105u8, 110u8, 103u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 0u8, 12u8, 4u8, 45u8, 1u8, 65u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8,
104u8, 97u8, 115u8, 32u8, 105u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8,
110u8, 116u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 99u8, 121u8, 32u8, 116u8, 111u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8,
117u8, 116u8, 101u8, 46u8, 96u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8,
105u8, 111u8, 110u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 73u8, 115u8, 90u8, 101u8, 114u8,
111u8, 0u8, 13u8, 4u8, 148u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 96u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 99u8, 97u8, 110u8,
110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 104u8, 68u8,
105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 80u8, 101u8, 114u8,
83u8, 104u8, 97u8, 114u8, 101u8, 73u8, 115u8, 90u8, 101u8, 114u8, 111u8, 0u8, 14u8, 4u8, 160u8,
68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 96u8,
112u8, 101u8, 114u8, 95u8, 115u8, 104u8, 97u8, 114u8, 101u8, 96u8, 32u8, 99u8, 97u8, 110u8,
110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 122u8, 101u8, 114u8, 111u8, 46u8, 0u8, 137u8, 9u8,
0u8, 0u8, 4u8, 8u8, 156u8, 133u8, 2u8, 0u8, 141u8, 9u8, 0u8, 0u8, 4u8, 8u8, 137u8, 9u8, 120u8,
0u8, 145u8, 9u8, 0u8, 0u8, 2u8, 133u8, 2u8, 0u8, 149u8, 9u8, 0u8, 0u8, 2u8, 137u8, 2u8, 0u8,
153u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 153u8, 2u8, 0u8, 157u8, 9u8, 12u8, 48u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 40u8, 99u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 161u8, 9u8, 12u8, 48u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 97u8, 115u8, 115u8, 101u8, 116u8, 40u8, 99u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8,
4u8, 4u8, 84u8, 0u8, 1u8, 20u8, 56u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 0u8, 4u8, 204u8, 65u8, 32u8, 99u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8,
115u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 46u8, 80u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 78u8, 111u8,
116u8, 82u8, 101u8, 109u8, 111u8, 118u8, 97u8, 98u8, 108u8, 101u8, 0u8, 1u8, 4u8, 29u8, 1u8,
65u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 97u8, 98u8, 108u8, 101u8, 32u8, 97u8, 115u8, 32u8, 96u8,
114u8, 101u8, 102u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 40u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 95u8, 105u8, 100u8, 41u8, 32u8, 62u8, 32u8, 48u8, 96u8, 46u8, 116u8,
70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 67u8, 111u8, 109u8, 112u8, 117u8, 116u8,
101u8, 78u8, 101u8, 120u8, 116u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8,
116u8, 0u8, 2u8, 8u8, 152u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
120u8, 116u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 46u8,
208u8, 84u8, 104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8,
97u8, 110u8, 121u8, 32u8, 117u8, 112u8, 99u8, 111u8, 109u8, 105u8, 110u8, 103u8, 32u8, 99u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 46u8, 96u8, 83u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 68u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8,
84u8, 111u8, 111u8, 83u8, 104u8, 111u8, 114u8, 116u8, 0u8, 3u8, 4u8, 188u8, 84u8, 104u8, 101u8,
32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 112u8, 101u8, 114u8, 105u8,
111u8, 100u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8, 115u8, 104u8, 111u8, 114u8,
116u8, 46u8, 76u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 84u8, 111u8,
111u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 0u8, 4u8, 8u8, 208u8, 84u8, 104u8, 101u8,
32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 115u8, 32u8, 116u8, 97u8, 107u8, 101u8, 110u8, 32u8, 116u8, 111u8, 103u8, 101u8,
116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 111u8, 111u8, 32u8, 99u8,
111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 46u8, 248u8, 70u8, 111u8, 114u8, 32u8, 101u8, 120u8,
97u8, 109u8, 112u8, 108u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 97u8, 114u8,
101u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 44u8, 32u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 111u8, 99u8, 99u8, 117u8, 114u8, 115u8, 32u8, 116u8,
111u8, 111u8, 32u8, 102u8, 114u8, 101u8, 113u8, 117u8, 101u8, 110u8, 116u8, 108u8, 121u8, 46u8,
0u8, 165u8, 9u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8,
114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 72u8, 99u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 95u8, 109u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8,
60u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 0u8, 0u8, 8u8, 1u8, 24u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8, 21u8, 1u8, 1u8,
16u8, 98u8, 111u8, 111u8, 108u8, 0u8, 1u8, 48u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8,
109u8, 101u8, 110u8, 116u8, 115u8, 205u8, 2u8, 1u8, 104u8, 86u8, 101u8, 99u8, 60u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 169u8, 9u8, 8u8, 100u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8,
95u8, 109u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8,
111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 173u8, 9u8, 8u8, 100u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8,
110u8, 99u8, 101u8, 95u8, 109u8, 97u8, 110u8, 97u8, 103u8, 101u8, 114u8, 20u8, 69u8, 114u8,
114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 48u8, 85u8, 110u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 0u8, 0u8, 4u8, 92u8, 85u8, 115u8, 101u8, 114u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 46u8, 44u8, 68u8, 105u8, 100u8, 78u8, 111u8, 116u8, 69u8, 120u8,
105u8, 115u8, 116u8, 0u8, 1u8, 4u8, 52u8, 68u8, 105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 120u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 67u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8,
114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 73u8, 100u8, 0u8, 2u8, 4u8, 156u8, 67u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8,
39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 132u8, 73u8, 110u8, 99u8, 111u8, 114u8,
114u8, 101u8, 99u8, 116u8, 79u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 79u8,
110u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8,
0u8, 3u8, 4u8, 156u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 101u8, 120u8, 105u8, 115u8,
116u8, 32u8, 98u8, 117u8, 116u8, 32u8, 116u8, 114u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8,
111u8, 32u8, 97u8, 100u8, 100u8, 32u8, 105u8, 116u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8,
124u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 67u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8,
101u8, 110u8, 116u8, 115u8, 0u8, 4u8, 4u8, 176u8, 84u8, 104u8, 101u8, 114u8, 101u8, 32u8, 97u8,
114u8, 101u8, 32u8, 100u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 32u8, 99u8,
111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8,
105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 115u8, 46u8, 124u8, 67u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8,
101u8, 110u8, 116u8, 84u8, 111u8, 111u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 0u8,
5u8, 4u8, 17u8, 1u8, 84u8, 104u8, 101u8, 32u8, 119u8, 111u8, 114u8, 115u8, 116u8, 32u8, 99u8,
97u8, 115u8, 101u8, 32u8, 115u8, 99u8, 101u8, 110u8, 97u8, 114u8, 105u8, 111u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8,
32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8,
120u8, 0u8, 177u8, 9u8, 0u8, 0u8, 4u8, 8u8, 156u8, 113u8, 2u8, 0u8, 181u8, 9u8, 8u8, 96u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8,
101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 28u8, 86u8, 101u8, 114u8, 115u8,
105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 185u8, 9u8, 8u8,
96u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8,
97u8, 116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 20u8, 69u8, 114u8,
114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 48u8, 72u8, 65u8, 117u8, 116u8, 104u8, 78u8,
111u8, 116u8, 67u8, 65u8, 65u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 0u8, 0u8,
4u8, 5u8, 1u8, 84u8, 104u8, 101u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 116u8, 111u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 65u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8,
111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 68u8, 73u8, 68u8, 46u8, 56u8, 68u8, 101u8, 116u8, 97u8,
105u8, 108u8, 115u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 0u8, 1u8, 4u8, 216u8, 84u8,
104u8, 101u8, 32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 111u8,
102u8, 32u8, 97u8, 32u8, 67u8, 65u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8,
101u8, 100u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 60u8, 68u8, 117u8, 112u8,
108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 68u8, 105u8, 100u8, 84u8, 97u8, 120u8, 0u8, 2u8, 8u8,
33u8, 1u8, 65u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 111u8, 118u8, 101u8, 114u8, 114u8, 105u8, 100u8, 101u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 68u8, 73u8,
68u8, 32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8,
100u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 111u8, 110u8,
99u8, 101u8, 46u8, 5u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8,
114u8, 101u8, 102u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 109u8, 97u8, 107u8,
101u8, 32u8, 97u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 44u8, 32u8, 97u8, 110u8, 100u8,
32u8, 104u8, 101u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 119u8,
97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 46u8, 60u8, 84u8, 111u8,
111u8, 77u8, 97u8, 110u8, 121u8, 68u8, 105u8, 100u8, 84u8, 97u8, 120u8, 101u8, 115u8, 0u8, 3u8,
4u8, 200u8, 84u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 119u8, 105u8, 116u8,
104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8, 32u8, 111u8,
118u8, 101u8, 114u8, 114u8, 105u8, 100u8, 101u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8,
115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 46u8, 64u8, 84u8, 111u8, 111u8,
77u8, 97u8, 110u8, 121u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 115u8, 0u8, 4u8,
4u8, 228u8, 84u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8,
96u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8,
101u8, 100u8, 46u8, 72u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 104u8, 101u8, 99u8, 107u8,
112u8, 111u8, 105u8, 110u8, 116u8, 73u8, 100u8, 0u8, 5u8, 4u8, 5u8, 1u8, 79u8, 110u8, 32u8, 67u8,
65u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 97u8, 32u8, 99u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 73u8, 68u8, 32u8, 119u8,
97u8, 115u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8,
105u8, 115u8, 116u8, 46u8, 32u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 67u8, 65u8, 0u8, 6u8,
4u8, 164u8, 65u8, 32u8, 67u8, 65u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8,
32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 67u8, 65u8, 73u8, 100u8, 96u8, 32u8, 100u8,
105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 48u8,
78u8, 111u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8, 116u8, 101u8, 0u8, 7u8, 4u8,
136u8, 84u8, 104u8, 101u8, 32u8, 67u8, 65u8, 32u8, 100u8, 105u8, 100u8, 32u8, 110u8, 111u8,
116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 80u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8,
97u8, 116u8, 101u8, 65u8, 102u8, 116u8, 101u8, 114u8, 83u8, 116u8, 97u8, 114u8, 116u8, 0u8, 8u8,
12u8, 220u8, 65u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8,
32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 116u8, 114u8, 105u8,
99u8, 116u8, 108u8, 121u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 34u8, 115u8, 116u8, 97u8, 114u8, 116u8, 34u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8,
140u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 34u8, 115u8, 116u8, 97u8, 114u8, 116u8, 34u8,
32u8, 105u8, 115u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 32u8, 100u8, 101u8,
112u8, 101u8, 110u8, 100u8, 101u8, 110u8, 116u8, 46u8, 129u8, 1u8, 70u8, 111u8, 114u8, 32u8,
101u8, 120u8, 97u8, 109u8, 112u8, 108u8, 101u8, 44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 111u8,
117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8,
114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 44u8,
32u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 45u8,
111u8, 102u8, 45u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 110u8, 32u8,
99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8,
98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 92u8, 68u8, 101u8, 99u8, 108u8, 68u8, 97u8, 116u8,
101u8, 65u8, 102u8, 116u8, 101u8, 114u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 68u8, 97u8,
116u8, 101u8, 0u8, 9u8, 4u8, 236u8, 65u8, 32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 100u8, 101u8,
99u8, 108u8, 97u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 100u8, 97u8, 116u8, 101u8,
32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 108u8, 121u8, 32u8,
97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 105u8, 116u8, 115u8, 32u8, 114u8, 101u8, 99u8, 111u8,
114u8, 100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 46u8, 64u8, 68u8, 101u8, 99u8, 108u8, 68u8, 97u8,
116u8, 101u8, 73u8, 110u8, 70u8, 117u8, 116u8, 117u8, 114u8, 101u8, 0u8, 10u8, 4u8, 180u8, 65u8,
32u8, 67u8, 65u8, 39u8, 115u8, 32u8, 100u8, 101u8, 99u8, 108u8, 97u8, 114u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 100u8, 97u8, 116u8, 101u8, 32u8, 111u8, 99u8, 99u8, 117u8, 114u8, 115u8,
32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 117u8, 116u8, 117u8, 114u8, 101u8,
46u8, 60u8, 78u8, 111u8, 116u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 101u8, 100u8, 66u8,
121u8, 67u8, 65u8, 0u8, 11u8, 4u8, 108u8, 67u8, 65u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 68u8, 73u8, 68u8, 46u8, 0u8, 189u8, 9u8, 0u8, 0u8, 2u8, 24u8, 0u8, 193u8, 9u8, 12u8, 96u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8,
116u8, 101u8, 95u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 24u8, 98u8, 97u8, 108u8,
108u8, 111u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 56u8,
44u8, 67u8, 65u8, 78u8, 111u8, 116u8, 78u8, 111u8, 116u8, 105u8, 99u8, 101u8, 0u8, 0u8, 4u8,
224u8, 65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8,
108u8, 108u8, 111u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 109u8, 97u8, 100u8, 101u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 110u8, 111u8, 110u8, 32u8, 96u8, 73u8, 115u8, 115u8,
117u8, 101u8, 114u8, 78u8, 111u8, 116u8, 105u8, 99u8, 101u8, 96u8, 32u8, 67u8, 65u8, 46u8, 52u8,
65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 120u8, 105u8, 115u8, 116u8, 115u8, 0u8, 1u8,
4u8, 184u8, 65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8,
97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 67u8, 65u8, 46u8, 48u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 0u8, 2u8, 4u8, 180u8, 65u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8,
97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 100u8, 111u8, 101u8,
115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 67u8, 65u8, 46u8, 52u8, 83u8, 116u8, 97u8, 114u8, 116u8,
65u8, 102u8, 116u8, 101u8, 114u8, 69u8, 110u8, 100u8, 0u8, 3u8, 4u8, 17u8, 1u8, 65u8, 32u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8,
116u8, 39u8, 115u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8,
32u8, 119u8, 97u8, 115u8, 32u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 108u8, 121u8, 32u8,
97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8,
111u8, 116u8, 39u8, 115u8, 32u8, 101u8, 110u8, 100u8, 46u8, 44u8, 78u8, 111u8, 119u8, 65u8,
102u8, 116u8, 101u8, 114u8, 69u8, 110u8, 100u8, 0u8, 4u8, 4u8, 13u8, 1u8, 65u8, 32u8, 99u8,
111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8,
116u8, 39u8, 115u8, 32u8, 101u8, 110u8, 100u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 119u8,
97u8, 115u8, 32u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 108u8, 121u8, 32u8, 98u8, 101u8,
102u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 92u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 79u8, 102u8, 67u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 79u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 0u8, 5u8, 4u8, 57u8, 1u8, 73u8, 102u8, 32u8, 115u8, 111u8, 109u8,
101u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8,
99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8,
111u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 99u8, 104u8,
111u8, 105u8, 99u8, 101u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 119u8, 111u8, 117u8,
108u8, 100u8, 32u8, 102u8, 105u8, 116u8, 32u8, 105u8, 110u8, 32u8, 96u8, 117u8, 49u8, 54u8, 96u8,
46u8, 80u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 0u8, 6u8, 4u8, 1u8, 1u8, 86u8, 111u8,
116u8, 105u8, 110u8, 103u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 46u8, 32u8, 65u8, 109u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 32u8, 97u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 32u8, 105u8, 115u8, 32u8,
110u8, 111u8, 32u8, 108u8, 111u8, 110u8, 103u8, 101u8, 114u8, 32u8, 112u8, 111u8, 115u8, 115u8,
105u8, 98u8, 108u8, 101u8, 46u8, 64u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 78u8, 111u8,
116u8, 83u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 0u8, 7u8, 4u8, 104u8, 86u8, 111u8, 116u8,
105u8, 110u8, 103u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 115u8, 116u8, 97u8,
114u8, 116u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 46u8, 72u8, 86u8, 111u8, 116u8, 105u8,
110u8, 103u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 69u8, 110u8, 100u8, 101u8, 100u8,
0u8, 8u8, 4u8, 84u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 101u8, 110u8, 100u8, 101u8,
100u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 46u8, 56u8, 87u8, 114u8, 111u8,
110u8, 103u8, 86u8, 111u8, 116u8, 101u8, 67u8, 111u8, 117u8, 110u8, 116u8, 0u8, 9u8, 4u8, 21u8,
1u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 108u8, 105u8, 115u8, 116u8,
32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8, 100u8, 111u8,
101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 46u8, 68u8, 73u8,
110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 86u8, 111u8, 116u8,
101u8, 115u8, 0u8, 10u8, 4u8, 61u8, 1u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8,
111u8, 119u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8,
32u8, 68u8, 73u8, 68u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8,
110u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 97u8, 118u8, 97u8, 105u8,
108u8, 97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 109u8, 46u8,
68u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 82u8, 67u8, 86u8, 70u8, 97u8, 108u8, 108u8, 98u8,
97u8, 99u8, 107u8, 0u8, 11u8, 4u8, 188u8, 84u8, 104u8, 101u8, 32u8, 82u8, 67u8, 86u8, 32u8,
102u8, 97u8, 108u8, 108u8, 98u8, 97u8, 99u8, 107u8, 32u8, 111u8, 102u8, 32u8, 115u8, 111u8,
109u8, 101u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 32u8, 100u8, 111u8, 101u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 48u8, 82u8, 67u8, 86u8,
83u8, 101u8, 108u8, 102u8, 67u8, 121u8, 99u8, 108u8, 101u8, 0u8, 12u8, 4u8, 180u8, 84u8, 104u8,
101u8, 32u8, 82u8, 67u8, 86u8, 32u8, 102u8, 97u8, 108u8, 108u8, 98u8, 97u8, 99u8, 107u8, 32u8,
112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 46u8,
52u8, 82u8, 67u8, 86u8, 78u8, 111u8, 116u8, 65u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 0u8,
13u8, 4u8, 140u8, 82u8, 67u8, 86u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 0u8, 197u8, 9u8, 8u8, 72u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 4u8, 72u8,
85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 97u8,
108u8, 108u8, 101u8, 114u8, 0u8, 0u8, 4u8, 236u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 0u8, 201u8, 9u8, 8u8, 44u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 48u8, 80u8, 105u8,
112u8, 115u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 4u8, 44u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 0u8, 24u8, 1u8, 8u8, 105u8,
100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 1u8, 12u8, 117u8, 114u8,
108u8, 77u8, 2u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 85u8, 114u8, 108u8,
62u8, 0u8, 1u8, 44u8, 100u8, 101u8, 115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8,
77u8, 3u8, 1u8, 88u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 80u8, 105u8, 112u8, 68u8,
101u8, 115u8, 99u8, 114u8, 105u8, 112u8, 116u8, 105u8, 111u8, 110u8, 62u8, 0u8, 1u8, 40u8, 99u8,
114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 95u8, 97u8, 116u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 1u8, 76u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 101u8, 120u8, 112u8, 105u8, 114u8,
121u8, 53u8, 1u8, 1u8, 92u8, 77u8, 97u8, 121u8, 98u8, 101u8, 66u8, 108u8, 111u8, 99u8, 107u8,
60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 0u8,
205u8, 9u8, 0u8, 0u8, 4u8, 8u8, 73u8, 3u8, 0u8, 0u8, 209u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 44u8, 68u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 73u8, 110u8, 102u8, 111u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 1u8, 0u8, 0u8, 8u8, 1u8, 20u8, 111u8, 119u8, 110u8, 101u8, 114u8, 0u8, 1u8, 36u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 24u8, 97u8, 109u8, 111u8,
117u8, 110u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8,
213u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8,
12u8, 80u8, 105u8, 112u8, 8u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 1u8,
201u8, 5u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8, 16u8,
1u8, 8u8, 105u8, 100u8, 73u8, 3u8, 1u8, 20u8, 80u8, 105u8, 112u8, 73u8, 100u8, 0u8, 1u8, 32u8,
112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 201u8, 5u8, 1u8, 32u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 1u8, 20u8, 115u8, 116u8, 97u8, 116u8, 101u8, 89u8, 3u8,
1u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8, 101u8,
0u8, 1u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 65u8, 3u8, 1u8, 76u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 60u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 62u8, 0u8, 0u8, 217u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 48u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8,
82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 0u8, 0u8, 16u8, 1u8, 40u8, 97u8, 121u8, 101u8, 115u8,
95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8, 97u8,
121u8, 101u8, 115u8, 95u8, 115u8, 116u8, 97u8, 107u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 40u8, 110u8, 97u8, 121u8, 115u8, 95u8, 99u8, 111u8, 117u8,
110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8, 110u8, 97u8, 121u8, 115u8,
95u8, 115u8, 116u8, 97u8, 107u8, 101u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 221u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8,
105u8, 112u8, 115u8, 16u8, 86u8, 111u8, 116u8, 101u8, 0u8, 0u8, 8u8, 0u8, 21u8, 1u8, 1u8, 16u8,
98u8, 111u8, 111u8, 108u8, 0u8, 0u8, 24u8, 1u8, 28u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 225u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8,
105u8, 112u8, 115u8, 64u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 8u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 1u8, 16u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8,
100u8, 1u8, 0u8, 0u8, 12u8, 1u8, 40u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 95u8, 97u8,
116u8, 16u8, 1u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
0u8, 1u8, 28u8, 109u8, 97u8, 100u8, 101u8, 95u8, 98u8, 121u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 8u8, 105u8, 100u8, 93u8, 3u8, 1u8, 40u8, 83u8,
110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 73u8, 100u8, 0u8, 0u8, 229u8, 9u8, 8u8, 44u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8, 28u8, 86u8, 101u8,
114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8,
233u8, 9u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 105u8, 112u8, 115u8,
20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 72u8, 132u8, 82u8, 101u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 78u8, 111u8, 116u8, 66u8, 121u8, 82u8,
101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 0u8, 0u8, 4u8, 49u8, 1u8, 79u8, 110u8, 108u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 71u8, 67u8, 32u8, 114u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8,
111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 64u8, 78u8,
111u8, 116u8, 70u8, 114u8, 111u8, 109u8, 67u8, 111u8, 109u8, 109u8, 117u8, 110u8, 105u8, 116u8,
121u8, 0u8, 1u8, 8u8, 236u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8, 32u8, 99u8, 97u8,
108u8, 108u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 204u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 117u8,
110u8, 105u8, 116u8, 121u8, 44u8, 32u8, 98u8, 117u8, 116u8, 32u8, 105u8, 115u8, 110u8, 39u8,
116u8, 46u8, 56u8, 78u8, 111u8, 116u8, 66u8, 121u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 0u8, 2u8, 8u8, 236u8, 84u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 46u8, 180u8, 84u8, 104u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8,
101u8, 32u8, 98u8, 121u8, 32u8, 99u8, 111u8, 109u8, 109u8, 117u8, 110u8, 105u8, 116u8, 121u8,
44u8, 32u8, 98u8, 117u8, 116u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8, 46u8, 68u8, 84u8, 111u8,
111u8, 77u8, 97u8, 110u8, 121u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 80u8, 105u8, 112u8,
115u8, 0u8, 3u8, 8u8, 41u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 40u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 124u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 41u8, 32u8,
80u8, 73u8, 80u8, 115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 32u8, 116u8, 104u8,
101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 156u8, 97u8, 110u8, 100u8, 32u8,
116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 121u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 64u8, 73u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8,
99u8, 116u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 0u8, 4u8, 4u8, 156u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8,
101u8, 115u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8,
116u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 76u8, 73u8, 110u8, 115u8, 117u8,
102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 0u8, 5u8, 4u8, 180u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 32u8, 99u8,
97u8, 110u8, 39u8, 116u8, 32u8, 97u8, 102u8, 102u8, 111u8, 114u8, 100u8, 32u8, 116u8, 111u8,
32u8, 108u8, 111u8, 99u8, 107u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8,
100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 56u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 0u8, 6u8, 4u8, 112u8, 84u8, 104u8, 101u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 100u8, 111u8, 101u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 76u8, 78u8, 111u8,
116u8, 65u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8,
98u8, 101u8, 114u8, 0u8, 7u8, 4u8, 132u8, 78u8, 111u8, 116u8, 32u8, 112u8, 97u8, 114u8, 116u8,
32u8, 111u8, 102u8, 32u8, 103u8, 111u8, 118u8, 101u8, 114u8, 110u8, 97u8, 110u8, 99u8, 101u8,
32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 96u8, 73u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 70u8, 117u8, 116u8, 117u8, 114u8, 101u8, 66u8, 108u8, 111u8,
99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 0u8, 8u8, 4u8, 216u8, 87u8, 104u8, 101u8,
110u8, 32u8, 97u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 105u8, 115u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 46u8, 84u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 79u8, 102u8, 86u8, 111u8, 116u8, 101u8, 115u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 0u8, 9u8, 4u8, 124u8, 87u8, 104u8, 101u8, 110u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 32u8, 111u8, 118u8,
101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 115u8, 46u8, 104u8, 83u8, 116u8, 97u8, 107u8, 101u8,
65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 79u8, 102u8, 86u8, 111u8, 116u8, 101u8, 115u8, 69u8,
120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 10u8, 4u8, 152u8, 87u8, 104u8, 101u8, 110u8,
32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 97u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 111u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 115u8, 46u8, 88u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8,
67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 0u8, 11u8, 4u8, 76u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 68u8, 73u8, 68u8, 88u8, 73u8, 110u8, 99u8, 111u8, 114u8,
114u8, 101u8, 99u8, 116u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8,
97u8, 116u8, 101u8, 0u8, 12u8, 4u8, 144u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 99u8, 116u8, 32u8, 115u8, 116u8, 97u8, 116u8, 101u8,
52u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 83u8, 107u8, 105u8, 112u8, 80u8, 105u8, 112u8, 0u8,
13u8, 4u8, 252u8, 87u8, 104u8, 101u8, 110u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 105u8, 110u8,
103u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 114u8, 101u8, 115u8,
117u8, 108u8, 116u8, 115u8, 44u8, 32u8, 97u8, 110u8, 32u8, 117u8, 110u8, 115u8, 107u8, 105u8,
112u8, 112u8, 97u8, 98u8, 108u8, 101u8, 32u8, 80u8, 73u8, 80u8, 32u8, 119u8, 97u8, 115u8, 32u8,
115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 46u8, 88u8, 83u8, 110u8, 97u8, 112u8, 115u8,
104u8, 111u8, 116u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 84u8, 111u8, 111u8, 76u8, 97u8,
114u8, 103u8, 101u8, 0u8, 14u8, 4u8, 21u8, 1u8, 84u8, 114u8, 105u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 110u8, 97u8, 112u8,
115u8, 104u8, 111u8, 116u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 111u8, 118u8, 101u8,
114u8, 102u8, 108u8, 111u8, 119u8, 105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 115u8, 32u8, 108u8,
101u8, 110u8, 103u8, 116u8, 104u8, 46u8, 72u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8,
116u8, 73u8, 100u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 0u8, 15u8, 4u8, 93u8,
1u8, 84u8, 114u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8,
32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 80u8, 73u8,
80u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 105u8, 100u8, 32u8, 100u8, 105u8, 102u8, 102u8,
101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 115u8, 105u8, 116u8,
105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 46u8, 112u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 111u8, 101u8, 115u8, 110u8, 116u8, 69u8,
120u8, 105u8, 115u8, 116u8, 0u8, 16u8, 4u8, 252u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 100u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 102u8,
97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8,
105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 109u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 46u8,
108u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 78u8, 111u8, 116u8, 73u8, 110u8,
83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 83u8, 116u8, 97u8, 116u8, 101u8,
0u8, 17u8, 4u8, 252u8, 65u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 105u8, 110u8,
32u8, 97u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 115u8,
116u8, 97u8, 116u8, 101u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 0u8, 237u8, 9u8, 0u8, 0u8, 4u8, 8u8,
120u8, 220u8, 0u8, 241u8, 9u8, 0u8, 0u8, 4u8, 8u8, 120u8, 129u8, 3u8, 0u8, 245u8, 9u8, 0u8, 0u8,
4u8, 8u8, 212u8, 156u8, 0u8, 249u8, 9u8, 0u8, 0u8, 4u8, 8u8, 120u8, 212u8, 0u8, 253u8, 9u8, 8u8,
64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8,
8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 1u8, 10u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 20u8, 69u8, 114u8,
114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 36u8, 84u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 68u8, 111u8, 101u8, 115u8, 78u8, 111u8, 116u8, 69u8, 120u8, 105u8,
115u8, 116u8, 0u8, 0u8, 4u8, 112u8, 84u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 46u8, 112u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8,
105u8, 101u8, 110u8, 116u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 66u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 1u8, 4u8, 156u8, 73u8, 110u8, 115u8, 117u8, 102u8,
102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 104u8, 68u8, 101u8, 115u8, 116u8, 105u8, 110u8, 97u8, 116u8,
105u8, 111u8, 110u8, 73u8, 115u8, 83u8, 97u8, 109u8, 101u8, 80u8, 111u8, 114u8, 116u8, 102u8,
111u8, 108u8, 105u8, 111u8, 0u8, 2u8, 4u8, 232u8, 84u8, 104u8, 101u8, 32u8, 115u8, 111u8, 117u8,
114u8, 99u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 100u8, 101u8, 115u8, 116u8, 105u8, 110u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8,
111u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 100u8,
105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 46u8, 100u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 97u8, 109u8, 101u8, 65u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 73u8, 110u8, 85u8, 115u8, 101u8, 0u8, 3u8, 4u8, 49u8, 1u8, 84u8, 104u8, 101u8,
32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 99u8, 111u8, 117u8,
108u8, 100u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 110u8, 97u8, 109u8,
101u8, 100u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 104u8, 111u8, 115u8, 101u8, 110u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 105u8,
115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 105u8, 110u8, 32u8, 117u8,
115u8, 101u8, 46u8, 148u8, 83u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 75u8,
101u8, 121u8, 78u8, 111u8, 116u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8,
100u8, 70u8, 111u8, 114u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 0u8,
4u8, 4u8, 252u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8,
121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8,
99u8, 99u8, 101u8, 115u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 40u8, 115u8, 41u8, 46u8, 84u8, 85u8, 110u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 67u8, 117u8, 115u8, 116u8, 111u8, 100u8,
105u8, 97u8, 110u8, 0u8, 5u8, 4u8, 244u8, 84u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 102u8,
111u8, 108u8, 105u8, 111u8, 39u8, 115u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 121u8,
32u8, 105u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 115u8, 111u8, 109u8, 101u8, 111u8,
110u8, 101u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 46u8, 96u8, 73u8, 110u8,
115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 84u8, 111u8, 107u8, 101u8,
110u8, 115u8, 76u8, 111u8, 99u8, 107u8, 101u8, 100u8, 0u8, 6u8, 4u8, 188u8, 67u8, 97u8, 110u8,
32u8, 110u8, 111u8, 116u8, 32u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 32u8, 109u8, 111u8,
114u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 116u8, 104u8, 97u8, 110u8,
32u8, 119u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 108u8, 111u8, 99u8, 107u8,
101u8, 100u8, 68u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 111u8,
116u8, 69u8, 109u8, 112u8, 116u8, 121u8, 0u8, 7u8, 4u8, 188u8, 84u8, 104u8, 101u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8,
32u8, 104u8, 97u8, 115u8, 32u8, 115u8, 111u8, 109u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 108u8, 101u8, 102u8, 116u8,
108u8, 68u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8,
0u8, 8u8, 4u8, 180u8, 84u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 115u8, 32u8, 98u8, 101u8, 108u8, 111u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8,
100u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 0u8, 5u8, 10u8, 8u8, 76u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 95u8, 102u8, 101u8,
101u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 12u8, 104u8, 73u8,
110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 4u8, 176u8,
73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8,
116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 101u8, 101u8,
46u8, 76u8, 85u8, 110u8, 72u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 73u8, 109u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 0u8, 1u8, 4u8, 136u8, 78u8, 111u8, 116u8, 32u8, 97u8,
98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8,
32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 109u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
115u8, 104u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8,
83u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8,
2u8, 4u8, 176u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 116u8, 104u8, 101u8,
32u8, 102u8, 101u8, 101u8, 46u8, 0u8, 9u8, 10u8, 0u8, 0u8, 2u8, 13u8, 10u8, 0u8, 13u8, 10u8, 4u8,
24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 1u8, 17u8, 10u8, 1u8, 8u8, 16u8,
78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8, 111u8, 109u8, 101u8, 4u8, 0u8, 17u8, 10u8,
0u8, 0u8, 1u8, 0u8, 0u8, 17u8, 10u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 44u8, 83u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 100u8, 86u8, 51u8, 16u8, 16u8, 67u8, 97u8, 108u8, 108u8, 1u8, 197u8,
7u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 16u8,
52u8, 80u8, 97u8, 108u8, 108u8, 101u8, 116u8, 115u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8,
1u8, 21u8, 10u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 0u8,
20u8, 1u8, 32u8, 109u8, 97u8, 121u8, 98u8, 101u8, 95u8, 105u8, 100u8, 93u8, 2u8, 1u8, 60u8, 79u8,
112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 62u8, 0u8,
1u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 8u8, 1u8, 72u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 114u8, 105u8, 111u8, 114u8, 105u8,
116u8, 121u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 197u8, 7u8, 1u8, 16u8, 67u8, 97u8, 108u8,
108u8, 0u8, 1u8, 56u8, 109u8, 97u8, 121u8, 98u8, 101u8, 95u8, 112u8, 101u8, 114u8, 105u8, 111u8,
100u8, 105u8, 99u8, 193u8, 7u8, 1u8, 148u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 80u8, 101u8, 114u8, 105u8, 111u8,
100u8, 60u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 62u8,
0u8, 1u8, 24u8, 111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 21u8, 10u8, 1u8, 52u8, 80u8, 97u8,
108u8, 108u8, 101u8, 116u8, 115u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 0u8, 0u8, 21u8, 10u8,
12u8, 96u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 114u8, 117u8, 110u8,
116u8, 105u8, 109u8, 101u8, 95u8, 100u8, 101u8, 118u8, 101u8, 108u8, 111u8, 112u8, 28u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 48u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 67u8,
97u8, 108u8, 108u8, 101u8, 114u8, 0u8, 1u8, 20u8, 24u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8,
4u8, 0u8, 25u8, 10u8, 1u8, 116u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8,
116u8, 101u8, 109u8, 58u8, 58u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 60u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 62u8, 0u8, 0u8, 0u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 4u8, 0u8,
29u8, 10u8, 1u8, 248u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 60u8,
82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 73u8,
110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 49u8, 62u8, 0u8, 9u8, 0u8, 72u8, 84u8, 101u8,
99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 4u8, 0u8, 33u8, 10u8, 1u8, 248u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 79u8, 114u8, 105u8,
103u8, 105u8, 110u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8,
101u8, 58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 51u8, 62u8, 0u8, 11u8,
0u8, 64u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8, 105u8,
116u8, 116u8, 101u8, 101u8, 4u8, 0u8, 37u8, 10u8, 1u8, 248u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 58u8, 58u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 60u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8,
32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8,
116u8, 101u8, 101u8, 58u8, 58u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 52u8, 62u8,
0u8, 13u8, 0u8, 16u8, 86u8, 111u8, 105u8, 100u8, 4u8, 0u8, 41u8, 10u8, 1u8, 17u8, 1u8, 115u8,
101u8, 108u8, 102u8, 58u8, 58u8, 115u8, 112u8, 95u8, 97u8, 112u8, 105u8, 95u8, 104u8, 105u8,
100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 115u8, 95u8,
99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 95u8, 114u8, 117u8, 110u8, 116u8,
105u8, 109u8, 101u8, 58u8, 58u8, 104u8, 105u8, 100u8, 100u8, 101u8, 110u8, 95u8, 105u8, 110u8,
99u8, 108u8, 117u8, 100u8, 101u8, 58u8, 58u8, 86u8, 111u8, 105u8, 100u8, 0u8, 4u8, 0u8, 0u8,
25u8, 10u8, 12u8, 52u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8,
111u8, 114u8, 116u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 36u8, 82u8,
97u8, 119u8, 79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 4u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 16u8, 82u8, 111u8, 111u8, 116u8, 0u8, 0u8, 0u8,
24u8, 83u8, 105u8, 103u8, 110u8, 101u8, 100u8, 4u8, 0u8, 0u8, 1u8, 36u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 1u8, 0u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 2u8, 0u8,
0u8, 29u8, 10u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 109u8,
109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 36u8, 82u8, 97u8, 119u8, 79u8, 114u8, 105u8, 103u8,
105u8, 110u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8,
4u8, 73u8, 1u8, 41u8, 1u8, 1u8, 4u8, 32u8, 69u8, 110u8, 100u8, 111u8, 114u8, 115u8, 101u8, 100u8,
0u8, 0u8, 0u8, 0u8, 33u8, 10u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 36u8, 82u8, 97u8, 119u8, 79u8, 114u8,
105u8, 103u8, 105u8, 110u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8,
1u8, 0u8, 4u8, 73u8, 1u8, 69u8, 1u8, 1u8, 4u8, 32u8, 69u8, 110u8, 100u8, 111u8, 114u8, 115u8,
101u8, 100u8, 0u8, 0u8, 0u8, 0u8, 37u8, 10u8, 8u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 36u8, 82u8, 97u8, 119u8,
79u8, 114u8, 105u8, 103u8, 105u8, 110u8, 8u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 1u8, 0u8, 4u8, 73u8, 1u8, 85u8, 1u8, 1u8, 4u8, 32u8, 69u8, 110u8, 100u8, 111u8,
114u8, 115u8, 101u8, 100u8, 0u8, 0u8, 0u8, 0u8, 41u8, 10u8, 8u8, 28u8, 115u8, 112u8, 95u8, 99u8,
111u8, 114u8, 101u8, 16u8, 86u8, 111u8, 105u8, 100u8, 0u8, 1u8, 0u8, 0u8, 45u8, 10u8, 12u8, 64u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 114u8, 24u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8,
114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 64u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8,
83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 0u8, 4u8, 100u8, 70u8, 97u8, 105u8,
108u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 78u8, 111u8, 116u8, 70u8, 111u8, 117u8,
110u8, 100u8, 0u8, 1u8, 4u8, 124u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 102u8, 105u8,
110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 100u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8, 92u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8,
66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 73u8, 110u8, 80u8, 97u8,
115u8, 116u8, 0u8, 2u8, 4u8, 164u8, 71u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 97u8, 114u8,
103u8, 101u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8,
97u8, 115u8, 116u8, 46u8, 72u8, 82u8, 101u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 78u8, 111u8, 67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 0u8, 3u8, 4u8, 240u8, 82u8, 101u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8,
100u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 105u8, 116u8, 32u8, 100u8,
111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 116u8, 105u8, 109u8,
101u8, 46u8, 4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
91u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8,
99u8, 115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8,
111u8, 47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8,
118u8, 101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 41u8, 10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 49u8, 10u8, 8u8, 68u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8,
110u8, 116u8, 20u8, 86u8, 101u8, 110u8, 117u8, 101u8, 0u8, 0u8, 8u8, 1u8, 28u8, 99u8, 114u8,
101u8, 97u8, 116u8, 111u8, 114u8, 120u8, 1u8, 40u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 73u8, 100u8, 0u8, 1u8, 40u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 116u8, 121u8,
112u8, 101u8, 173u8, 3u8, 1u8, 36u8, 86u8, 101u8, 110u8, 117u8, 101u8, 84u8, 121u8, 112u8, 101u8,
0u8, 0u8, 53u8, 10u8, 0u8, 0u8, 4u8, 8u8, 165u8, 3u8, 177u8, 3u8, 0u8, 57u8, 10u8, 0u8, 0u8, 4u8,
8u8, 165u8, 3u8, 0u8, 0u8, 61u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8,
115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 44u8, 73u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 8u8, 24u8, 77u8, 111u8, 109u8, 101u8,
110u8, 116u8, 1u8, 32u8, 44u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 1u8, 16u8, 0u8, 28u8, 1u8, 56u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 177u8, 3u8, 1u8, 52u8, 73u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 73u8, 100u8, 0u8, 1u8, 32u8, 118u8, 101u8, 110u8, 117u8,
101u8, 95u8, 105u8, 100u8, 165u8, 3u8, 1u8, 28u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 100u8,
0u8, 1u8, 24u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 65u8, 10u8, 1u8, 68u8, 73u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8,
115u8, 0u8, 1u8, 60u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8,
95u8, 116u8, 121u8, 112u8, 101u8, 181u8, 3u8, 1u8, 108u8, 83u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 84u8, 121u8, 112u8, 101u8, 60u8, 66u8, 108u8, 111u8, 99u8,
107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 62u8, 0u8, 1u8, 40u8, 99u8, 114u8, 101u8, 97u8,
116u8, 101u8, 100u8, 95u8, 97u8, 116u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 116u8, 114u8, 97u8,
100u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8, 105u8,
111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 1u8, 40u8, 118u8, 97u8,
108u8, 117u8, 101u8, 95u8, 100u8, 97u8, 116u8, 101u8, 240u8, 1u8, 56u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 62u8, 0u8, 0u8, 65u8, 10u8,
8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 68u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 12u8, 28u8, 85u8, 110u8,
107u8, 110u8, 111u8, 119u8, 110u8, 0u8, 0u8, 0u8, 28u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8,
103u8, 0u8, 1u8, 0u8, 24u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 2u8, 0u8, 0u8, 69u8,
10u8, 0u8, 0u8, 4u8, 8u8, 177u8, 3u8, 193u8, 3u8, 0u8, 73u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8,
36u8, 76u8, 101u8, 103u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 4u8, 36u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 1u8, 12u8, 64u8, 80u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 84u8, 111u8, 107u8, 101u8, 110u8, 76u8, 111u8, 99u8, 107u8, 0u8, 0u8, 0u8,
64u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 80u8, 101u8, 110u8, 100u8,
105u8, 110u8, 103u8, 0u8, 1u8, 0u8, 80u8, 69u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8,
110u8, 84u8, 111u8, 66u8, 101u8, 83u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 8u8, 0u8, 0u8,
1u8, 36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 0u8, 0u8, 32u8, 1u8, 12u8,
117u8, 54u8, 52u8, 0u8, 2u8, 0u8, 0u8, 77u8, 10u8, 0u8, 0u8, 4u8, 8u8, 177u8, 3u8, 212u8, 0u8,
81u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 68u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8,
116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 1u8, 12u8, 28u8, 85u8,
110u8, 107u8, 110u8, 111u8, 119u8, 110u8, 0u8, 0u8, 0u8, 28u8, 80u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 0u8, 1u8, 0u8, 32u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 101u8, 100u8, 0u8,
2u8, 0u8, 0u8, 85u8, 10u8, 0u8, 0u8, 4u8, 8u8, 212u8, 177u8, 3u8, 0u8, 89u8, 10u8, 0u8, 0u8, 4u8,
8u8, 156u8, 165u8, 3u8, 0u8, 93u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8,
95u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 28u8, 86u8, 101u8,
114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8,
97u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8,
0u8, 1u8, 100u8, 48u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 86u8, 101u8, 110u8, 117u8,
101u8, 0u8, 0u8, 4u8, 84u8, 86u8, 101u8, 110u8, 117u8, 101u8, 32u8, 100u8, 111u8, 101u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 48u8, 85u8, 110u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 0u8, 1u8, 4u8, 168u8, 83u8,
101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8,
32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 60u8,
78u8, 111u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 65u8, 102u8, 102u8, 105u8, 114u8,
109u8, 0u8, 2u8, 4u8, 208u8, 78u8, 111u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8,
32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
100u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
88u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 78u8, 111u8,
116u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 101u8, 100u8, 0u8, 3u8, 4u8, 136u8, 73u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8,
110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8,
109u8, 101u8, 100u8, 46u8, 84u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 78u8, 111u8, 116u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 0u8, 4u8, 4u8,
184u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 105u8, 111u8, 110u8, 46u8, 80u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 78u8, 111u8, 116u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 5u8, 4u8,
184u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 102u8, 97u8, 105u8, 108u8, 105u8, 110u8, 103u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8,
116u8, 105u8, 111u8, 110u8, 46u8, 52u8, 76u8, 101u8, 103u8, 78u8, 111u8, 116u8, 80u8, 101u8,
110u8, 100u8, 105u8, 110u8, 103u8, 0u8, 6u8, 4u8, 152u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8,
101u8, 100u8, 32u8, 108u8, 101u8, 103u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8,
112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8,
105u8, 111u8, 110u8, 46u8, 72u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
122u8, 101u8, 100u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 0u8, 7u8, 4u8, 152u8, 83u8, 105u8,
103u8, 110u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 84u8, 82u8, 101u8, 99u8, 101u8, 105u8,
112u8, 116u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 67u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 0u8, 8u8, 4u8, 84u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 68u8, 82u8,
101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 78u8, 111u8, 116u8, 67u8, 108u8, 97u8, 105u8, 109u8,
101u8, 100u8, 0u8, 9u8, 4u8, 84u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 110u8,
111u8, 116u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 46u8, 68u8, 85u8,
110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 86u8, 101u8, 110u8,
117u8, 101u8, 0u8, 10u8, 4u8, 164u8, 86u8, 101u8, 110u8, 117u8, 101u8, 32u8, 100u8, 111u8, 101u8,
115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 114u8, 101u8, 113u8,
117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 115u8, 46u8, 72u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8, 111u8, 76u8,
111u8, 99u8, 107u8, 84u8, 111u8, 107u8, 101u8, 110u8, 115u8, 0u8, 11u8, 4u8, 33u8, 1u8, 87u8,
104u8, 105u8, 108u8, 101u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 105u8, 110u8, 103u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 44u8,
32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 108u8, 111u8, 99u8, 107u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 115u8, 32u8, 105u8, 110u8, 118u8, 111u8, 108u8, 118u8, 101u8, 100u8,
46u8, 68u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 70u8,
97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 12u8, 4u8, 120u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 46u8, 92u8, 73u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 68u8, 97u8, 116u8, 101u8, 115u8, 73u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 0u8, 13u8, 4u8, 116u8, 73u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 105u8, 110u8, 118u8,
97u8, 108u8, 105u8, 100u8, 32u8, 100u8, 97u8, 116u8, 101u8, 115u8, 112u8, 73u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8,
66u8, 108u8, 111u8, 99u8, 107u8, 80u8, 97u8, 115u8, 115u8, 101u8, 100u8, 0u8, 14u8, 4u8, 168u8,
73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 39u8, 115u8, 32u8,
116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 115u8, 101u8, 116u8, 116u8, 108u8, 101u8, 32u8,
98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 64u8,
73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8,
114u8, 101u8, 0u8, 15u8, 4u8, 120u8, 79u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8,
115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 105u8,
110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 72u8, 83u8, 97u8, 109u8, 101u8, 83u8, 101u8,
110u8, 100u8, 101u8, 114u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 0u8, 16u8, 4u8,
132u8, 83u8, 101u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8,
99u8, 101u8, 105u8, 118u8, 101u8, 114u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 97u8, 109u8, 101u8, 46u8, 68u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8,
105u8, 111u8, 77u8, 105u8, 115u8, 109u8, 97u8, 116u8, 99u8, 104u8, 0u8, 17u8, 4u8, 37u8, 1u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 105u8, 110u8, 32u8, 114u8,
101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 112u8, 114u8, 111u8, 118u8,
105u8, 100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 115u8,
101u8, 114u8, 46u8, 68u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 79u8, 110u8, 80u8, 97u8,
115u8, 116u8, 66u8, 108u8, 111u8, 99u8, 107u8, 0u8, 18u8, 4u8, 97u8, 1u8, 84u8, 104u8, 101u8,
32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 115u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 112u8, 97u8, 115u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 97u8, 110u8, 110u8,
111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 46u8,
76u8, 78u8, 111u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 80u8, 114u8,
111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 0u8, 19u8, 4u8, 61u8, 1u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 98u8, 97u8, 115u8, 101u8, 100u8, 32u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 32u8,
97u8, 116u8, 32u8, 108u8, 101u8, 97u8, 115u8, 116u8, 32u8, 111u8, 110u8, 101u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 105u8,
110u8, 112u8, 117u8, 116u8, 46u8, 108u8, 85u8, 110u8, 101u8, 120u8, 112u8, 101u8, 99u8, 116u8,
101u8, 100u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 0u8, 20u8, 4u8, 69u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 115u8, 116u8, 97u8, 116u8, 117u8, 115u8, 32u8, 100u8, 111u8, 101u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 32u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 64u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 84u8,
111u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 21u8, 4u8, 140u8, 83u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
97u8, 105u8, 108u8, 115u8, 46u8, 64u8, 76u8, 101u8, 103u8, 67u8, 111u8, 117u8, 110u8, 116u8,
84u8, 111u8, 111u8, 83u8, 109u8, 97u8, 108u8, 108u8, 0u8, 22u8, 4u8, 165u8, 1u8, 76u8, 101u8,
103u8, 115u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 109u8, 97u8, 116u8, 99u8, 104u8, 101u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 108u8, 101u8, 103u8, 115u8, 32u8, 105u8, 110u8,
32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 97u8, 99u8, 116u8, 32u8, 97u8,
115u8, 32u8, 96u8, 102u8, 114u8, 111u8, 109u8, 95u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 96u8, 46u8, 72u8, 85u8, 110u8, 107u8, 110u8, 111u8, 119u8, 110u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 0u8, 23u8, 4u8, 116u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8, 97u8,
116u8, 117u8, 115u8, 32u8, 105u8, 115u8, 32u8, 117u8, 110u8, 107u8, 110u8, 111u8, 119u8, 110u8,
100u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 72u8, 97u8,
115u8, 84u8, 111u8, 111u8, 77u8, 97u8, 110u8, 121u8, 76u8, 101u8, 103u8, 115u8, 0u8, 24u8, 4u8,
196u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 103u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 32u8,
97u8, 32u8, 115u8, 105u8, 110u8, 103u8, 108u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 4u8, 132u8, 69u8, 114u8, 114u8, 111u8, 114u8,
115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 101u8, 116u8, 116u8,
108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8,
101u8, 10u8, 0u8, 0u8, 4u8, 8u8, 105u8, 10u8, 241u8, 3u8, 0u8, 105u8, 10u8, 12u8, 76u8, 112u8,
111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 112u8, 114u8, 105u8, 109u8, 105u8, 116u8,
105u8, 118u8, 101u8, 115u8, 40u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8,
115u8, 40u8, 83u8, 116u8, 97u8, 116u8, 49u8, 115u8, 116u8, 75u8, 101u8, 121u8, 0u8, 0u8, 8u8,
1u8, 20u8, 97u8, 115u8, 115u8, 101u8, 116u8, 209u8, 3u8, 1u8, 40u8, 65u8, 115u8, 115u8, 101u8,
116u8, 83u8, 99u8, 111u8, 112u8, 101u8, 0u8, 1u8, 36u8, 115u8, 116u8, 97u8, 116u8, 95u8, 116u8,
121u8, 112u8, 101u8, 217u8, 3u8, 1u8, 32u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8,
0u8, 0u8, 109u8, 10u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8,
112u8, 114u8, 105u8, 109u8, 105u8, 116u8, 105u8, 118u8, 101u8, 115u8, 76u8, 116u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 95u8, 99u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8,
99u8, 101u8, 92u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 8u8,
1u8, 24u8, 112u8, 97u8, 117u8, 115u8, 101u8, 100u8, 21u8, 1u8, 1u8, 16u8, 98u8, 111u8, 111u8,
108u8, 0u8, 1u8, 48u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8,
116u8, 115u8, 233u8, 7u8, 1u8, 108u8, 66u8, 84u8, 114u8, 101u8, 101u8, 83u8, 101u8, 116u8, 60u8,
84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8,
105u8, 111u8, 110u8, 62u8, 0u8, 0u8, 113u8, 10u8, 0u8, 0u8, 4u8, 8u8, 9u8, 4u8, 120u8, 0u8,
117u8, 10u8, 8u8, 68u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 116u8,
105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 28u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
0u8, 0u8, 4u8, 0u8, 8u8, 1u8, 8u8, 117u8, 56u8, 0u8, 0u8, 121u8, 10u8, 8u8, 68u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8,
115u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 24u8, 60u8, 73u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 0u8, 0u8,
4u8, 84u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 110u8, 111u8, 116u8, 32u8,
97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 60u8, 83u8, 116u8, 97u8, 116u8, 84u8,
121u8, 112u8, 101u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 0u8, 1u8, 4u8, 96u8, 83u8,
116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 46u8, 132u8, 83u8, 116u8, 97u8, 116u8, 84u8,
121u8, 112u8, 101u8, 78u8, 101u8, 101u8, 100u8, 101u8, 100u8, 66u8, 121u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8,
0u8, 2u8, 4u8, 160u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 32u8, 105u8, 115u8,
32u8, 110u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8,
46u8, 100u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8, 82u8, 101u8, 109u8, 111u8, 118u8, 101u8,
83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 73u8, 110u8, 85u8, 115u8, 101u8, 0u8, 3u8,
4u8, 168u8, 65u8, 32u8, 83u8, 116u8, 97u8, 116u8, 116u8, 121u8, 112u8, 101u8, 32u8, 105u8, 115u8,
32u8, 105u8, 110u8, 32u8, 117u8, 115u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 97u8, 110u8,
39u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 46u8,
80u8, 83u8, 116u8, 97u8, 116u8, 84u8, 121u8, 112u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8,
82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 0u8, 4u8, 4u8, 244u8, 84u8, 104u8, 101u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 83u8, 116u8, 97u8, 116u8, 84u8,
121u8, 112u8, 101u8, 115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8,
46u8, 116u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 76u8, 105u8, 109u8, 105u8, 116u8, 82u8, 101u8, 97u8, 99u8,
104u8, 101u8, 100u8, 0u8, 5u8, 4u8, 25u8, 1u8, 84u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
67u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 108u8, 108u8,
111u8, 119u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8,
101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 46u8, 4u8, 100u8, 83u8, 116u8, 97u8, 116u8, 105u8, 115u8,
116u8, 105u8, 99u8, 115u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 32u8, 101u8, 114u8,
114u8, 111u8, 114u8, 115u8, 46u8, 125u8, 10u8, 0u8, 0u8, 4u8, 8u8, 156u8, 21u8, 4u8, 0u8, 129u8,
10u8, 8u8, 40u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 20u8, 69u8,
114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 48u8, 48u8, 85u8, 110u8, 97u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 0u8, 0u8, 4u8, 168u8, 83u8, 101u8, 110u8,
100u8, 101u8, 114u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8,
97u8, 118u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 32u8, 79u8, 118u8,
101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 0u8, 1u8, 4u8, 140u8, 65u8, 110u8, 32u8, 97u8, 114u8,
105u8, 116u8, 104u8, 109u8, 101u8, 116u8, 105u8, 99u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8,
100u8, 46u8, 108u8, 73u8, 110u8, 115u8, 117u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 84u8, 111u8, 107u8, 101u8, 110u8, 115u8, 82u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8,
110u8, 103u8, 0u8, 2u8, 4u8, 128u8, 78u8, 111u8, 116u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8,
104u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 108u8, 101u8, 102u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 115u8, 97u8, 108u8, 101u8, 46u8, 72u8, 70u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 78u8, 111u8, 116u8, 70u8, 111u8, 117u8, 110u8, 100u8,
0u8, 3u8, 4u8, 84u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8,
110u8, 111u8, 116u8, 32u8, 102u8, 111u8, 117u8, 110u8, 100u8, 46u8, 68u8, 70u8, 117u8, 110u8,
100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 78u8, 111u8, 116u8, 76u8, 105u8, 118u8, 101u8,
0u8, 4u8, 4u8, 156u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8,
105u8, 115u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 102u8, 114u8, 111u8, 122u8,
101u8, 110u8, 32u8, 111u8, 114u8, 32u8, 115u8, 116u8, 111u8, 112u8, 112u8, 101u8, 100u8, 46u8,
64u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 67u8, 108u8, 111u8,
115u8, 101u8, 100u8, 0u8, 5u8, 4u8, 172u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 108u8,
111u8, 115u8, 101u8, 100u8, 47u8, 115u8, 116u8, 111u8, 112u8, 112u8, 101u8, 100u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 46u8, 68u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 100u8, 0u8, 6u8, 4u8, 208u8,
73u8, 110u8, 116u8, 101u8, 114u8, 97u8, 99u8, 116u8, 105u8, 110u8, 103u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 97u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8,
114u8, 32u8, 112u8, 97u8, 115u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8,
32u8, 96u8, 77u8, 111u8, 109u8, 101u8, 110u8, 116u8, 96u8, 46u8, 48u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 86u8, 101u8, 110u8, 117u8, 101u8, 0u8, 7u8, 4u8, 104u8, 65u8, 110u8, 32u8,
105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 32u8,
112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 46u8, 68u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 80u8, 114u8, 105u8, 99u8, 101u8, 84u8, 105u8, 101u8, 114u8, 115u8, 0u8, 8u8,
4u8, 37u8, 1u8, 65u8, 110u8, 32u8, 105u8, 110u8, 100u8, 105u8, 118u8, 105u8, 100u8, 117u8, 97u8,
108u8, 32u8, 112u8, 114u8, 105u8, 99u8, 101u8, 32u8, 116u8, 105u8, 101u8, 114u8, 32u8, 119u8,
97u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 111u8, 114u8, 32u8,
97u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 105u8, 99u8, 101u8,
32u8, 116u8, 105u8, 101u8, 114u8, 115u8, 32u8, 119u8, 97u8, 115u8, 32u8, 105u8, 110u8, 118u8,
97u8, 108u8, 105u8, 100u8, 46u8, 84u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 79u8,
102u8, 102u8, 101u8, 114u8, 105u8, 110u8, 103u8, 87u8, 105u8, 110u8, 100u8, 111u8, 119u8, 0u8,
9u8, 4u8, 93u8, 1u8, 87u8, 105u8, 110u8, 100u8, 111u8, 119u8, 32u8, 40u8, 115u8, 116u8, 97u8,
114u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 101u8, 110u8, 100u8, 32u8, 116u8,
105u8, 109u8, 101u8, 41u8, 32u8, 104u8, 97u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 32u8, 112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 44u8,
32u8, 101u8, 46u8, 103u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 116u8, 105u8, 109u8,
101u8, 32u8, 105u8, 115u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 101u8, 110u8, 100u8,
32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 64u8, 77u8, 97u8, 120u8, 80u8, 114u8, 105u8, 99u8, 101u8,
69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 0u8, 10u8, 4u8, 188u8, 80u8, 114u8, 105u8,
99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 118u8, 101u8,
115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 32u8, 112u8, 114u8, 105u8, 99u8,
101u8, 46u8, 88u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 65u8,
109u8, 111u8, 117u8, 110u8, 116u8, 84u8, 111u8, 111u8, 76u8, 111u8, 119u8, 0u8, 11u8, 4u8, 232u8,
73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 97u8, 109u8, 111u8,
117u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 108u8, 111u8, 119u8, 101u8, 114u8, 32u8, 116u8,
104u8, 97u8, 110u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 105u8, 110u8,
118u8, 101u8, 115u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 46u8, 4u8, 132u8, 69u8, 114u8, 114u8, 111u8, 114u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 101u8, 116u8, 116u8, 108u8, 101u8, 109u8, 101u8, 110u8,
116u8, 32u8, 109u8, 111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 133u8, 10u8, 8u8, 60u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 20u8,
69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 76u8, 73u8, 110u8, 115u8, 117u8,
102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 0u8, 0u8, 4u8, 120u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 39u8, 115u8,
32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 111u8,
32u8, 108u8, 111u8, 119u8, 46u8, 60u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 73u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 1u8, 4u8, 136u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 102u8,
111u8, 114u8, 32u8, 100u8, 105u8, 115u8, 98u8, 117u8, 114u8, 115u8, 101u8, 109u8, 101u8, 110u8,
116u8, 46u8, 4u8, 120u8, 69u8, 114u8, 114u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 114u8, 101u8, 97u8, 115u8, 117u8, 114u8, 121u8, 32u8, 109u8,
111u8, 100u8, 117u8, 108u8, 101u8, 46u8, 137u8, 10u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 20u8, 69u8, 114u8, 114u8,
111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 12u8, 64u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8,
100u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 0u8, 0u8, 4u8, 116u8, 79u8,
102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8,
64u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 67u8, 100u8, 100u8, 77u8, 105u8, 115u8, 115u8,
105u8, 110u8, 103u8, 0u8, 1u8, 4u8, 128u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 100u8,
111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8,
32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 67u8, 68u8, 68u8, 48u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 78u8, 111u8, 110u8, 99u8, 101u8, 0u8, 2u8, 12u8, 104u8, 80u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 110u8, 111u8, 110u8, 99u8, 101u8, 32u8, 119u8, 97u8,
115u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 17u8, 1u8, 73u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 110u8, 111u8,
110u8, 99u8, 101u8, 32u8, 60u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
110u8, 111u8, 110u8, 99u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 93u8, 1u8, 73u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 110u8, 111u8,
110u8, 99u8, 101u8, 32u8, 62u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
110u8, 111u8, 110u8, 99u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 40u8, 115u8, 41u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 102u8, 97u8, 105u8, 108u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 0u8,
141u8, 10u8, 8u8, 44u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 98u8, 97u8, 115u8, 101u8,
20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 8u8, 28u8, 84u8, 111u8, 111u8,
76u8, 111u8, 110u8, 103u8, 0u8, 0u8, 8u8, 128u8, 69u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8,
100u8, 32u8, 97u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8, 99u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 29u8, 1u8, 84u8,
104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8,
32u8, 98u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 121u8, 32u8, 115u8, 111u8,
114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 108u8, 105u8, 115u8, 116u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 110u8, 103u8, 115u8, 44u8, 32u8, 105u8, 110u8, 99u8, 108u8, 117u8,
100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 46u8,
60u8, 67u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 79u8, 118u8, 101u8, 114u8, 102u8, 108u8,
111u8, 119u8, 0u8, 1u8, 24u8, 184u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8,
110u8, 99u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 32u8, 102u8, 111u8,
114u8, 32u8, 115u8, 111u8, 109u8, 101u8, 116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 111u8, 118u8,
101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 0u8, 29u8, 1u8, 87u8, 104u8, 101u8,
110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 115u8,
32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 115u8, 32u8, 111u8, 110u8, 32u8, 101u8, 46u8,
103u8, 46u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 112u8, 97u8, 99u8, 105u8, 116u8,
121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 102u8, 105u8, 101u8, 114u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 57u8, 1u8, 70u8,
111u8, 114u8, 32u8, 101u8, 120u8, 97u8, 109u8, 112u8, 108u8, 101u8, 44u8, 32u8, 119u8, 101u8,
32u8, 109u8, 105u8, 103u8, 104u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 96u8, 112u8,
117u8, 98u8, 32u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 32u8, 80u8, 105u8, 112u8, 73u8,
100u8, 40u8, 117u8, 51u8, 50u8, 41u8, 59u8, 96u8, 44u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
96u8, 117u8, 51u8, 50u8, 58u8, 58u8, 77u8, 65u8, 88u8, 96u8, 32u8, 99u8, 97u8, 112u8, 97u8, 99u8,
105u8, 116u8, 121u8, 46u8, 89u8, 1u8, 73u8, 110u8, 32u8, 112u8, 114u8, 97u8, 99u8, 116u8, 105u8,
99u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 115u8, 101u8, 32u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8,
104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 98u8, 117u8, 116u8, 32u8, 110u8, 111u8, 32u8,
99u8, 111u8, 100u8, 101u8, 32u8, 112u8, 97u8, 116u8, 104u8, 32u8, 115u8, 104u8, 111u8, 117u8,
108u8, 100u8, 32u8, 114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 32u8, 105u8, 110u8, 32u8, 97u8,
32u8, 112u8, 97u8, 110u8, 105u8, 99u8, 44u8, 252u8, 115u8, 111u8, 32u8, 116u8, 104u8, 101u8,
115u8, 101u8, 32u8, 99u8, 111u8, 114u8, 110u8, 101u8, 114u8, 32u8, 99u8, 97u8, 115u8, 101u8,
115u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 99u8,
111u8, 118u8, 101u8, 114u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 110u8,
32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8,
46u8, 0u8, 145u8, 10u8, 0u8, 0u8, 4u8, 8u8, 156u8, 17u8, 1u8, 0u8, 149u8, 10u8, 8u8, 88u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 101u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8,
95u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8,
84u8, 0u8, 1u8, 24u8, 32u8, 78u8, 111u8, 83u8, 117u8, 99u8, 104u8, 65u8, 71u8, 0u8, 0u8, 4u8,
236u8, 65u8, 110u8, 32u8, 65u8, 71u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 65u8, 71u8, 73u8, 100u8, 96u8, 32u8,
100u8, 105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 68u8, 85u8, 110u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 100u8, 65u8, 103u8, 101u8, 110u8, 116u8, 0u8, 1u8, 4u8, 232u8, 84u8, 104u8, 101u8, 32u8,
97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 99u8,
97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 46u8, 56u8, 65u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8, 0u8, 2u8,
4u8, 232u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 96u8, 46u8, 40u8, 78u8, 111u8, 116u8, 65u8, 110u8, 65u8, 103u8, 101u8, 110u8, 116u8, 0u8,
3u8, 4u8, 216u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8,
100u8, 32u8, 96u8, 97u8, 103u8, 101u8, 110u8, 116u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 116u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 46u8,
84u8, 82u8, 101u8, 109u8, 111u8, 118u8, 105u8, 110u8, 103u8, 76u8, 97u8, 115u8, 116u8, 70u8,
117u8, 108u8, 108u8, 65u8, 103u8, 101u8, 110u8, 116u8, 0u8, 4u8, 8u8, 224u8, 84u8, 104u8, 105u8,
115u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8, 111u8, 110u8, 101u8,
44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 116u8, 39u8, 115u8, 32u8, 98u8, 101u8, 105u8, 110u8,
103u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 44u8, 104u8, 109u8, 97u8, 107u8,
105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8,
111u8, 114u8, 112u8, 104u8, 97u8, 110u8, 101u8, 100u8, 46u8, 132u8, 83u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 78u8, 111u8, 116u8, 65u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 70u8, 111u8, 114u8, 65u8, 115u8, 115u8, 101u8,
116u8, 0u8, 5u8, 4u8, 29u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
114u8, 39u8, 115u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8, 97u8, 114u8, 121u8, 32u8,
107u8, 101u8, 121u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 104u8,
97u8, 118u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8,
101u8, 100u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 46u8, 0u8, 153u8, 10u8, 8u8, 56u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 114u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 28u8, 83u8, 117u8, 98u8,
115u8, 105u8, 100u8, 121u8, 4u8, 12u8, 65u8, 99u8, 99u8, 1u8, 0u8, 0u8, 8u8, 1u8, 40u8, 112u8,
97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 0u8, 1u8, 12u8, 65u8, 99u8, 99u8,
0u8, 1u8, 36u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 24u8, 1u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 157u8, 10u8, 8u8, 56u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 114u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 20u8, 69u8,
114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 28u8, 68u8, 85u8, 115u8, 101u8, 114u8,
75u8, 101u8, 121u8, 67u8, 100u8, 100u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8, 103u8, 0u8, 0u8,
4u8, 204u8, 84u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8,
121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8,
104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 39u8, 100u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 76u8, 80u8, 97u8, 121u8, 105u8,
110u8, 103u8, 75u8, 101u8, 121u8, 67u8, 100u8, 100u8, 77u8, 105u8, 115u8, 115u8, 105u8, 110u8,
103u8, 0u8, 1u8, 4u8, 204u8, 84u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8,
107u8, 101u8, 121u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 116u8,
116u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8,
39u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 44u8, 78u8,
111u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 0u8, 2u8, 4u8, 172u8, 84u8,
104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8,
100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8,
32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 48u8,
78u8, 111u8, 116u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8, 121u8, 0u8, 3u8, 4u8,
176u8, 84u8, 104u8, 101u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8,
96u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8, 114u8,
101u8, 110u8, 116u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8,
121u8, 96u8, 46u8, 100u8, 78u8, 111u8, 116u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8,
122u8, 101u8, 100u8, 70u8, 111u8, 114u8, 80u8, 97u8, 121u8, 105u8, 110u8, 103u8, 75u8, 101u8,
121u8, 0u8, 4u8, 4u8, 184u8, 84u8, 104u8, 101u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8,
105u8, 122u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 112u8, 97u8, 121u8, 105u8,
110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 92u8, 78u8, 111u8, 116u8, 65u8, 117u8,
116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 70u8, 111u8, 114u8, 85u8, 115u8, 101u8,
114u8, 75u8, 101u8, 121u8, 0u8, 5u8, 4u8, 176u8, 84u8, 104u8, 101u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 117u8,
115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 46u8, 32u8, 79u8, 118u8, 101u8, 114u8,
102u8, 108u8, 111u8, 119u8, 0u8, 6u8, 4u8, 184u8, 84u8, 104u8, 101u8, 32u8, 114u8, 101u8, 109u8,
97u8, 105u8, 110u8, 105u8, 110u8, 103u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 102u8, 111u8,
114u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 111u8,
118u8, 101u8, 114u8, 102u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 0u8, 161u8, 10u8, 8u8, 56u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8,
20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8, 68u8, 85u8, 110u8, 107u8,
110u8, 111u8, 119u8, 110u8, 73u8, 116u8, 110u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8,
0u8, 0u8, 4u8, 204u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 119u8, 97u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 73u8, 116u8,
110u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 101u8, 115u8, 46u8, 92u8, 73u8,
116u8, 110u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 65u8, 108u8, 114u8, 101u8, 97u8, 100u8,
121u8, 67u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 0u8, 1u8, 4u8, 124u8, 73u8, 116u8, 110u8,
32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 108u8,
114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 101u8, 100u8, 46u8,
64u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 0u8, 2u8, 4u8, 124u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 100u8,
32u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 117u8, 114u8, 101u8, 32u8, 119u8, 97u8, 115u8,
32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 46u8, 84u8, 85u8, 110u8, 97u8, 98u8, 108u8,
101u8, 84u8, 111u8, 67u8, 111u8, 118u8, 101u8, 114u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 0u8, 3u8, 4u8, 176u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 99u8, 97u8,
110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8, 110u8, 118u8, 101u8,
114u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 112u8, 114u8, 105u8, 109u8,
105u8, 116u8, 105u8, 118u8, 101u8, 46u8, 0u8, 165u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 16u8, 119u8,
97u8, 115u8, 109u8, 64u8, 80u8, 114u8, 101u8, 102u8, 97u8, 98u8, 87u8, 97u8, 115u8, 109u8, 77u8,
111u8, 100u8, 117u8, 108u8, 101u8, 4u8, 4u8, 84u8, 0u8, 0u8, 16u8, 1u8, 108u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 115u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 121u8, 4u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 121u8,
4u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8,
109u8, 121u8, 4u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 16u8, 99u8, 111u8, 100u8, 101u8, 40u8,
1u8, 28u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8, 62u8, 0u8, 0u8, 169u8, 10u8, 12u8, 64u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
115u8, 16u8, 119u8, 97u8, 115u8, 109u8, 36u8, 79u8, 119u8, 110u8, 101u8, 114u8, 73u8, 110u8,
102u8, 111u8, 4u8, 4u8, 84u8, 0u8, 0u8, 12u8, 1u8, 20u8, 111u8, 119u8, 110u8, 101u8, 114u8, 0u8,
1u8, 56u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 79u8, 102u8, 60u8, 84u8,
62u8, 0u8, 1u8, 28u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 201u8, 1u8, 1u8, 48u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8, 62u8, 0u8, 1u8, 32u8,
114u8, 101u8, 102u8, 99u8, 111u8, 117u8, 110u8, 116u8, 13u8, 5u8, 1u8, 12u8, 117u8, 54u8, 52u8,
0u8, 0u8, 173u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8,
110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 60u8, 82u8, 97u8, 119u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 73u8, 110u8,
102u8, 111u8, 8u8, 32u8, 67u8, 111u8, 100u8, 101u8, 72u8, 97u8, 115u8, 104u8, 1u8, 36u8, 28u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 0u8, 12u8, 1u8, 28u8, 116u8, 114u8,
105u8, 101u8, 95u8, 105u8, 100u8, 40u8, 1u8, 24u8, 84u8, 114u8, 105u8, 101u8, 73u8, 100u8, 0u8,
1u8, 36u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 36u8, 1u8, 32u8, 67u8,
111u8, 100u8, 101u8, 72u8, 97u8, 115u8, 104u8, 0u8, 1u8, 60u8, 115u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 24u8, 1u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 0u8, 0u8, 177u8, 10u8, 0u8, 0u8, 2u8, 181u8, 10u8, 0u8, 181u8,
10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 115u8, 28u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 60u8,
68u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 0u8, 0u8, 4u8, 1u8, 28u8, 116u8, 114u8, 105u8, 101u8, 95u8, 105u8, 100u8, 40u8, 1u8, 24u8,
84u8, 114u8, 105u8, 101u8, 73u8, 100u8, 0u8, 0u8, 185u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8,
108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 83u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 4u8, 4u8, 84u8, 0u8, 0u8, 12u8, 1u8, 24u8, 108u8, 105u8, 109u8, 105u8,
116u8, 115u8, 189u8, 10u8, 1u8, 24u8, 76u8, 105u8, 109u8, 105u8, 116u8, 115u8, 0u8, 1u8, 76u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 115u8, 193u8, 10u8, 1u8, 84u8, 73u8, 110u8, 115u8, 116u8, 114u8,
117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 60u8,
84u8, 62u8, 0u8, 1u8, 60u8, 104u8, 111u8, 115u8, 116u8, 95u8, 102u8, 110u8, 95u8, 119u8, 101u8,
105u8, 103u8, 104u8, 116u8, 115u8, 197u8, 10u8, 1u8, 64u8, 72u8, 111u8, 115u8, 116u8, 70u8,
110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 60u8, 84u8, 62u8, 0u8, 0u8, 189u8, 10u8,
12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 24u8,
76u8, 105u8, 109u8, 105u8, 116u8, 115u8, 0u8, 0u8, 44u8, 1u8, 48u8, 101u8, 118u8, 101u8, 110u8,
116u8, 95u8, 116u8, 111u8, 112u8, 105u8, 99u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 48u8, 115u8, 116u8, 97u8, 99u8, 107u8, 95u8, 104u8, 101u8, 105u8, 103u8, 104u8, 116u8, 17u8,
6u8, 1u8, 44u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 60u8, 117u8, 51u8, 50u8, 62u8, 0u8, 1u8,
28u8, 103u8, 108u8, 111u8, 98u8, 97u8, 108u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 40u8, 112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 115u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 1u8, 48u8, 109u8, 101u8, 109u8, 111u8, 114u8, 121u8, 95u8, 112u8, 97u8,
103u8, 101u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8, 116u8, 97u8, 98u8,
108u8, 101u8, 95u8, 115u8, 105u8, 122u8, 101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
52u8, 98u8, 114u8, 95u8, 116u8, 97u8, 98u8, 108u8, 101u8, 95u8, 115u8, 105u8, 122u8, 101u8, 16u8,
1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 44u8, 115u8, 117u8, 98u8, 106u8, 101u8, 99u8, 116u8,
95u8, 108u8, 101u8, 110u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8, 99u8, 97u8, 108u8,
108u8, 95u8, 100u8, 101u8, 112u8, 116u8, 104u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
44u8, 112u8, 97u8, 121u8, 108u8, 111u8, 97u8, 100u8, 95u8, 108u8, 101u8, 110u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 1u8, 32u8, 99u8, 111u8, 100u8, 101u8, 95u8, 108u8, 101u8, 110u8, 16u8,
1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8, 193u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 72u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 115u8, 4u8, 4u8, 84u8,
0u8, 0u8, 208u8, 1u8, 28u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 16u8, 1u8, 12u8,
117u8, 51u8, 50u8, 0u8, 1u8, 32u8, 105u8, 54u8, 52u8, 99u8, 111u8, 110u8, 115u8, 116u8, 16u8,
1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 54u8, 52u8, 108u8, 111u8, 97u8, 100u8, 16u8,
1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 32u8, 105u8, 54u8, 52u8, 115u8, 116u8, 111u8, 114u8,
101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 115u8, 101u8, 108u8, 101u8, 99u8,
116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 16u8, 114u8, 35u8, 105u8, 102u8, 16u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 8u8, 98u8, 114u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 20u8, 98u8, 114u8, 95u8, 105u8, 102u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 32u8,
98u8, 114u8, 95u8, 116u8, 97u8, 98u8, 108u8, 101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
72u8, 98u8, 114u8, 95u8, 116u8, 97u8, 98u8, 108u8, 101u8, 95u8, 112u8, 101u8, 114u8, 95u8, 101u8,
110u8, 116u8, 114u8, 121u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 16u8, 99u8, 97u8,
108u8, 108u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 52u8, 99u8, 97u8, 108u8, 108u8, 95u8,
105u8, 110u8, 100u8, 105u8, 114u8, 101u8, 99u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 92u8, 99u8, 97u8, 108u8, 108u8, 95u8, 105u8, 110u8, 100u8, 105u8, 114u8, 101u8, 99u8, 116u8,
95u8, 112u8, 101u8, 114u8, 95u8, 112u8, 97u8, 114u8, 97u8, 109u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 1u8, 36u8, 108u8, 111u8, 99u8, 97u8, 108u8, 95u8, 103u8, 101u8, 116u8, 16u8, 1u8,
12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 36u8, 108u8, 111u8, 99u8, 97u8, 108u8, 95u8, 115u8, 101u8,
116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 36u8, 108u8, 111u8, 99u8, 97u8, 108u8, 95u8,
116u8, 101u8, 101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8, 103u8, 108u8, 111u8,
98u8, 97u8, 108u8, 95u8, 103u8, 101u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 40u8,
103u8, 108u8, 111u8, 98u8, 97u8, 108u8, 95u8, 115u8, 101u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8,
50u8, 0u8, 1u8, 56u8, 109u8, 101u8, 109u8, 111u8, 114u8, 121u8, 95u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 44u8, 109u8, 101u8, 109u8,
111u8, 114u8, 121u8, 95u8, 103u8, 114u8, 111u8, 119u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 24u8, 105u8, 54u8, 52u8, 99u8, 108u8, 122u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
24u8, 105u8, 54u8, 52u8, 99u8, 116u8, 122u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 36u8,
105u8, 54u8, 52u8, 112u8, 111u8, 112u8, 99u8, 110u8, 116u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 1u8, 24u8, 105u8, 54u8, 52u8, 101u8, 113u8, 122u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8,
1u8, 52u8, 105u8, 54u8, 52u8, 101u8, 120u8, 116u8, 101u8, 110u8, 100u8, 115u8, 105u8, 51u8, 50u8,
16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 52u8, 105u8, 54u8, 52u8, 101u8, 120u8, 116u8,
101u8, 110u8, 100u8, 117u8, 105u8, 51u8, 50u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
40u8, 105u8, 51u8, 50u8, 119u8, 114u8, 97u8, 112u8, 105u8, 54u8, 52u8, 16u8, 1u8, 12u8, 117u8,
51u8, 50u8, 0u8, 1u8, 20u8, 105u8, 54u8, 52u8, 101u8, 113u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 1u8, 20u8, 105u8, 54u8, 52u8, 110u8, 101u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
24u8, 105u8, 54u8, 52u8, 108u8, 116u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 108u8, 116u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 103u8, 116u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 103u8, 116u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 108u8, 101u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 108u8, 101u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 103u8, 101u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 103u8, 101u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8,
105u8, 54u8, 52u8, 97u8, 100u8, 100u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 105u8,
54u8, 52u8, 115u8, 117u8, 98u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 105u8, 54u8,
52u8, 109u8, 117u8, 108u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 54u8, 52u8,
100u8, 105u8, 118u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 54u8,
52u8, 100u8, 105u8, 118u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8,
54u8, 52u8, 114u8, 101u8, 109u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8,
105u8, 54u8, 52u8, 114u8, 101u8, 109u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8,
24u8, 105u8, 54u8, 52u8, 97u8, 110u8, 100u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 20u8,
105u8, 54u8, 52u8, 111u8, 114u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 105u8, 54u8,
52u8, 120u8, 111u8, 114u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 24u8, 105u8, 54u8, 52u8,
115u8, 104u8, 108u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 54u8, 52u8,
115u8, 104u8, 114u8, 115u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8, 54u8,
52u8, 115u8, 104u8, 114u8, 117u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8, 105u8,
54u8, 52u8, 114u8, 111u8, 116u8, 108u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 1u8, 28u8,
105u8, 54u8, 52u8, 114u8, 111u8, 116u8, 114u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8, 0u8, 0u8,
197u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 52u8, 72u8, 111u8, 115u8, 116u8, 70u8, 110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
115u8, 4u8, 4u8, 84u8, 0u8, 0u8, 216u8, 1u8, 24u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8,
1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 44u8, 105u8, 115u8, 95u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 36u8, 99u8, 111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 32u8, 1u8,
24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 111u8, 119u8, 110u8, 95u8, 99u8,
111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 64u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 95u8, 105u8, 115u8, 95u8,
111u8, 114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 28u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 32u8, 103u8, 97u8, 115u8, 95u8, 108u8, 101u8, 102u8,
116u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 28u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8,
1u8, 68u8, 118u8, 97u8, 108u8, 117u8, 101u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8,
101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8,
1u8, 60u8, 109u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 95u8, 98u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 48u8, 98u8,
108u8, 111u8, 99u8, 107u8, 95u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 12u8, 110u8, 111u8, 119u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
95u8, 116u8, 111u8, 95u8, 102u8, 101u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 12u8, 103u8, 97u8, 115u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 20u8, 105u8, 110u8, 112u8, 117u8, 116u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 0u8, 1u8, 56u8, 105u8, 110u8, 112u8, 117u8, 116u8, 95u8, 112u8, 101u8,
114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
0u8, 1u8, 32u8, 114u8, 35u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 60u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8,
95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 0u8, 1u8, 36u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8,
101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 24u8, 114u8, 97u8,
110u8, 100u8, 111u8, 109u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8,
52u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 101u8, 118u8, 101u8, 110u8, 116u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 92u8, 100u8, 101u8, 112u8,
111u8, 115u8, 105u8, 116u8, 95u8, 101u8, 118u8, 101u8, 110u8, 116u8, 95u8, 112u8, 101u8, 114u8,
95u8, 116u8, 111u8, 112u8, 105u8, 99u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
0u8, 1u8, 88u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 95u8, 101u8, 118u8, 101u8,
110u8, 116u8, 95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 100u8, 101u8, 98u8, 117u8, 103u8, 95u8, 109u8,
101u8, 115u8, 115u8, 97u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 44u8, 115u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 96u8, 115u8, 101u8, 116u8,
95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 112u8, 101u8, 114u8, 95u8, 110u8,
101u8, 119u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 96u8, 115u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
95u8, 112u8, 101u8, 114u8, 95u8, 111u8, 108u8, 100u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8,
24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 115u8, 101u8, 116u8, 95u8, 99u8,
111u8, 100u8, 101u8, 95u8, 104u8, 97u8, 115u8, 104u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 52u8, 99u8, 108u8, 101u8, 97u8, 114u8, 95u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 88u8,
99u8, 108u8, 101u8, 97u8, 114u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8,
112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 64u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 95u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 0u8, 1u8, 100u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 95u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 44u8, 103u8, 101u8, 116u8,
95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 80u8, 103u8, 101u8, 116u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 48u8, 116u8, 97u8, 107u8, 101u8, 95u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8,
84u8, 116u8, 97u8, 107u8, 101u8, 95u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 95u8,
112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 1u8,
24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 16u8, 99u8, 97u8, 108u8, 108u8, 32u8,
1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 100u8, 101u8, 108u8, 101u8,
103u8, 97u8, 116u8, 101u8, 95u8, 99u8, 97u8, 108u8, 108u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 0u8, 1u8, 92u8, 99u8, 97u8, 108u8, 108u8, 95u8, 116u8, 114u8, 97u8, 110u8,
115u8, 102u8, 101u8, 114u8, 95u8, 115u8, 117u8, 114u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 80u8, 99u8, 97u8, 108u8,
108u8, 95u8, 112u8, 101u8, 114u8, 95u8, 99u8, 108u8, 111u8, 110u8, 101u8, 100u8, 95u8, 98u8,
121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 44u8,
105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 120u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8,
116u8, 105u8, 97u8, 116u8, 101u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
95u8, 115u8, 117u8, 114u8, 99u8, 104u8, 97u8, 114u8, 103u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 100u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8,
105u8, 97u8, 116u8, 101u8, 95u8, 112u8, 101u8, 114u8, 95u8, 115u8, 97u8, 108u8, 116u8, 95u8,
98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8,
52u8, 104u8, 97u8, 115u8, 104u8, 95u8, 115u8, 104u8, 97u8, 50u8, 95u8, 50u8, 53u8, 54u8, 32u8,
1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 88u8, 104u8, 97u8, 115u8, 104u8,
95u8, 115u8, 104u8, 97u8, 50u8, 95u8, 50u8, 53u8, 54u8, 95u8, 112u8, 101u8, 114u8, 95u8, 98u8,
121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 60u8,
104u8, 97u8, 115u8, 104u8, 95u8, 107u8, 101u8, 99u8, 99u8, 97u8, 107u8, 95u8, 50u8, 53u8, 54u8,
32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 96u8, 104u8, 97u8, 115u8,
104u8, 95u8, 107u8, 101u8, 99u8, 99u8, 97u8, 107u8, 95u8, 50u8, 53u8, 54u8, 95u8, 112u8, 101u8,
114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
0u8, 1u8, 60u8, 104u8, 97u8, 115u8, 104u8, 95u8, 98u8, 108u8, 97u8, 107u8, 101u8, 50u8, 95u8,
50u8, 53u8, 54u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 96u8,
104u8, 97u8, 115u8, 104u8, 95u8, 98u8, 108u8, 97u8, 107u8, 101u8, 50u8, 95u8, 50u8, 53u8, 54u8,
95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8,
103u8, 104u8, 116u8, 0u8, 1u8, 60u8, 104u8, 97u8, 115u8, 104u8, 95u8, 98u8, 108u8, 97u8, 107u8,
101u8, 50u8, 95u8, 49u8, 50u8, 56u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
0u8, 1u8, 96u8, 104u8, 97u8, 115u8, 104u8, 95u8, 98u8, 108u8, 97u8, 107u8, 101u8, 50u8, 95u8,
49u8, 50u8, 56u8, 95u8, 112u8, 101u8, 114u8, 95u8, 98u8, 121u8, 116u8, 101u8, 32u8, 1u8, 24u8,
87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 0u8, 1u8, 52u8, 101u8, 99u8, 100u8, 115u8, 97u8, 95u8,
114u8, 101u8, 99u8, 111u8, 118u8, 101u8, 114u8, 32u8, 1u8, 24u8, 87u8, 101u8, 105u8, 103u8,
104u8, 116u8, 0u8, 1u8, 80u8, 101u8, 99u8, 100u8, 115u8, 97u8, 95u8, 116u8, 111u8, 95u8, 101u8,
116u8, 104u8, 95u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 1u8, 24u8, 87u8, 101u8,
105u8, 103u8, 104u8, 116u8, 0u8, 0u8, 201u8, 10u8, 12u8, 64u8, 112u8, 97u8, 108u8, 108u8, 101u8,
116u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 24u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8,
116u8, 88u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 83u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 0u8, 0u8, 4u8, 1u8, 1u8,
65u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8,
32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 103u8,
114u8, 101u8, 97u8, 116u8, 101u8, 114u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 111u8, 110u8, 101u8, 46u8, 64u8, 73u8, 110u8, 118u8, 97u8, 108u8,
105u8, 100u8, 67u8, 97u8, 108u8, 108u8, 70u8, 108u8, 97u8, 103u8, 115u8, 0u8, 1u8, 4u8, 53u8,
1u8, 73u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 99u8, 111u8, 109u8, 98u8, 105u8, 110u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 102u8, 108u8, 97u8, 103u8, 115u8,
32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8,
115u8, 101u8, 97u8, 108u8, 95u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 111u8, 114u8, 32u8, 96u8,
115u8, 101u8, 97u8, 108u8, 95u8, 100u8, 101u8, 108u8, 101u8, 103u8, 97u8, 116u8, 101u8, 95u8,
99u8, 97u8, 108u8, 108u8, 96u8, 46u8, 32u8, 79u8, 117u8, 116u8, 79u8, 102u8, 71u8, 97u8, 115u8,
0u8, 2u8, 4u8, 184u8, 84u8, 104u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8,
100u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 101u8, 120u8, 104u8,
97u8, 117u8, 115u8, 116u8, 101u8, 100u8, 32u8, 105u8, 116u8, 115u8, 32u8, 103u8, 97u8, 115u8,
32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 80u8, 79u8, 117u8, 116u8, 112u8, 117u8, 116u8,
66u8, 117u8, 102u8, 102u8, 101u8, 114u8, 84u8, 111u8, 111u8, 83u8, 109u8, 97u8, 108u8, 108u8,
0u8, 3u8, 4u8, 1u8, 1u8, 84u8, 104u8, 101u8, 32u8, 111u8, 117u8, 116u8, 112u8, 117u8, 116u8,
32u8, 98u8, 117u8, 102u8, 102u8, 101u8, 114u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8,
101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 32u8, 65u8, 80u8, 73u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8,
116u8, 111u8, 111u8, 32u8, 115u8, 109u8, 97u8, 108u8, 108u8, 46u8, 56u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 4u8, 8u8, 53u8,
1u8, 80u8, 101u8, 114u8, 102u8, 111u8, 114u8, 109u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 46u8,
32u8, 80u8, 114u8, 111u8, 98u8, 97u8, 98u8, 108u8, 121u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8,
115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 105u8, 115u8, 110u8, 39u8, 116u8,
32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 148u8, 102u8, 114u8, 101u8, 101u8, 32u8, 98u8,
97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 101u8, 110u8, 100u8, 101u8, 114u8, 39u8, 115u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 46u8, 76u8, 77u8, 97u8, 120u8, 67u8, 97u8, 108u8, 108u8, 68u8, 101u8, 112u8, 116u8,
104u8, 82u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 0u8, 5u8, 8u8, 33u8, 1u8, 80u8, 101u8,
114u8, 102u8, 111u8, 114u8, 109u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8,
108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 100u8, 101u8, 110u8, 105u8, 101u8, 100u8, 32u8, 98u8,
101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 97u8, 108u8,
108u8, 105u8, 110u8, 103u8, 32u8, 100u8, 101u8, 112u8, 116u8, 104u8, 32u8, 114u8, 101u8, 97u8,
99u8, 104u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
148u8, 111u8, 102u8, 32u8, 119u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 115u8, 112u8,
101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 46u8, 64u8, 67u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 78u8, 111u8, 116u8, 70u8, 111u8, 117u8, 110u8, 100u8, 0u8, 6u8,
4u8, 188u8, 78u8, 111u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 119u8,
97u8, 115u8, 32u8, 102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 97u8, 100u8,
100u8, 114u8, 101u8, 115u8, 115u8, 46u8, 48u8, 67u8, 111u8, 100u8, 101u8, 84u8, 111u8, 111u8,
76u8, 97u8, 114u8, 103u8, 101u8, 0u8, 7u8, 8u8, 61u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8,
100u8, 101u8, 32u8, 115u8, 117u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 96u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 95u8,
119u8, 105u8, 116u8, 104u8, 95u8, 99u8, 111u8, 100u8, 101u8, 96u8, 32u8, 101u8, 120u8, 99u8,
101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 68u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 46u8, 48u8, 67u8, 111u8, 100u8, 101u8, 78u8, 111u8,
116u8, 70u8, 111u8, 117u8, 110u8, 100u8, 0u8, 8u8, 4u8, 196u8, 78u8, 111u8, 32u8, 99u8, 111u8,
100u8, 101u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 102u8, 111u8,
117u8, 110u8, 100u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 112u8,
112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8, 97u8, 115u8,
104u8, 46u8, 44u8, 79u8, 117u8, 116u8, 79u8, 102u8, 66u8, 111u8, 117u8, 110u8, 100u8, 115u8, 0u8,
9u8, 4u8, 37u8, 1u8, 65u8, 32u8, 98u8, 117u8, 102u8, 102u8, 101u8, 114u8, 32u8, 111u8, 117u8,
116u8, 115u8, 105u8, 100u8, 101u8, 32u8, 111u8, 102u8, 32u8, 115u8, 97u8, 110u8, 100u8, 98u8,
111u8, 120u8, 32u8, 109u8, 101u8, 109u8, 111u8, 114u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8,
112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 99u8, 111u8,
110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 65u8, 80u8, 73u8, 32u8, 102u8, 117u8, 110u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 56u8, 68u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8,
70u8, 97u8, 105u8, 108u8, 101u8, 100u8, 0u8, 10u8, 4u8, 41u8, 1u8, 73u8, 110u8, 112u8, 117u8,
116u8, 32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 65u8, 80u8, 73u8, 32u8, 102u8, 117u8, 110u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8, 101u8, 32u8, 97u8, 115u8, 32u8, 101u8, 120u8,
112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 116u8, 121u8, 112u8, 101u8, 46u8, 60u8, 67u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 84u8, 114u8, 97u8, 112u8, 112u8, 101u8, 100u8,
0u8, 11u8, 4u8, 136u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 116u8, 114u8,
97u8, 112u8, 112u8, 101u8, 100u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8, 103u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 52u8, 86u8, 97u8, 108u8, 117u8,
101u8, 84u8, 111u8, 111u8, 76u8, 97u8, 114u8, 103u8, 101u8, 0u8, 12u8, 4u8, 204u8, 84u8, 104u8,
101u8, 32u8, 115u8, 105u8, 122u8, 101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8,
32u8, 105u8, 110u8, 32u8, 96u8, 84u8, 58u8, 58u8, 77u8, 97u8, 120u8, 86u8, 97u8, 108u8, 117u8,
101u8, 83u8, 105u8, 122u8, 101u8, 96u8, 32u8, 119u8, 97u8, 115u8, 32u8, 101u8, 120u8, 99u8,
101u8, 101u8, 100u8, 101u8, 100u8, 46u8, 96u8, 84u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8,
116u8, 101u8, 100u8, 87u8, 104u8, 105u8, 108u8, 101u8, 82u8, 101u8, 101u8, 110u8, 116u8, 114u8,
97u8, 110u8, 116u8, 0u8, 13u8, 8u8, 25u8, 1u8, 84u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 119u8, 104u8, 105u8, 108u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 224u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 97u8, 108u8, 108u8, 32u8, 115u8, 116u8, 97u8, 99u8, 107u8, 46u8, 32u8, 67u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8, 116u8, 101u8, 114u8, 109u8, 105u8,
110u8, 97u8, 116u8, 101u8, 96u8, 46u8, 56u8, 73u8, 110u8, 112u8, 117u8, 116u8, 70u8, 111u8,
114u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 0u8, 14u8, 4u8, 65u8, 1u8, 96u8, 115u8, 101u8,
97u8, 108u8, 95u8, 99u8, 97u8, 108u8, 108u8, 96u8, 32u8, 102u8, 111u8, 114u8, 119u8, 97u8, 114u8,
100u8, 101u8, 100u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 32u8, 105u8, 110u8, 112u8, 117u8, 116u8, 46u8, 32u8, 73u8, 116u8, 32u8,
116u8, 104u8, 101u8, 114u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 110u8,
111u8, 32u8, 108u8, 111u8, 110u8, 103u8, 101u8, 114u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8,
97u8, 98u8, 108u8, 101u8, 46u8, 80u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8, 83u8, 117u8, 98u8,
106u8, 101u8, 99u8, 116u8, 84u8, 111u8, 111u8, 76u8, 111u8, 110u8, 103u8, 0u8, 15u8, 4u8, 216u8,
84u8, 104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 106u8, 101u8, 99u8, 116u8, 32u8, 112u8, 97u8,
115u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8,
114u8, 97u8, 110u8, 100u8, 111u8, 109u8, 96u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 52u8, 84u8,
111u8, 111u8, 77u8, 97u8, 110u8, 121u8, 84u8, 111u8, 112u8, 105u8, 99u8, 115u8, 0u8, 16u8, 4u8,
29u8, 1u8, 84u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 111u8, 112u8, 105u8, 99u8, 115u8, 32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 95u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 96u8, 32u8, 101u8, 120u8,
99u8, 101u8, 101u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8,
116u8, 46u8, 60u8, 68u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 84u8, 111u8,
112u8, 105u8, 99u8, 115u8, 0u8, 17u8, 4u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8,
112u8, 105u8, 99u8, 115u8, 32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
95u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 96u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 97u8, 116u8, 32u8, 108u8, 101u8, 97u8, 115u8, 116u8, 32u8, 111u8,
110u8, 101u8, 32u8, 100u8, 117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 46u8, 64u8,
78u8, 111u8, 67u8, 104u8, 97u8, 105u8, 110u8, 69u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8,
111u8, 110u8, 0u8, 18u8, 12u8, 69u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8,
110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 32u8, 97u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 101u8,
120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 46u8, 32u8, 67u8, 97u8, 108u8, 108u8,
105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8,
101u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 32u8, 114u8, 101u8, 115u8, 117u8,
108u8, 116u8, 115u8, 77u8, 1u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 101u8,
114u8, 114u8, 111u8, 114u8, 46u8, 32u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 117u8, 115u8, 117u8, 97u8, 108u8, 108u8, 121u8,
32u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8,
112u8, 112u8, 101u8, 110u8, 32u8, 97u8, 115u8, 32u8, 100u8, 101u8, 112u8, 108u8, 111u8, 121u8,
105u8, 110u8, 103u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 48u8, 105u8, 115u8, 32u8, 114u8, 101u8, 106u8, 101u8, 99u8, 116u8,
101u8, 100u8, 46u8, 68u8, 68u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 81u8, 117u8,
101u8, 117u8, 101u8, 70u8, 117u8, 108u8, 108u8, 0u8, 19u8, 20u8, 1u8, 1u8, 82u8, 101u8, 109u8,
111u8, 118u8, 97u8, 108u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 32u8, 102u8, 97u8, 105u8, 108u8, 101u8, 100u8, 32u8, 98u8, 101u8, 99u8,
97u8, 117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8,
105u8, 111u8, 110u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8, 102u8,
117u8, 108u8, 108u8, 46u8, 0u8, 184u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8,
104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 99u8, 97u8,
108u8, 108u8, 105u8, 110u8, 103u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8, 116u8, 101u8,
114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 96u8, 46u8, 77u8, 1u8, 84u8, 104u8, 101u8, 32u8,
113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8, 102u8, 105u8, 108u8, 108u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 110u8, 103u8, 32u8,
99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8,
101u8, 109u8, 112u8, 116u8, 105u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 32u8, 102u8,
105u8, 120u8, 101u8, 100u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 101u8, 97u8,
99u8, 104u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 33u8, 1u8, 84u8, 114u8, 121u8, 105u8,
110u8, 103u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8,
103u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8,
119u8, 97u8, 121u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 115u8, 111u8, 108u8, 118u8, 101u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 46u8, 68u8, 68u8,
117u8, 112u8, 108u8, 105u8, 99u8, 97u8, 116u8, 101u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 0u8, 20u8, 4u8, 200u8, 65u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8,
101u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8, 46u8, 92u8, 84u8,
101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 100u8, 73u8, 110u8, 67u8, 111u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 111u8, 114u8, 0u8, 21u8, 12u8, 184u8, 65u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 115u8, 101u8, 108u8, 102u8, 32u8, 100u8,
101u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 105u8,
116u8, 115u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 111u8, 114u8,
46u8, 0u8, 208u8, 84u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8,
116u8, 114u8, 105u8, 103u8, 103u8, 101u8, 114u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8,
32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 116u8, 111u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8,
116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 96u8, 46u8, 92u8, 68u8, 101u8,
98u8, 117u8, 103u8, 77u8, 101u8, 115u8, 115u8, 97u8, 103u8, 101u8, 73u8, 110u8, 118u8, 97u8,
108u8, 105u8, 100u8, 85u8, 84u8, 70u8, 56u8, 0u8, 22u8, 4u8, 61u8, 1u8, 84u8, 104u8, 101u8, 32u8,
100u8, 101u8, 98u8, 117u8, 103u8, 32u8, 109u8, 101u8, 115u8, 115u8, 97u8, 103u8, 101u8, 32u8,
115u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8,
115u8, 101u8, 97u8, 108u8, 95u8, 100u8, 101u8, 98u8, 117u8, 103u8, 95u8, 109u8, 101u8, 115u8,
115u8, 97u8, 103u8, 101u8, 96u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 99u8, 111u8, 110u8,
116u8, 97u8, 105u8, 110u8, 32u8, 105u8, 110u8, 118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 85u8,
84u8, 70u8, 45u8, 56u8, 46u8, 64u8, 82u8, 101u8, 101u8, 110u8, 116u8, 114u8, 97u8, 110u8, 99u8,
101u8, 68u8, 101u8, 110u8, 105u8, 101u8, 100u8, 0u8, 23u8, 4u8, 13u8, 1u8, 65u8, 32u8, 99u8,
97u8, 108u8, 108u8, 32u8, 116u8, 114u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 105u8,
110u8, 118u8, 111u8, 107u8, 101u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 102u8, 108u8, 97u8,
103u8, 103u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 110u8, 111u8, 110u8, 45u8, 114u8, 101u8,
101u8, 110u8, 116u8, 114u8, 97u8, 110u8, 116u8, 46u8, 112u8, 83u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 78u8, 111u8, 116u8, 69u8, 110u8,
111u8, 117u8, 103u8, 104u8, 70u8, 117u8, 110u8, 100u8, 115u8, 0u8, 24u8, 4u8, 33u8, 1u8, 79u8,
114u8, 105u8, 103u8, 105u8, 110u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8,
104u8, 97u8, 118u8, 101u8, 32u8, 101u8, 110u8, 111u8, 117u8, 103u8, 104u8, 32u8, 98u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 115u8,
46u8, 112u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 68u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 76u8, 105u8, 109u8, 105u8, 116u8, 69u8, 120u8, 104u8, 97u8, 117u8, 115u8, 116u8,
101u8, 100u8, 0u8, 25u8, 4u8, 13u8, 1u8, 77u8, 111u8, 114u8, 101u8, 32u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
101u8, 100u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 46u8, 36u8, 67u8, 111u8, 100u8, 101u8, 73u8, 110u8, 85u8, 115u8, 101u8, 0u8, 26u8,
4u8, 73u8, 1u8, 67u8, 111u8, 100u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 97u8, 108u8,
32u8, 119u8, 97u8, 115u8, 32u8, 100u8, 101u8, 110u8, 105u8, 101u8, 100u8, 32u8, 98u8, 101u8,
99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8,
32u8, 105u8, 115u8, 32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 105u8, 110u8, 32u8, 117u8,
115u8, 101u8, 32u8, 98u8, 121u8, 32u8, 97u8, 116u8, 32u8, 108u8, 101u8, 97u8, 115u8, 116u8, 32u8,
111u8, 110u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 46u8, 64u8, 67u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 82u8, 101u8, 118u8, 101u8, 114u8, 116u8, 101u8,
100u8, 0u8, 27u8, 16u8, 37u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 32u8, 114u8, 97u8, 110u8, 32u8, 116u8, 111u8, 32u8, 99u8, 111u8, 109u8, 112u8,
108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8, 98u8, 117u8, 116u8, 32u8, 100u8, 101u8, 99u8,
105u8, 100u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 118u8, 101u8, 114u8, 116u8,
32u8, 105u8, 116u8, 115u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 46u8, 73u8, 1u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8,
32u8, 110u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 105u8, 115u8, 32u8, 111u8, 110u8, 108u8,
121u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 46u8, 32u8,
87u8, 104u8, 101u8, 110u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 100u8, 32u8, 100u8, 105u8,
114u8, 101u8, 99u8, 116u8, 108u8, 121u8, 93u8, 1u8, 111u8, 114u8, 32u8, 118u8, 105u8, 97u8, 32u8,
82u8, 80u8, 67u8, 32u8, 97u8, 110u8, 32u8, 96u8, 79u8, 107u8, 96u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8,
32u8, 73u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 110u8, 101u8, 101u8, 100u8,
115u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 115u8, 112u8, 101u8, 99u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 102u8, 108u8, 97u8, 103u8, 115u8, 196u8, 116u8, 111u8, 32u8, 100u8, 101u8,
116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 32u8, 119u8, 104u8, 101u8, 116u8, 104u8, 101u8,
114u8, 32u8, 97u8, 32u8, 114u8, 101u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 32u8,
104u8, 97u8, 115u8, 32u8, 116u8, 97u8, 107u8, 101u8, 110u8, 32u8, 112u8, 108u8, 97u8, 99u8,
101u8, 46u8, 48u8, 67u8, 111u8, 100u8, 101u8, 82u8, 101u8, 106u8, 101u8, 99u8, 116u8, 101u8,
100u8, 0u8, 28u8, 12u8, 69u8, 1u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 39u8, 115u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 119u8, 97u8, 115u8, 32u8,
102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8,
118u8, 97u8, 108u8, 105u8, 100u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8, 103u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 114u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 109u8, 101u8, 110u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8,
46u8, 81u8, 1u8, 65u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8,
108u8, 101u8, 100u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8, 32u8, 99u8, 97u8, 110u8, 32u8,
98u8, 101u8, 32u8, 102u8, 111u8, 117u8, 110u8, 100u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 111u8, 100u8, 101u8, 32u8, 99u8, 111u8, 110u8, 115u8, 111u8, 108u8, 101u8,
32u8, 105u8, 102u8, 32u8, 100u8, 101u8, 98u8, 117u8, 103u8, 32u8, 109u8, 101u8, 115u8, 115u8,
97u8, 103u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8,
101u8, 100u8, 224u8, 111u8, 114u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8,
101u8, 98u8, 117u8, 103u8, 32u8, 98u8, 117u8, 102u8, 102u8, 101u8, 114u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 82u8, 80u8, 67u8, 32u8, 99u8, 108u8, 105u8, 101u8, 110u8, 116u8,
115u8, 46u8, 4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8,
91u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8,
99u8, 115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8,
111u8, 47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8,
118u8, 101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8,
114u8, 115u8, 41u8, 10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 205u8, 10u8, 8u8, 72u8,
112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 95u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 115u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 16u8,
76u8, 82u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 67u8, 97u8, 108u8, 108u8, 78u8, 111u8,
116u8, 70u8, 111u8, 117u8, 110u8, 100u8, 0u8, 0u8, 4u8, 21u8, 1u8, 84u8, 104u8, 101u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 102u8, 117u8, 110u8, 99u8, 95u8, 105u8, 100u8,
58u8, 32u8, 117u8, 51u8, 50u8, 96u8, 32u8, 100u8, 105u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8,
116u8, 114u8, 97u8, 110u8, 115u8, 108u8, 97u8, 116u8, 101u8, 32u8, 105u8, 110u8, 116u8, 111u8,
32u8, 97u8, 32u8, 107u8, 110u8, 111u8, 119u8, 110u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8,
109u8, 101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8, 84u8, 68u8, 97u8, 116u8, 97u8, 76u8, 101u8,
102u8, 116u8, 65u8, 102u8, 116u8, 101u8, 114u8, 68u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8,
103u8, 0u8, 1u8, 4u8, 212u8, 68u8, 97u8, 116u8, 97u8, 32u8, 108u8, 101u8, 102u8, 116u8, 32u8,
105u8, 110u8, 32u8, 105u8, 110u8, 112u8, 117u8, 116u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8,
100u8, 101u8, 99u8, 111u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 114u8, 103u8, 117u8, 109u8,
101u8, 110u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 46u8,
52u8, 73u8, 110u8, 76u8, 101u8, 110u8, 84u8, 111u8, 111u8, 76u8, 97u8, 114u8, 103u8, 101u8, 0u8,
2u8, 4u8, 45u8, 1u8, 73u8, 110u8, 112u8, 117u8, 116u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
32u8, 112u8, 97u8, 115u8, 115u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 109u8,
97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 119u8, 97u8, 115u8, 32u8, 116u8, 111u8, 111u8, 32u8,
108u8, 97u8, 114u8, 103u8, 101u8, 46u8, 104u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8,
105u8, 97u8, 116u8, 111u8, 114u8, 87u8, 105u8, 116u8, 104u8, 78u8, 111u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 3u8, 8u8, 176u8, 65u8, 32u8, 99u8, 111u8, 110u8, 116u8,
114u8, 97u8, 99u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8, 97u8, 116u8, 116u8, 101u8, 109u8,
112u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 115u8,
116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 101u8, 100u8, 44u8, 13u8, 1u8, 98u8, 117u8, 116u8,
32u8, 110u8, 111u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 119u8,
97u8, 115u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8,
119u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 39u8, 115u8, 32u8, 107u8,
101u8, 121u8, 32u8, 119u8, 105u8, 116u8, 104u8, 46u8, 0u8, 209u8, 10u8, 8u8, 60u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 52u8,
82u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 8u8,
36u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 1u8, 0u8, 28u8, 66u8, 97u8,
108u8, 97u8, 110u8, 99u8, 101u8, 1u8, 24u8, 1u8, 8u8, 44u8, 85u8, 110u8, 114u8, 101u8, 113u8,
117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 4u8, 0u8, 213u8, 10u8, 1u8, 112u8, 79u8, 112u8, 116u8,
105u8, 111u8, 110u8, 60u8, 40u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 44u8,
32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 41u8, 62u8, 0u8, 0u8, 0u8, 36u8, 82u8, 101u8,
113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 4u8, 0u8, 16u8, 1u8, 12u8, 117u8, 51u8, 50u8,
0u8, 1u8, 0u8, 0u8, 213u8, 10u8, 4u8, 24u8, 79u8, 112u8, 116u8, 105u8, 111u8, 110u8, 4u8, 4u8,
84u8, 1u8, 205u8, 8u8, 1u8, 8u8, 16u8, 78u8, 111u8, 110u8, 101u8, 0u8, 0u8, 0u8, 16u8, 83u8,
111u8, 109u8, 101u8, 4u8, 0u8, 205u8, 8u8, 0u8, 0u8, 1u8, 0u8, 0u8, 217u8, 10u8, 16u8, 52u8,
102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 28u8,
115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 44u8, 98u8, 111u8, 117u8, 110u8, 100u8, 101u8,
100u8, 95u8, 118u8, 101u8, 99u8, 40u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 86u8,
101u8, 99u8, 8u8, 4u8, 84u8, 1u8, 8u8, 4u8, 83u8, 0u8, 0u8, 4u8, 0u8, 40u8, 1u8, 24u8, 86u8,
101u8, 99u8, 60u8, 84u8, 62u8, 0u8, 0u8, 221u8, 10u8, 12u8, 60u8, 112u8, 97u8, 108u8, 108u8,
101u8, 116u8, 95u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 24u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8,
24u8, 32u8, 84u8, 111u8, 111u8, 76u8, 97u8, 114u8, 103u8, 101u8, 0u8, 0u8, 4u8, 160u8, 80u8,
114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8, 111u8,
32u8, 108u8, 97u8, 114u8, 103u8, 101u8, 32u8, 116u8, 111u8, 32u8, 115u8, 116u8, 111u8, 114u8,
101u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 48u8, 65u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 78u8, 111u8, 116u8, 101u8, 100u8, 0u8, 1u8, 4u8, 164u8, 80u8, 114u8,
101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 108u8, 114u8,
101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 110u8, 111u8, 116u8, 101u8,
100u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 52u8, 78u8, 111u8, 116u8,
65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 0u8, 2u8, 4u8, 200u8, 84u8,
104u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 112u8, 101u8, 114u8, 102u8, 111u8, 114u8, 109u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 78u8, 111u8, 116u8, 78u8, 111u8, 116u8,
101u8, 100u8, 0u8, 3u8, 4u8, 252u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8,
97u8, 103u8, 101u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8, 32u8, 105u8,
116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 121u8, 101u8, 116u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 110u8, 111u8, 116u8, 101u8, 100u8, 46u8, 36u8, 82u8, 101u8,
113u8, 117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 0u8, 4u8, 4u8, 9u8, 1u8, 65u8, 32u8, 112u8,
114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 109u8, 97u8, 121u8, 32u8, 110u8, 111u8,
116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 97u8, 114u8, 101u8, 32u8,
111u8, 117u8, 116u8, 115u8, 116u8, 97u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 114u8, 101u8,
113u8, 117u8, 101u8, 115u8, 116u8, 115u8, 46u8, 48u8, 78u8, 111u8, 116u8, 82u8, 101u8, 113u8,
117u8, 101u8, 115u8, 116u8, 101u8, 100u8, 0u8, 5u8, 4u8, 45u8, 1u8, 84u8, 104u8, 101u8, 32u8,
112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8,
115u8, 116u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8, 32u8, 110u8,
111u8, 32u8, 111u8, 117u8, 116u8, 115u8, 116u8, 97u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8,
114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 115u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
46u8, 4u8, 173u8, 1u8, 10u8, 9u8, 9u8, 9u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 91u8,
100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 32u8, 101u8, 114u8, 114u8, 111u8, 114u8,
115u8, 93u8, 40u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8, 47u8, 47u8, 100u8, 111u8, 99u8,
115u8, 46u8, 115u8, 117u8, 98u8, 115u8, 116u8, 114u8, 97u8, 116u8, 101u8, 46u8, 105u8, 111u8,
47u8, 118u8, 51u8, 47u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 47u8, 101u8, 118u8,
101u8, 110u8, 116u8, 115u8, 45u8, 97u8, 110u8, 100u8, 45u8, 101u8, 114u8, 114u8, 111u8, 114u8,
115u8, 41u8, 10u8, 9u8, 9u8, 9u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 10u8, 9u8, 9u8, 9u8, 225u8, 10u8, 8u8, 68u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 95u8, 116u8, 101u8, 115u8, 116u8, 95u8, 117u8, 116u8, 105u8, 108u8,
115u8, 20u8, 69u8, 114u8, 114u8, 111u8, 114u8, 4u8, 4u8, 84u8, 0u8, 1u8, 0u8, 0u8, 229u8, 10u8,
16u8, 40u8, 115u8, 112u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 28u8, 103u8,
101u8, 110u8, 101u8, 114u8, 105u8, 99u8, 76u8, 117u8, 110u8, 99u8, 104u8, 101u8, 99u8, 107u8,
101u8, 100u8, 95u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 72u8, 85u8,
110u8, 99u8, 104u8, 101u8, 99u8, 107u8, 101u8, 100u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8,
115u8, 105u8, 99u8, 16u8, 28u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 1u8, 65u8, 5u8,
16u8, 67u8, 97u8, 108u8, 108u8, 1u8, 201u8, 5u8, 36u8, 83u8, 105u8, 103u8, 110u8, 97u8, 116u8,
117u8, 114u8, 101u8, 1u8, 213u8, 7u8, 20u8, 69u8, 120u8, 116u8, 114u8, 97u8, 1u8, 233u8, 10u8,
0u8, 4u8, 0u8, 40u8, 0u8, 0u8, 0u8, 233u8, 10u8, 0u8, 0u8, 4u8, 32u8, 237u8, 10u8, 241u8, 10u8,
245u8, 10u8, 249u8, 10u8, 1u8, 11u8, 5u8, 11u8, 13u8, 11u8, 17u8, 11u8, 0u8, 237u8, 10u8, 16u8,
48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 40u8,
101u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 115u8, 72u8, 99u8, 104u8, 101u8,
99u8, 107u8, 95u8, 115u8, 112u8, 101u8, 99u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 64u8, 67u8, 104u8, 101u8, 99u8, 107u8, 83u8, 112u8, 101u8, 99u8, 86u8, 101u8, 114u8,
115u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8, 0u8, 0u8, 0u8, 0u8, 241u8, 10u8, 16u8, 48u8, 102u8,
114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 40u8, 101u8, 120u8,
116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 115u8, 64u8, 99u8, 104u8, 101u8, 99u8, 107u8,
95u8, 116u8, 120u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 56u8, 67u8, 104u8,
101u8, 99u8, 107u8, 84u8, 120u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 4u8, 4u8, 84u8,
0u8, 0u8, 0u8, 0u8, 245u8, 10u8, 16u8, 48u8, 102u8, 114u8, 97u8, 109u8, 101u8, 95u8, 115u8,
121u8, 115u8, 116u8, 101u8, 109u8, 40u8, 101u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8,
110u8, 115u8, 52u8, 99u8, 104u8, 101u8, 99u8, 107u8, 95u8, 103u8, 101u8, 110u8, 101u8, 115u8,
105u8, 115u8, 48u8, 67u8, 104u8, 101u8, 99u8, 107u8, 71u8, 101u8, 110u8, 101u8, 115u8, 105u8,
115u8, 4u8, 4u8, 84u8, 0u8, 0u8, 0u8, 0u8, 249u8, 10u8, 16u8, 48u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 40u8, 101u8, 120u8, 116u8, 101u8, 110u8,
115u8, 105u8, 111u8, 110u8, 115u8, 60u8, 99u8, 104u8, 101u8, 99u8, 107u8, 95u8, 109u8, 111u8,
114u8, 116u8, 97u8, 108u8, 105u8, 116u8, 121u8, 56u8, 67u8, 104u8, 101u8, 99u8, 107u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 105u8, 116u8, 121u8, 4u8, 4u8, 84u8, 0u8, 0u8, 4u8, 0u8, 253u8,
10u8, 1u8, 12u8, 69u8, 114u8, 97u8, 0u8, 0u8, 253u8, 10u8, 16u8, 40u8, 115u8, 112u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 28u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8, 99u8,
12u8, 101u8, 114u8, 97u8, 12u8, 69u8, 114u8, 97u8, 0u8, 1u8, 1u8, 4u8, 32u8, 73u8, 109u8, 109u8,
111u8, 114u8, 116u8, 97u8, 108u8, 0u8, 0u8, 0u8, 28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 1u8, 0u8, 28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 4u8,
0u8, 8u8, 0u8, 0u8, 2u8, 0u8, 28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 51u8, 4u8, 0u8, 8u8,
0u8, 0u8, 3u8, 0u8, 28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8,
4u8, 0u8, 28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 5u8, 0u8,
28u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 6u8, 0u8, 28u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 7u8, 0u8, 28u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 8u8, 0u8, 28u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 9u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 10u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 11u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 12u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 13u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 14u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 15u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 16u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 17u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 18u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 19u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 20u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 21u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 22u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 23u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 24u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 25u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 26u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 27u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 28u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 29u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 30u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 31u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 32u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 33u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 34u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 35u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 36u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 37u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 38u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 51u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 39u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 40u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 41u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 42u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 43u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 44u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 45u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 46u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 47u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 48u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 52u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 49u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 50u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 51u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 52u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 53u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 54u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 55u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 56u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 57u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 58u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 53u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 59u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 60u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 61u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 62u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 63u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 64u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 65u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 66u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 67u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 68u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 54u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 69u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 70u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 71u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 72u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 73u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 74u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 75u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 76u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 77u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 78u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 55u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 79u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 80u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 81u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 82u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 83u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 84u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 85u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 86u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 87u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 88u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 56u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 89u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 90u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 91u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 92u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 93u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 94u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 95u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 96u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 97u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 98u8, 0u8, 32u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 57u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 99u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 48u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 100u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 101u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 102u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 103u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 104u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8,
105u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 54u8, 4u8, 0u8, 8u8, 0u8,
0u8, 106u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 55u8, 4u8, 0u8, 8u8,
0u8, 0u8, 107u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 56u8, 4u8, 0u8,
8u8, 0u8, 0u8, 108u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 48u8, 57u8, 4u8,
0u8, 8u8, 0u8, 0u8, 109u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 49u8, 48u8,
4u8, 0u8, 8u8, 0u8, 0u8, 110u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 49u8,
49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 111u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
49u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 112u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 49u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 113u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 49u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 114u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 49u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 115u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 49u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 116u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 49u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 117u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 49u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 118u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 49u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 119u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 120u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8,
121u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 50u8, 4u8, 0u8, 8u8, 0u8,
0u8, 122u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 51u8, 4u8, 0u8, 8u8,
0u8, 0u8, 123u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 52u8, 4u8, 0u8,
8u8, 0u8, 0u8, 124u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 53u8, 4u8,
0u8, 8u8, 0u8, 0u8, 125u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8, 54u8,
4u8, 0u8, 8u8, 0u8, 0u8, 126u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 50u8,
55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 127u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
50u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 128u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 50u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 129u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 51u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 130u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 51u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 131u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 51u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 132u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 133u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 134u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 135u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 136u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8,
137u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 56u8, 4u8, 0u8, 8u8, 0u8,
0u8, 138u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 51u8, 57u8, 4u8, 0u8, 8u8,
0u8, 0u8, 139u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 52u8, 48u8, 4u8, 0u8,
8u8, 0u8, 0u8, 140u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 52u8, 49u8, 4u8,
0u8, 8u8, 0u8, 0u8, 141u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 52u8, 50u8,
4u8, 0u8, 8u8, 0u8, 0u8, 142u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 52u8,
51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 143u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
52u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 144u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 52u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 145u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 52u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 146u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 52u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 147u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 52u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 148u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 52u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 149u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 150u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 151u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 152u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8,
153u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 52u8, 4u8, 0u8, 8u8, 0u8,
0u8, 154u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 53u8, 4u8, 0u8, 8u8,
0u8, 0u8, 155u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 54u8, 4u8, 0u8,
8u8, 0u8, 0u8, 156u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 55u8, 4u8,
0u8, 8u8, 0u8, 0u8, 157u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8, 56u8,
4u8, 0u8, 8u8, 0u8, 0u8, 158u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 53u8,
57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 159u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
54u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 160u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 54u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 161u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 54u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 162u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 54u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 163u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 54u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 164u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 54u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 165u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 54u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 166u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 54u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 167u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 54u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 168u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 54u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8,
169u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8, 48u8, 4u8, 0u8, 8u8, 0u8,
0u8, 170u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8, 49u8, 4u8, 0u8, 8u8,
0u8, 0u8, 171u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8, 50u8, 4u8, 0u8,
8u8, 0u8, 0u8, 172u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8, 51u8, 4u8,
0u8, 8u8, 0u8, 0u8, 173u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8, 52u8,
4u8, 0u8, 8u8, 0u8, 0u8, 174u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 55u8,
53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 175u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
55u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 176u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 55u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 177u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 55u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 178u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 55u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 179u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 56u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 180u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 181u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 182u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 183u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 184u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8,
185u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 54u8, 4u8, 0u8, 8u8, 0u8,
0u8, 186u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 55u8, 4u8, 0u8, 8u8,
0u8, 0u8, 187u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 56u8, 4u8, 0u8,
8u8, 0u8, 0u8, 188u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 56u8, 57u8, 4u8,
0u8, 8u8, 0u8, 0u8, 189u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 57u8, 48u8,
4u8, 0u8, 8u8, 0u8, 0u8, 190u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 57u8,
49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 191u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8,
57u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 192u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
49u8, 57u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 193u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 49u8, 57u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 194u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 49u8, 57u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 195u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 49u8, 57u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 196u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 49u8, 57u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 197u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 57u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 198u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 49u8, 57u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 199u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 200u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8,
201u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 50u8, 4u8, 0u8, 8u8, 0u8,
0u8, 202u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 51u8, 4u8, 0u8, 8u8,
0u8, 0u8, 203u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 52u8, 4u8, 0u8,
8u8, 0u8, 0u8, 204u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 53u8, 4u8,
0u8, 8u8, 0u8, 0u8, 205u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8, 54u8,
4u8, 0u8, 8u8, 0u8, 0u8, 206u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 48u8,
55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 207u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8,
48u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 208u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
50u8, 48u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 209u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 50u8, 49u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 210u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 50u8, 49u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 211u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 49u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 212u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 213u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 214u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 215u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 216u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8,
217u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 56u8, 4u8, 0u8, 8u8, 0u8,
0u8, 218u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 49u8, 57u8, 4u8, 0u8, 8u8,
0u8, 0u8, 219u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 50u8, 48u8, 4u8, 0u8,
8u8, 0u8, 0u8, 220u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 50u8, 49u8, 4u8,
0u8, 8u8, 0u8, 0u8, 221u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 50u8, 50u8,
4u8, 0u8, 8u8, 0u8, 0u8, 222u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 50u8,
51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 223u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8,
50u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 224u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
50u8, 50u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 225u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 50u8, 50u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 226u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 50u8, 50u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 227u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 50u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 228u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 50u8, 50u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 229u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 230u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 231u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 232u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8,
233u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 52u8, 4u8, 0u8, 8u8, 0u8,
0u8, 234u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 53u8, 4u8, 0u8, 8u8,
0u8, 0u8, 235u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 54u8, 4u8, 0u8,
8u8, 0u8, 0u8, 236u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 55u8, 4u8,
0u8, 8u8, 0u8, 0u8, 237u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8, 56u8,
4u8, 0u8, 8u8, 0u8, 0u8, 238u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 51u8,
57u8, 4u8, 0u8, 8u8, 0u8, 0u8, 239u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8,
52u8, 48u8, 4u8, 0u8, 8u8, 0u8, 0u8, 240u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8,
50u8, 52u8, 49u8, 4u8, 0u8, 8u8, 0u8, 0u8, 241u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8,
108u8, 50u8, 52u8, 50u8, 4u8, 0u8, 8u8, 0u8, 0u8, 242u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8,
97u8, 108u8, 50u8, 52u8, 51u8, 4u8, 0u8, 8u8, 0u8, 0u8, 243u8, 0u8, 36u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 50u8, 52u8, 52u8, 4u8, 0u8, 8u8, 0u8, 0u8, 244u8, 0u8, 36u8, 77u8, 111u8,
114u8, 116u8, 97u8, 108u8, 50u8, 52u8, 53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 245u8, 0u8, 36u8, 77u8,
111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 52u8, 54u8, 4u8, 0u8, 8u8, 0u8, 0u8, 246u8, 0u8, 36u8,
77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 52u8, 55u8, 4u8, 0u8, 8u8, 0u8, 0u8, 247u8, 0u8,
36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 52u8, 56u8, 4u8, 0u8, 8u8, 0u8, 0u8, 248u8,
0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 52u8, 57u8, 4u8, 0u8, 8u8, 0u8, 0u8,
249u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8, 48u8, 4u8, 0u8, 8u8, 0u8,
0u8, 250u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8, 49u8, 4u8, 0u8, 8u8,
0u8, 0u8, 251u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8, 50u8, 4u8, 0u8,
8u8, 0u8, 0u8, 252u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8, 51u8, 4u8,
0u8, 8u8, 0u8, 0u8, 253u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8, 52u8,
4u8, 0u8, 8u8, 0u8, 0u8, 254u8, 0u8, 36u8, 77u8, 111u8, 114u8, 116u8, 97u8, 108u8, 50u8, 53u8,
53u8, 4u8, 0u8, 8u8, 0u8, 0u8, 255u8, 0u8, 0u8, 1u8, 11u8, 16u8, 48u8, 102u8, 114u8, 97u8, 109u8,
101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 40u8, 101u8, 120u8, 116u8, 101u8, 110u8,
115u8, 105u8, 111u8, 110u8, 115u8, 44u8, 99u8, 104u8, 101u8, 99u8, 107u8, 95u8, 110u8, 111u8,
110u8, 99u8, 101u8, 40u8, 67u8, 104u8, 101u8, 99u8, 107u8, 78u8, 111u8, 110u8, 99u8, 101u8, 4u8,
4u8, 84u8, 0u8, 0u8, 4u8, 0u8, 121u8, 4u8, 1u8, 32u8, 84u8, 58u8, 58u8, 73u8, 110u8, 100u8,
101u8, 120u8, 0u8, 0u8, 5u8, 11u8, 12u8, 76u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 95u8, 101u8, 120u8, 116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 115u8, 48u8, 99u8,
104u8, 101u8, 99u8, 107u8, 95u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 44u8, 67u8, 104u8,
101u8, 99u8, 107u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 4u8, 4u8, 84u8, 0u8, 0u8, 4u8, 0u8,
9u8, 11u8, 1u8, 20u8, 67u8, 87u8, 60u8, 84u8, 62u8, 0u8, 0u8, 9u8, 11u8, 16u8, 48u8, 102u8,
114u8, 97u8, 109u8, 101u8, 95u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 40u8, 101u8, 120u8,
116u8, 101u8, 110u8, 115u8, 105u8, 111u8, 110u8, 115u8, 48u8, 99u8, 104u8, 101u8, 99u8, 107u8,
95u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 44u8, 67u8, 104u8, 101u8, 99u8, 107u8, 87u8,
101u8, 105u8, 103u8, 104u8, 116u8, 4u8, 4u8, 84u8, 0u8, 0u8, 0u8, 0u8, 13u8, 11u8, 8u8, 104u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 95u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 96u8, 67u8,
104u8, 97u8, 114u8, 103u8, 101u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 80u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 4u8, 4u8, 84u8, 0u8, 0u8, 4u8, 0u8,
201u8, 1u8, 1u8, 48u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 60u8, 84u8,
62u8, 0u8, 0u8, 17u8, 11u8, 8u8, 72u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 95u8, 112u8,
101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 68u8, 83u8, 116u8, 111u8,
114u8, 101u8, 67u8, 97u8, 108u8, 108u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 4u8,
4u8, 84u8, 0u8, 0u8, 0u8, 0u8, 21u8, 11u8, 12u8, 96u8, 112u8, 111u8, 108u8, 121u8, 109u8, 101u8,
115u8, 104u8, 95u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 95u8, 100u8, 101u8, 118u8,
101u8, 108u8, 111u8, 112u8, 28u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 28u8, 82u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 0u8, 0u8, 0u8, 0u8, 200u8, 24u8, 83u8, 121u8, 115u8,
116u8, 101u8, 109u8, 1u8, 24u8, 83u8, 121u8, 115u8, 116u8, 101u8, 109u8, 64u8, 28u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 1u8, 1u8, 4u8, 2u8, 0u8, 12u8, 65u8, 1u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
4u8, 232u8, 32u8, 84u8, 104u8, 101u8, 32u8, 102u8, 117u8, 108u8, 108u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8,
99u8, 117u8, 108u8, 97u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 73u8,
68u8, 46u8, 56u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 67u8, 111u8,
117u8, 110u8, 116u8, 0u8, 0u8, 16u8, 4u8, 0u8, 4u8, 184u8, 32u8, 84u8, 111u8, 116u8, 97u8, 108u8,
32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 32u8, 99u8, 111u8,
117u8, 110u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 44u8, 66u8,
108u8, 111u8, 99u8, 107u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 1u8, 0u8, 28u8, 96u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 4u8, 136u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 64u8, 65u8, 108u8, 108u8, 69u8,
120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 76u8, 101u8, 110u8, 0u8, 0u8, 16u8,
4u8, 0u8, 4u8, 65u8, 1u8, 32u8, 84u8, 111u8, 116u8, 97u8, 108u8, 32u8, 108u8, 101u8, 110u8,
103u8, 116u8, 104u8, 32u8, 40u8, 105u8, 110u8, 32u8, 98u8, 121u8, 116u8, 101u8, 115u8, 41u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 108u8, 108u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 115u8, 32u8, 112u8, 117u8, 116u8, 32u8, 116u8, 111u8, 103u8, 101u8,
116u8, 104u8, 101u8, 114u8, 44u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8,
36u8, 66u8, 108u8, 111u8, 99u8, 107u8, 72u8, 97u8, 115u8, 104u8, 1u8, 1u8, 4u8, 5u8, 16u8, 36u8,
128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 152u8, 32u8, 77u8,
97u8, 112u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 104u8, 97u8, 115u8, 104u8, 101u8, 115u8, 46u8, 52u8, 69u8, 120u8, 116u8, 114u8, 105u8,
110u8, 115u8, 105u8, 99u8, 68u8, 97u8, 116u8, 97u8, 1u8, 1u8, 4u8, 5u8, 16u8, 40u8, 4u8, 0u8,
4u8, 61u8, 1u8, 32u8, 69u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 32u8,
100u8, 97u8, 116u8, 97u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 40u8,
109u8, 97u8, 112u8, 115u8, 32u8, 97u8, 110u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8,
115u8, 105u8, 99u8, 39u8, 115u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8,
32u8, 105u8, 116u8, 115u8, 32u8, 100u8, 97u8, 116u8, 97u8, 41u8, 46u8, 24u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 9u8, 1u8, 32u8, 84u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8,
32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 101u8, 100u8, 46u8, 32u8, 83u8, 101u8,
116u8, 32u8, 98u8, 121u8, 32u8, 96u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 95u8, 98u8,
108u8, 111u8, 99u8, 107u8, 96u8, 46u8, 40u8, 80u8, 97u8, 114u8, 101u8, 110u8, 116u8, 72u8, 97u8,
115u8, 104u8, 1u8, 0u8, 36u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 4u8, 112u8, 32u8, 72u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 112u8, 114u8, 101u8, 118u8, 105u8, 111u8, 117u8, 115u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 46u8, 24u8, 68u8, 105u8, 103u8, 101u8, 115u8, 116u8, 1u8, 0u8, 44u8, 4u8, 0u8, 4u8, 240u8,
32u8, 68u8, 105u8, 103u8, 101u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
44u8, 32u8, 97u8, 108u8, 115u8, 111u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 104u8, 101u8, 97u8, 100u8,
101u8, 114u8, 46u8, 24u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 1u8, 0u8, 60u8, 4u8, 0u8,
28u8, 160u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 100u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 0u8,
29u8, 1u8, 32u8, 78u8, 79u8, 84u8, 69u8, 58u8, 32u8, 84u8, 104u8, 101u8, 32u8, 105u8, 116u8,
101u8, 109u8, 32u8, 105u8, 115u8, 32u8, 117u8, 110u8, 98u8, 111u8, 117u8, 110u8, 100u8, 32u8,
97u8, 110u8, 100u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 116u8, 104u8, 101u8,
114u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 98u8,
101u8, 32u8, 114u8, 101u8, 97u8, 100u8, 32u8, 111u8, 110u8, 32u8, 99u8, 104u8, 97u8, 105u8,
110u8, 46u8, 208u8, 32u8, 73u8, 116u8, 32u8, 99u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8,
116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 32u8, 105u8, 110u8, 102u8, 108u8, 97u8,
116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 80u8, 111u8, 86u8, 32u8, 115u8, 105u8, 122u8,
101u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 0u8, 45u8,
1u8, 32u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8,
32u8, 108u8, 97u8, 114u8, 103u8, 101u8, 32u8, 105u8, 110u8, 45u8, 109u8, 101u8, 109u8, 111u8,
114u8, 121u8, 32u8, 115u8, 105u8, 122u8, 101u8, 46u8, 32u8, 66u8, 111u8, 120u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 110u8,
111u8, 116u8, 32u8, 103u8, 111u8, 32u8, 111u8, 117u8, 116u8, 45u8, 111u8, 102u8, 45u8, 109u8,
101u8, 109u8, 111u8, 114u8, 121u8, 252u8, 32u8, 106u8, 117u8, 115u8, 116u8, 32u8, 105u8, 110u8,
32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 115u8, 111u8, 109u8, 101u8, 111u8, 110u8, 101u8, 32u8,
115u8, 116u8, 105u8, 108u8, 108u8, 32u8, 114u8, 101u8, 97u8, 100u8, 115u8, 32u8, 116u8, 104u8,
101u8, 109u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 119u8, 105u8, 116u8, 104u8, 105u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 46u8, 40u8,
69u8, 118u8, 101u8, 110u8, 116u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8,
0u8, 0u8, 0u8, 4u8, 184u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 105u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 69u8, 118u8, 101u8, 110u8, 116u8, 115u8, 60u8, 84u8, 62u8,
96u8, 32u8, 108u8, 105u8, 115u8, 116u8, 46u8, 44u8, 69u8, 118u8, 101u8, 110u8, 116u8, 84u8,
111u8, 112u8, 105u8, 99u8, 115u8, 1u8, 1u8, 4u8, 2u8, 36u8, 113u8, 4u8, 4u8, 0u8, 40u8, 37u8,
1u8, 32u8, 77u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8,
101u8, 110u8, 32u8, 97u8, 32u8, 116u8, 111u8, 112u8, 105u8, 99u8, 32u8, 40u8, 114u8, 101u8,
112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 84u8,
58u8, 58u8, 72u8, 97u8, 115u8, 104u8, 41u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 32u8, 118u8,
101u8, 99u8, 116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
101u8, 115u8, 148u8, 32u8, 111u8, 102u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 60u8, 69u8, 118u8, 101u8, 110u8, 116u8,
115u8, 60u8, 84u8, 62u8, 62u8, 96u8, 32u8, 108u8, 105u8, 115u8, 116u8, 46u8, 0u8, 81u8, 1u8,
32u8, 65u8, 108u8, 108u8, 32u8, 116u8, 111u8, 112u8, 105u8, 99u8, 32u8, 118u8, 101u8, 99u8,
116u8, 111u8, 114u8, 115u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 100u8, 101u8, 116u8, 101u8,
114u8, 109u8, 105u8, 110u8, 105u8, 115u8, 116u8, 105u8, 99u8, 32u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 32u8, 108u8, 111u8, 99u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8,
100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 111u8, 112u8, 105u8, 99u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
69u8, 1u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 115u8, 32u8, 108u8, 105u8, 103u8, 104u8,
116u8, 45u8, 99u8, 108u8, 105u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 108u8,
101u8, 118u8, 101u8, 114u8, 97u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 115u8, 116u8, 111u8,
114u8, 97u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 99u8, 107u8, 105u8, 110u8, 103u8, 32u8,
109u8, 101u8, 99u8, 104u8, 97u8, 110u8, 105u8, 115u8, 109u8, 32u8, 97u8, 110u8, 100u8, 228u8,
32u8, 105u8, 110u8, 32u8, 99u8, 97u8, 115u8, 101u8, 32u8, 111u8, 102u8, 32u8, 99u8, 104u8, 97u8,
110u8, 103u8, 101u8, 115u8, 32u8, 102u8, 101u8, 116u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8,
32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8,
115u8, 32u8, 111u8, 102u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 101u8, 115u8, 116u8, 46u8,
0u8, 77u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 104u8,
97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 96u8, 40u8, 84u8,
58u8, 58u8, 66u8, 108u8, 111u8, 99u8, 107u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 44u8, 32u8,
69u8, 118u8, 101u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 41u8, 96u8, 32u8, 98u8,
101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 105u8, 102u8, 32u8, 119u8, 101u8, 32u8, 117u8,
115u8, 101u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 106u8, 117u8, 115u8, 116u8, 77u8,
1u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 69u8, 118u8, 101u8, 110u8, 116u8, 73u8, 110u8, 100u8,
101u8, 120u8, 96u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 99u8, 97u8,
115u8, 101u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 112u8, 105u8,
99u8, 32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8,
99u8, 111u8, 110u8, 116u8, 101u8, 110u8, 116u8, 115u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 1u8, 1u8, 32u8,
110u8, 111u8, 32u8, 110u8, 111u8, 116u8, 105u8, 102u8, 105u8, 99u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 116u8, 114u8, 105u8, 103u8,
103u8, 101u8, 114u8, 101u8, 100u8, 32u8, 116u8, 104u8, 117u8, 115u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 109u8, 105u8, 103u8, 104u8, 116u8, 32u8, 98u8,
101u8, 32u8, 108u8, 111u8, 115u8, 116u8, 46u8, 72u8, 76u8, 97u8, 115u8, 116u8, 82u8, 117u8,
110u8, 116u8, 105u8, 109u8, 101u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 0u8, 0u8,
117u8, 4u8, 4u8, 0u8, 4u8, 85u8, 1u8, 32u8, 83u8, 116u8, 111u8, 114u8, 101u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 95u8, 118u8, 101u8, 114u8, 115u8, 105u8,
111u8, 110u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 115u8, 112u8, 101u8, 99u8, 95u8, 110u8,
97u8, 109u8, 101u8, 96u8, 32u8, 111u8, 102u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8,
101u8, 32u8, 117u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 32u8, 104u8, 97u8, 112u8, 112u8,
101u8, 110u8, 101u8, 100u8, 46u8, 84u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 100u8,
84u8, 111u8, 85u8, 51u8, 50u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8,
21u8, 1u8, 4u8, 0u8, 4u8, 77u8, 1u8, 32u8, 84u8, 114u8, 117u8, 101u8, 32u8, 105u8, 102u8, 32u8,
119u8, 101u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 117u8, 112u8, 103u8, 114u8, 97u8, 100u8,
101u8, 100u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 116u8, 121u8,
112u8, 101u8, 32u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 32u8, 105u8,
115u8, 32u8, 96u8, 117u8, 51u8, 50u8, 96u8, 46u8, 32u8, 70u8, 97u8, 108u8, 115u8, 101u8, 32u8,
40u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 41u8, 32u8, 105u8, 102u8, 32u8, 110u8,
111u8, 116u8, 46u8, 96u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 100u8, 84u8, 111u8,
84u8, 114u8, 105u8, 112u8, 108u8, 101u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8,
1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 8u8, 93u8, 1u8, 32u8, 84u8, 114u8, 117u8, 101u8, 32u8, 105u8,
102u8, 32u8, 119u8, 101u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 117u8, 112u8, 103u8, 114u8,
97u8, 100u8, 101u8, 100u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 65u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 110u8, 102u8, 111u8, 32u8, 99u8, 111u8, 110u8, 116u8,
97u8, 105u8, 110u8, 115u8, 32u8, 116u8, 104u8, 114u8, 101u8, 101u8, 32u8, 116u8, 121u8, 112u8,
101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 96u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8,
116u8, 96u8, 46u8, 32u8, 70u8, 97u8, 108u8, 115u8, 101u8, 72u8, 32u8, 40u8, 100u8, 101u8, 102u8,
97u8, 117u8, 108u8, 116u8, 41u8, 32u8, 105u8, 102u8, 32u8, 110u8, 111u8, 116u8, 46u8, 56u8, 69u8,
120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 80u8, 104u8, 97u8, 115u8, 101u8, 0u8, 0u8,
105u8, 4u8, 4u8, 0u8, 4u8, 136u8, 32u8, 84u8, 104u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8,
117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 112u8, 104u8, 97u8, 115u8, 101u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 1u8, 129u8, 4u8, 1u8,
72u8, 24u8, 48u8, 66u8, 108u8, 111u8, 99u8, 107u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8,
115u8, 145u8, 4u8, 133u8, 1u8, 0u8, 200u8, 23u8, 168u8, 4u8, 0u8, 0u8, 0u8, 0u8, 32u8, 74u8,
169u8, 209u8, 1u8, 0u8, 0u8, 128u8, 54u8, 190u8, 38u8, 0u8, 0u8, 0u8, 0u8, 1u8, 128u8, 145u8,
75u8, 135u8, 46u8, 1u8, 0u8, 0u8, 1u8, 0u8, 152u8, 247u8, 62u8, 93u8, 1u8, 0u8, 0u8, 1u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 128u8, 54u8, 190u8, 38u8, 0u8, 0u8, 0u8, 0u8, 1u8, 128u8,
25u8, 158u8, 241u8, 162u8, 1u8, 0u8, 0u8, 1u8, 0u8, 32u8, 74u8, 169u8, 209u8, 1u8, 0u8, 0u8, 1u8,
0u8, 136u8, 82u8, 106u8, 116u8, 0u8, 0u8, 0u8, 128u8, 54u8, 190u8, 38u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 4u8, 208u8, 32u8, 66u8, 108u8, 111u8, 99u8, 107u8, 32u8, 38u8, 32u8, 101u8, 120u8,
116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 115u8, 58u8, 32u8, 98u8, 97u8, 115u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8,
115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 115u8, 46u8, 44u8,
66u8, 108u8, 111u8, 99u8, 107u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 157u8, 4u8, 48u8, 0u8,
0u8, 120u8, 0u8, 0u8, 0u8, 160u8, 0u8, 0u8, 0u8, 160u8, 0u8, 4u8, 168u8, 32u8, 84u8, 104u8,
101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 108u8, 101u8, 110u8, 103u8,
116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 40u8,
105u8, 110u8, 32u8, 98u8, 121u8, 116u8, 101u8, 115u8, 41u8, 46u8, 56u8, 66u8, 108u8, 111u8, 99u8,
107u8, 72u8, 97u8, 115u8, 104u8, 67u8, 111u8, 117u8, 110u8, 116u8, 16u8, 16u8, 250u8, 0u8, 0u8,
0u8, 4u8, 85u8, 1u8, 32u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 104u8, 97u8, 115u8, 104u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8,
115u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 40u8, 111u8, 108u8, 100u8,
101u8, 115u8, 116u8, 32u8, 112u8, 114u8, 117u8, 110u8, 101u8, 100u8, 32u8, 102u8, 105u8, 114u8,
115u8, 116u8, 41u8, 46u8, 32u8, 68u8, 98u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 165u8, 4u8,
64u8, 128u8, 240u8, 250u8, 2u8, 0u8, 0u8, 0u8, 0u8, 0u8, 194u8, 235u8, 11u8, 0u8, 0u8, 0u8, 0u8,
4u8, 9u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8,
111u8, 102u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 32u8, 100u8, 97u8, 116u8,
97u8, 98u8, 97u8, 115u8, 101u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8,
32u8, 99u8, 97u8, 110u8, 32u8, 105u8, 110u8, 118u8, 111u8, 107u8, 101u8, 46u8, 28u8, 86u8, 101u8,
114u8, 115u8, 105u8, 111u8, 110u8, 169u8, 4u8, 65u8, 4u8, 48u8, 112u8, 111u8, 108u8, 121u8,
109u8, 101u8, 115u8, 104u8, 95u8, 100u8, 101u8, 118u8, 48u8, 112u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 95u8, 100u8, 101u8, 118u8, 1u8, 0u8, 0u8, 0u8, 66u8, 75u8, 76u8, 0u8, 0u8,
0u8, 0u8, 0u8, 76u8, 223u8, 106u8, 203u8, 104u8, 153u8, 7u8, 96u8, 155u8, 4u8, 0u8, 0u8, 0u8,
55u8, 227u8, 151u8, 252u8, 124u8, 145u8, 245u8, 228u8, 1u8, 0u8, 0u8, 0u8, 64u8, 254u8, 58u8,
212u8, 1u8, 248u8, 149u8, 154u8, 6u8, 0u8, 0u8, 0u8, 210u8, 188u8, 152u8, 151u8, 238u8, 208u8,
143u8, 21u8, 3u8, 0u8, 0u8, 0u8, 247u8, 139u8, 39u8, 139u8, 229u8, 63u8, 69u8, 76u8, 2u8, 0u8,
0u8, 0u8, 237u8, 153u8, 197u8, 172u8, 178u8, 94u8, 237u8, 245u8, 3u8, 0u8, 0u8, 0u8, 203u8,
202u8, 37u8, 227u8, 159u8, 20u8, 35u8, 135u8, 2u8, 0u8, 0u8, 0u8, 104u8, 122u8, 212u8, 74u8,
211u8, 127u8, 3u8, 194u8, 1u8, 0u8, 0u8, 0u8, 188u8, 157u8, 137u8, 144u8, 79u8, 91u8, 146u8,
63u8, 1u8, 0u8, 0u8, 0u8, 104u8, 182u8, 107u8, 161u8, 34u8, 201u8, 63u8, 167u8, 1u8, 0u8, 0u8,
0u8, 55u8, 200u8, 187u8, 19u8, 80u8, 169u8, 162u8, 168u8, 1u8, 0u8, 0u8, 0u8, 171u8, 60u8, 5u8,
114u8, 41u8, 31u8, 235u8, 139u8, 1u8, 0u8, 0u8, 0u8, 24u8, 239u8, 88u8, 163u8, 182u8, 123u8,
167u8, 112u8, 1u8, 0u8, 0u8, 0u8, 50u8, 147u8, 66u8, 153u8, 71u8, 115u8, 4u8, 127u8, 1u8, 0u8,
0u8, 0u8, 0u8, 26u8, 11u8, 41u8, 241u8, 125u8, 1u8, 244u8, 1u8, 0u8, 0u8, 0u8, 242u8, 142u8,
128u8, 128u8, 182u8, 226u8, 223u8, 208u8, 2u8, 0u8, 0u8, 0u8, 187u8, 107u8, 169u8, 5u8, 60u8,
92u8, 157u8, 120u8, 2u8, 0u8, 0u8, 0u8, 159u8, 36u8, 44u8, 44u8, 136u8, 111u8, 63u8, 206u8, 1u8,
0u8, 0u8, 0u8, 89u8, 90u8, 195u8, 76u8, 94u8, 161u8, 245u8, 254u8, 1u8, 0u8, 0u8, 0u8, 3u8, 0u8,
0u8, 0u8, 1u8, 4u8, 132u8, 32u8, 71u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
104u8, 97u8, 105u8, 110u8, 39u8, 115u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 40u8, 83u8, 83u8, 53u8, 56u8, 80u8,
114u8, 101u8, 102u8, 105u8, 120u8, 57u8, 3u8, 8u8, 42u8, 0u8, 20u8, 168u8, 32u8, 84u8, 104u8,
101u8, 32u8, 100u8, 101u8, 115u8, 105u8, 103u8, 110u8, 97u8, 116u8, 101u8, 100u8, 32u8, 83u8,
83u8, 56u8, 53u8, 32u8, 112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 0u8, 57u8, 1u8, 32u8,
84u8, 104u8, 105u8, 115u8, 32u8, 114u8, 101u8, 112u8, 108u8, 97u8, 99u8, 101u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 34u8, 115u8, 115u8, 53u8, 56u8, 70u8, 111u8, 114u8, 109u8, 97u8,
116u8, 34u8, 32u8, 112u8, 114u8, 111u8, 112u8, 101u8, 114u8, 116u8, 121u8, 32u8, 100u8, 101u8,
99u8, 108u8, 97u8, 114u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 115u8, 112u8, 101u8, 99u8, 46u8, 32u8, 82u8, 101u8, 97u8,
115u8, 111u8, 110u8, 32u8, 105u8, 115u8, 49u8, 1u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 32u8, 115u8, 104u8, 111u8,
117u8, 108u8, 100u8, 32u8, 107u8, 110u8, 111u8, 119u8, 32u8, 97u8, 98u8, 111u8, 117u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 102u8, 105u8, 120u8, 32u8, 105u8, 110u8,
32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 109u8, 97u8, 107u8, 101u8,
32u8, 117u8, 115u8, 101u8, 32u8, 111u8, 102u8, 32u8, 105u8, 116u8, 32u8, 97u8, 115u8, 112u8,
32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 1u8,
189u8, 4u8, 0u8, 16u8, 66u8, 97u8, 98u8, 101u8, 1u8, 16u8, 66u8, 97u8, 98u8, 101u8, 64u8, 40u8,
69u8, 112u8, 111u8, 99u8, 104u8, 73u8, 110u8, 100u8, 101u8, 120u8, 1u8, 0u8, 32u8, 32u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 84u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8,
44u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8, 1u8, 0u8,
193u8, 4u8, 4u8, 0u8, 4u8, 108u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
105u8, 101u8, 115u8, 46u8, 44u8, 71u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 83u8, 108u8,
111u8, 116u8, 1u8, 0u8, 209u8, 4u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 248u8,
32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 108u8, 111u8, 116u8, 32u8, 97u8, 116u8, 32u8, 119u8,
104u8, 105u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8,
32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 108u8,
121u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 46u8, 32u8, 84u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 48u8, 144u8, 32u8, 117u8, 110u8, 116u8, 105u8, 108u8, 32u8,
116u8, 104u8, 101u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8,
46u8, 44u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 83u8, 108u8, 111u8, 116u8, 1u8, 0u8,
209u8, 4u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 84u8, 32u8, 67u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 32u8, 115u8, 108u8, 111u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 46u8, 40u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8, 110u8, 101u8, 115u8, 115u8,
1u8, 0u8, 4u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 40u8, 184u8,
32u8, 84u8, 104u8, 101u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 114u8, 97u8, 110u8,
100u8, 111u8, 109u8, 110u8, 101u8, 115u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 42u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 42u8, 32u8, 101u8, 112u8,
111u8, 99u8, 104u8, 46u8, 0u8, 44u8, 32u8, 35u8, 32u8, 83u8, 101u8, 99u8, 117u8, 114u8, 105u8,
116u8, 121u8, 0u8, 5u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 77u8, 85u8, 83u8, 84u8, 32u8,
78u8, 79u8, 84u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 103u8, 97u8, 109u8, 98u8, 108u8, 105u8, 110u8, 103u8, 44u8, 32u8, 97u8, 115u8, 32u8, 105u8,
116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 102u8, 108u8, 117u8,
101u8, 110u8, 99u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 248u8, 32u8, 109u8, 97u8, 108u8,
105u8, 99u8, 105u8, 111u8, 117u8, 115u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 104u8, 111u8, 114u8,
116u8, 32u8, 116u8, 101u8, 114u8, 109u8, 46u8, 32u8, 73u8, 116u8, 32u8, 77u8, 65u8, 89u8, 32u8,
98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 109u8, 97u8, 110u8,
121u8, 21u8, 1u8, 32u8, 99u8, 114u8, 121u8, 112u8, 116u8, 111u8, 103u8, 114u8, 97u8, 112u8,
104u8, 105u8, 99u8, 32u8, 112u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 115u8, 44u8,
32u8, 104u8, 111u8, 119u8, 101u8, 118u8, 101u8, 114u8, 44u8, 32u8, 115u8, 111u8, 32u8, 108u8,
111u8, 110u8, 103u8, 32u8, 97u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 114u8, 101u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
105u8, 115u8, 21u8, 1u8, 32u8, 40u8, 108u8, 105u8, 107u8, 101u8, 32u8, 101u8, 118u8, 101u8,
114u8, 121u8, 116u8, 104u8, 105u8, 110u8, 103u8, 32u8, 101u8, 108u8, 115u8, 101u8, 32u8, 111u8,
110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 41u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8,
112u8, 117u8, 98u8, 108u8, 105u8, 99u8, 46u8, 32u8, 70u8, 111u8, 114u8, 32u8, 101u8, 120u8, 97u8,
109u8, 112u8, 108u8, 101u8, 44u8, 32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8,
5u8, 1u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 97u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 110u8, 101u8, 101u8,
100u8, 101u8, 100u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8,
116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 104u8,
111u8, 115u8, 101u8, 110u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 13u8, 1u8, 32u8, 97u8, 100u8,
118u8, 101u8, 114u8, 115u8, 97u8, 114u8, 121u8, 44u8, 32u8, 102u8, 111u8, 114u8, 32u8, 112u8,
117u8, 114u8, 112u8, 111u8, 115u8, 101u8, 115u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 97u8,
115u8, 32u8, 112u8, 117u8, 98u8, 108u8, 105u8, 99u8, 45u8, 99u8, 111u8, 105u8, 110u8, 32u8,
122u8, 101u8, 114u8, 111u8, 45u8, 107u8, 110u8, 111u8, 119u8, 108u8, 101u8, 100u8, 103u8, 101u8,
32u8, 112u8, 114u8, 111u8, 111u8, 102u8, 115u8, 46u8, 96u8, 80u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 69u8, 112u8, 111u8, 99u8, 104u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 67u8,
104u8, 97u8, 110u8, 103u8, 101u8, 0u8, 0u8, 213u8, 4u8, 4u8, 0u8, 4u8, 97u8, 1u8, 32u8, 80u8,
101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 99u8,
111u8, 110u8, 102u8, 105u8, 103u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8,
104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 98u8, 101u8, 32u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8,
112u8, 111u8, 99u8, 104u8, 32u8, 105u8, 115u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 101u8,
100u8, 46u8, 56u8, 78u8, 101u8, 120u8, 116u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8, 110u8,
101u8, 115u8, 115u8, 1u8, 0u8, 4u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 4u8, 92u8, 32u8, 78u8, 101u8, 120u8, 116u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8,
32u8, 114u8, 97u8, 110u8, 100u8, 111u8, 109u8, 110u8, 101u8, 115u8, 115u8, 46u8, 60u8, 78u8,
101u8, 120u8, 116u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8,
1u8, 0u8, 193u8, 4u8, 4u8, 0u8, 4u8, 96u8, 32u8, 78u8, 101u8, 120u8, 116u8, 32u8, 101u8, 112u8,
111u8, 99u8, 104u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8,
115u8, 46u8, 48u8, 83u8, 101u8, 103u8, 109u8, 101u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8,
120u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 36u8, 124u8, 32u8, 82u8, 97u8, 110u8, 100u8,
111u8, 109u8, 110u8, 101u8, 115u8, 115u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 99u8,
111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 248u8,
32u8, 87u8, 101u8, 32u8, 109u8, 97u8, 107u8, 101u8, 32u8, 97u8, 32u8, 116u8, 114u8, 97u8, 100u8,
101u8, 45u8, 111u8, 102u8, 102u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8, 32u8,
115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 97u8, 99u8, 99u8, 101u8, 115u8, 115u8,
101u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 46u8, 1u8, 1u8, 32u8, 87u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 45u8, 99u8, 111u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 114u8, 97u8, 110u8,
100u8, 111u8, 109u8, 110u8, 101u8, 115u8, 115u8, 32u8, 105u8, 110u8, 32u8, 115u8, 101u8, 103u8,
109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 117u8, 112u8, 32u8, 116u8, 111u8,
148u8, 32u8, 96u8, 85u8, 78u8, 68u8, 69u8, 82u8, 95u8, 67u8, 79u8, 78u8, 83u8, 84u8, 82u8, 85u8,
67u8, 84u8, 73u8, 79u8, 78u8, 95u8, 83u8, 69u8, 71u8, 77u8, 69u8, 78u8, 84u8, 95u8, 76u8, 69u8,
78u8, 71u8, 84u8, 72u8, 96u8, 46u8, 0u8, 236u8, 32u8, 79u8, 110u8, 99u8, 101u8, 32u8, 97u8, 32u8,
115u8, 101u8, 103u8, 109u8, 101u8, 110u8, 116u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8,
115u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8, 104u8, 44u8,
32u8, 119u8, 101u8, 32u8, 98u8, 101u8, 103u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 101u8, 120u8, 116u8, 32u8, 111u8, 110u8, 101u8, 46u8, 9u8, 1u8, 32u8, 87u8, 101u8, 32u8,
114u8, 101u8, 115u8, 101u8, 116u8, 32u8, 97u8, 108u8, 108u8, 32u8, 115u8, 101u8, 103u8, 109u8,
101u8, 110u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8,
110u8, 32u8, 116u8, 111u8, 32u8, 96u8, 48u8, 96u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 98u8, 101u8, 103u8, 105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8,
101u8, 118u8, 101u8, 114u8, 121u8, 28u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 46u8, 68u8,
85u8, 110u8, 100u8, 101u8, 114u8, 67u8, 111u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 1u8, 1u8, 4u8, 5u8, 16u8, 225u8, 4u8, 4u8, 0u8, 4u8, 21u8, 1u8, 32u8, 84u8,
87u8, 79u8, 88u8, 45u8, 78u8, 79u8, 84u8, 69u8, 58u8, 32u8, 96u8, 83u8, 101u8, 103u8, 109u8,
101u8, 110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8,
110u8, 32u8, 105u8, 110u8, 99u8, 114u8, 101u8, 97u8, 115u8, 105u8, 110u8, 103u8, 32u8, 105u8,
110u8, 116u8, 101u8, 103u8, 101u8, 114u8, 44u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 111u8, 107u8, 97u8, 121u8, 46u8, 44u8, 73u8, 110u8, 105u8,
116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 100u8, 0u8, 0u8, 233u8, 4u8, 4u8, 0u8, 8u8, 1u8,
1u8, 32u8, 84u8, 101u8, 109u8, 112u8, 111u8, 114u8, 97u8, 114u8, 121u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 32u8, 40u8, 99u8, 108u8, 101u8, 97u8, 114u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8,
98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 102u8, 105u8, 110u8, 97u8, 108u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 41u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 115u8,
32u8, 96u8, 83u8, 111u8, 109u8, 101u8, 96u8, 29u8, 1u8, 32u8, 105u8, 102u8, 32u8, 112u8, 101u8,
114u8, 45u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8,
108u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8,
108u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 99u8, 97u8,
108u8, 108u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 76u8, 65u8, 117u8, 116u8, 104u8,
111u8, 114u8, 86u8, 114u8, 102u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8, 110u8, 101u8, 115u8,
115u8, 1u8, 0u8, 233u8, 4u8, 4u8, 0u8, 16u8, 21u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8,
102u8, 105u8, 101u8, 108u8, 100u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 97u8,
108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 98u8, 101u8, 32u8, 112u8, 111u8, 112u8, 117u8, 108u8,
97u8, 116u8, 101u8, 100u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8, 103u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 32u8, 112u8, 114u8, 111u8, 99u8, 101u8, 115u8, 115u8, 105u8, 110u8, 103u8,
32u8, 117u8, 110u8, 108u8, 101u8, 115u8, 115u8, 25u8, 1u8, 32u8, 115u8, 101u8, 99u8, 111u8,
110u8, 100u8, 97u8, 114u8, 121u8, 32u8, 112u8, 108u8, 97u8, 105u8, 110u8, 32u8, 115u8, 108u8,
111u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8,
100u8, 32u8, 40u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 100u8, 111u8, 110u8, 39u8, 116u8,
32u8, 99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 32u8, 97u8, 32u8, 86u8, 82u8, 70u8, 32u8,
111u8, 117u8, 116u8, 112u8, 117u8, 116u8, 41u8, 46u8, 0u8, 81u8, 1u8, 32u8, 73u8, 116u8, 32u8,
105u8, 115u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 110u8, 32u8, 96u8, 111u8, 110u8, 95u8,
105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 96u8, 44u8, 32u8, 98u8,
101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
99u8, 111u8, 110u8, 116u8, 97u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8,
97u8, 115u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 40u8, 69u8, 112u8, 111u8, 99u8,
104u8, 83u8, 116u8, 97u8, 114u8, 116u8, 1u8, 0u8, 153u8, 3u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 20u8, 93u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 104u8, 97u8,
118u8, 101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 44u8, 32u8, 114u8, 101u8,
115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 108u8, 121u8, 32u8, 96u8, 78u8, 45u8,
49u8, 96u8, 32u8, 97u8, 110u8, 100u8, 20u8, 32u8, 96u8, 78u8, 96u8, 46u8, 73u8, 1u8, 32u8, 78u8,
79u8, 84u8, 69u8, 58u8, 32u8, 87u8, 101u8, 32u8, 116u8, 114u8, 97u8, 99u8, 107u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8,
114u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 110u8, 111u8, 116u8, 97u8, 116u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 112u8, 111u8, 111u8, 108u8, 32u8, 111u8, 102u8, 89u8, 1u8, 32u8, 101u8, 110u8,
116u8, 114u8, 111u8, 112u8, 121u8, 32u8, 119u8, 97u8, 115u8, 32u8, 102u8, 105u8, 120u8, 101u8,
100u8, 32u8, 40u8, 105u8, 46u8, 101u8, 46u8, 32u8, 105u8, 116u8, 32u8, 119u8, 97u8, 115u8, 32u8,
107u8, 110u8, 111u8, 119u8, 110u8, 32u8, 116u8, 111u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8,
32u8, 111u8, 98u8, 115u8, 101u8, 114u8, 118u8, 101u8, 114u8, 115u8, 41u8, 46u8, 32u8, 83u8,
105u8, 110u8, 99u8, 101u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 115u8, 32u8, 97u8, 114u8,
101u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 105u8, 110u8, 89u8, 1u8,
32u8, 115u8, 108u8, 111u8, 116u8, 115u8, 44u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8,
44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 109u8, 97u8, 121u8, 32u8, 110u8, 111u8, 116u8, 32u8,
108u8, 105u8, 110u8, 101u8, 32u8, 117u8, 112u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8,
104u8, 101u8, 32u8, 115u8, 108u8, 111u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
115u8, 46u8, 32u8, 76u8, 97u8, 116u8, 101u8, 110u8, 101u8, 115u8, 115u8, 1u8, 0u8, 16u8, 16u8,
0u8, 0u8, 0u8, 0u8, 20u8, 216u8, 32u8, 72u8, 111u8, 119u8, 32u8, 108u8, 97u8, 116u8, 101u8, 32u8,
116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 32u8, 105u8, 115u8, 32u8, 99u8, 111u8, 109u8, 112u8, 97u8, 114u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8, 115u8, 32u8, 112u8, 97u8, 114u8, 101u8, 110u8,
116u8, 46u8, 0u8, 21u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 101u8, 110u8, 116u8, 114u8,
121u8, 32u8, 105u8, 115u8, 32u8, 112u8, 111u8, 112u8, 117u8, 108u8, 97u8, 116u8, 101u8, 100u8,
32u8, 97u8, 115u8, 32u8, 112u8, 97u8, 114u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
110u8, 100u8, 32u8, 105u8, 115u8, 32u8, 99u8, 108u8, 101u8, 97u8, 110u8, 101u8, 100u8, 32u8,
117u8, 112u8, 17u8, 1u8, 32u8, 111u8, 110u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 102u8,
105u8, 110u8, 97u8, 108u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 81u8,
117u8, 101u8, 114u8, 121u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 101u8, 110u8, 116u8, 114u8, 121u8, 32u8, 111u8,
117u8, 116u8, 115u8, 105u8, 100u8, 101u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 176u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8,
111u8, 110u8, 116u8, 101u8, 120u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8,
97u8, 108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 121u8, 105u8, 101u8, 108u8, 100u8, 32u8, 122u8,
101u8, 114u8, 111u8, 46u8, 44u8, 69u8, 112u8, 111u8, 99u8, 104u8, 67u8, 111u8, 110u8, 102u8,
105u8, 103u8, 0u8, 0u8, 237u8, 4u8, 4u8, 0u8, 8u8, 97u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8,
99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 46u8, 32u8, 83u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 98u8, 101u8, 32u8, 96u8, 78u8, 111u8,
110u8, 101u8, 96u8, 32u8, 97u8, 115u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 105u8,
110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 100u8, 32u8, 105u8, 110u8, 36u8,
32u8, 103u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 46u8, 60u8, 78u8, 101u8, 120u8, 116u8,
69u8, 112u8, 111u8, 99u8, 104u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 0u8, 0u8, 237u8, 4u8,
4u8, 0u8, 8u8, 45u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 102u8, 105u8,
103u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 44u8,
32u8, 96u8, 78u8, 111u8, 110u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 110u8, 111u8,
116u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 232u8, 32u8, 40u8, 121u8, 111u8, 117u8,
32u8, 99u8, 97u8, 110u8, 32u8, 102u8, 97u8, 108u8, 108u8, 98u8, 97u8, 99u8, 107u8, 32u8, 116u8,
111u8, 32u8, 96u8, 69u8, 112u8, 111u8, 99u8, 104u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8,
96u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 115u8, 101u8, 41u8, 46u8, 1u8, 241u8, 4u8, 0u8, 12u8, 52u8,
69u8, 112u8, 111u8, 99u8, 104u8, 68u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
32u8, 44u8, 1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 12u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 105u8, 109u8, 101u8, 44u8,
32u8, 105u8, 110u8, 32u8, 115u8, 108u8, 111u8, 116u8, 115u8, 44u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 115u8,
104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 108u8, 97u8, 115u8, 116u8, 46u8, 25u8, 1u8, 32u8, 78u8,
79u8, 84u8, 69u8, 58u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8,
105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 112u8, 111u8, 115u8, 115u8,
105u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 112u8, 111u8, 99u8, 104u8, 32u8, 100u8, 117u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 33u8, 1u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 104u8, 97u8, 115u8, 32u8, 115u8,
116u8, 97u8, 114u8, 116u8, 101u8, 100u8, 46u8, 32u8, 65u8, 116u8, 116u8, 101u8, 109u8, 112u8,
116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 100u8, 111u8, 32u8, 115u8, 111u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 114u8, 105u8, 99u8, 107u8, 32u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 112u8, 114u8, 111u8, 100u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
68u8, 69u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 66u8, 108u8, 111u8, 99u8, 107u8,
84u8, 105u8, 109u8, 101u8, 32u8, 32u8, 112u8, 23u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 20u8, 5u8, 1u8,
32u8, 84u8, 104u8, 101u8, 32u8, 101u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8,
97u8, 118u8, 101u8, 114u8, 97u8, 103u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8,
116u8, 105u8, 109u8, 101u8, 32u8, 97u8, 116u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
66u8, 65u8, 66u8, 69u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8,
99u8, 114u8, 101u8, 97u8, 116u8, 105u8, 110u8, 103u8, 17u8, 1u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 115u8, 46u8, 32u8, 83u8, 105u8, 110u8, 99u8, 101u8, 32u8, 66u8, 65u8, 66u8, 69u8, 32u8,
105u8, 115u8, 32u8, 112u8, 114u8, 111u8, 98u8, 97u8, 98u8, 105u8, 108u8, 105u8, 115u8, 116u8,
105u8, 99u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8,
114u8, 105u8, 118u8, 105u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 102u8, 105u8, 103u8, 117u8,
114u8, 101u8, 32u8, 111u8, 117u8, 116u8, 5u8, 1u8, 32u8, 119u8, 104u8, 97u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 120u8, 112u8, 101u8, 99u8, 116u8, 101u8, 100u8, 32u8, 97u8, 118u8,
101u8, 114u8, 97u8, 103u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 116u8, 105u8,
109u8, 101u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 98u8,
97u8, 115u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 108u8,
111u8, 116u8, 9u8, 1u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 99u8, 117u8, 114u8, 105u8, 116u8,
121u8, 32u8, 112u8, 97u8, 114u8, 97u8, 109u8, 101u8, 116u8, 101u8, 114u8, 32u8, 96u8, 99u8, 96u8,
32u8, 40u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 96u8, 49u8, 32u8, 45u8, 32u8, 99u8, 96u8,
32u8, 114u8, 101u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 115u8, 160u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 114u8, 111u8, 98u8, 97u8, 98u8, 105u8, 108u8, 105u8, 116u8, 121u8,
32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 108u8, 111u8, 116u8, 32u8, 98u8, 101u8, 105u8,
110u8, 103u8, 32u8, 101u8, 109u8, 112u8, 116u8, 121u8, 41u8, 46u8, 56u8, 77u8, 97u8, 120u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8, 16u8, 16u8, 160u8, 134u8,
1u8, 0u8, 4u8, 136u8, 32u8, 77u8, 97u8, 120u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8,
115u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 1u8, 5u8, 5u8, 1u8, 36u8, 84u8,
105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 1u8, 36u8, 84u8, 105u8, 109u8, 101u8,
115u8, 116u8, 97u8, 109u8, 112u8, 8u8, 12u8, 78u8, 111u8, 119u8, 1u8, 0u8, 32u8, 32u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 144u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8,
36u8, 68u8, 105u8, 100u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8,
4u8, 180u8, 32u8, 68u8, 105u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 109u8,
101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 32u8, 103u8, 101u8, 116u8, 32u8, 117u8, 112u8, 100u8,
97u8, 116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 98u8,
108u8, 111u8, 99u8, 107u8, 63u8, 1u8, 9u8, 5u8, 0u8, 4u8, 52u8, 77u8, 105u8, 110u8, 105u8, 109u8,
117u8, 109u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 32u8, 184u8, 11u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 16u8, 77u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 105u8, 110u8, 105u8,
109u8, 117u8, 109u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8, 98u8, 101u8, 116u8,
119u8, 101u8, 101u8, 110u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 46u8, 32u8, 66u8,
101u8, 119u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 42u8, 101u8, 120u8, 112u8, 101u8, 99u8,
116u8, 101u8, 100u8, 42u8, 93u8, 1u8, 32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 112u8, 114u8, 111u8, 100u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 112u8,
112u8, 97u8, 114u8, 97u8, 116u8, 117u8, 115u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8, 100u8,
101u8, 115u8, 46u8, 32u8, 89u8, 111u8, 117u8, 114u8, 32u8, 99u8, 104u8, 111u8, 115u8, 101u8,
110u8, 32u8, 99u8, 111u8, 110u8, 115u8, 101u8, 110u8, 115u8, 117u8, 115u8, 32u8, 115u8, 121u8,
115u8, 116u8, 101u8, 109u8, 32u8, 119u8, 105u8, 108u8, 108u8, 93u8, 1u8, 32u8, 103u8, 101u8,
110u8, 101u8, 114u8, 97u8, 108u8, 108u8, 121u8, 32u8, 119u8, 111u8, 114u8, 107u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8,
116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 32u8, 97u8, 32u8, 115u8, 101u8, 110u8, 115u8,
105u8, 98u8, 108u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 116u8, 105u8, 109u8,
101u8, 46u8, 32u8, 101u8, 46u8, 103u8, 46u8, 32u8, 70u8, 111u8, 114u8, 32u8, 65u8, 117u8, 114u8,
97u8, 44u8, 32u8, 105u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 160u8, 32u8,
100u8, 111u8, 117u8, 98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 112u8, 101u8,
114u8, 105u8, 111u8, 100u8, 32u8, 111u8, 110u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 115u8, 101u8, 116u8, 116u8, 105u8, 110u8, 103u8, 115u8, 46u8, 0u8, 2u8, 28u8, 73u8,
110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 1u8, 28u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8,
115u8, 4u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 0u8, 1u8, 4u8, 2u8, 16u8,
17u8, 5u8, 4u8, 0u8, 4u8, 136u8, 32u8, 84u8, 104u8, 101u8, 32u8, 108u8, 111u8, 111u8, 107u8,
117u8, 112u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8,
116u8, 111u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 1u8, 21u8, 5u8, 1u8,
108u8, 4u8, 28u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 24u8, 64u8, 64u8, 66u8, 15u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 172u8, 32u8, 84u8, 104u8,
101u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 110u8, 101u8, 101u8, 100u8,
101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 114u8, 101u8, 115u8, 101u8, 114u8, 118u8, 105u8,
110u8, 103u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 1u8, 25u8, 5u8,
3u8, 40u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8, 1u8, 40u8, 65u8,
117u8, 116u8, 104u8, 111u8, 114u8, 115u8, 104u8, 105u8, 112u8, 12u8, 24u8, 85u8, 110u8, 99u8,
108u8, 101u8, 115u8, 1u8, 0u8, 29u8, 5u8, 4u8, 0u8, 4u8, 28u8, 32u8, 85u8, 110u8, 99u8, 108u8,
101u8, 115u8, 24u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 0u8, 0u8, 0u8, 4u8, 0u8, 4u8, 100u8,
32u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 48u8, 68u8, 105u8,
100u8, 83u8, 101u8, 116u8, 85u8, 110u8, 99u8, 108u8, 101u8, 115u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8,
4u8, 188u8, 32u8, 87u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 117u8, 110u8, 99u8,
108u8, 101u8, 115u8, 32u8, 119u8, 101u8, 114u8, 101u8, 32u8, 97u8, 108u8, 114u8, 101u8, 97u8,
100u8, 121u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8,
32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 1u8, 37u8, 5u8, 0u8, 4u8, 64u8, 85u8, 110u8, 99u8,
108u8, 101u8, 71u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 16u8,
16u8, 0u8, 0u8, 0u8, 0u8, 12u8, 204u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8, 98u8, 97u8,
99u8, 107u8, 32u8, 119u8, 101u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 97u8,
99u8, 99u8, 101u8, 112u8, 116u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 115u8, 46u8, 228u8,
32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 109u8, 101u8, 97u8, 110u8, 115u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 119u8, 101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 100u8, 101u8, 97u8,
108u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 117u8, 110u8, 99u8, 108u8, 101u8, 45u8, 112u8,
97u8, 114u8, 101u8, 110u8, 116u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8,
101u8, 148u8, 32u8, 96u8, 85u8, 110u8, 99u8, 108u8, 101u8, 71u8, 101u8, 110u8, 101u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 43u8, 32u8, 49u8, 96u8, 32u8, 98u8, 101u8, 102u8,
111u8, 114u8, 101u8, 32u8, 96u8, 110u8, 111u8, 119u8, 96u8, 46u8, 1u8, 45u8, 5u8, 4u8, 32u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 1u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 115u8, 8u8, 52u8, 84u8, 111u8, 116u8, 97u8, 108u8, 73u8, 115u8, 115u8, 117u8, 97u8,
110u8, 99u8, 101u8, 1u8, 0u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 152u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8,
108u8, 32u8, 117u8, 110u8, 105u8, 116u8, 115u8, 32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 100u8,
32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8,
46u8, 20u8, 76u8, 111u8, 99u8, 107u8, 115u8, 1u8, 1u8, 4u8, 2u8, 0u8, 49u8, 5u8, 4u8, 0u8, 8u8,
184u8, 32u8, 65u8, 110u8, 121u8, 32u8, 108u8, 105u8, 113u8, 117u8, 105u8, 100u8, 105u8, 116u8,
121u8, 32u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8, 111u8, 110u8, 32u8, 115u8, 111u8, 109u8,
101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 115u8, 46u8, 37u8, 1u8, 32u8, 78u8, 79u8, 84u8, 69u8, 58u8, 32u8, 83u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8, 32u8, 97u8,
99u8, 99u8, 101u8, 115u8, 115u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 115u8,
101u8, 116u8, 116u8, 105u8, 110u8, 103u8, 44u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 105u8,
110u8, 103u8, 32u8, 97u8, 110u8, 100u8, 32u8, 102u8, 114u8, 101u8, 101u8, 105u8, 110u8, 103u8,
32u8, 97u8, 32u8, 108u8, 111u8, 99u8, 107u8, 46u8, 1u8, 61u8, 5u8, 1u8, 112u8, 4u8, 72u8, 69u8,
120u8, 105u8, 115u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 68u8, 101u8, 112u8, 111u8,
115u8, 105u8, 116u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 4u8, 212u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8,
117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 114u8, 101u8, 113u8, 117u8,
105u8, 114u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 97u8,
110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 112u8, 101u8, 110u8,
46u8, 1u8, 69u8, 5u8, 5u8, 72u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8,
111u8, 110u8, 80u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 1u8, 72u8, 84u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 80u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8,
8u8, 68u8, 78u8, 101u8, 120u8, 116u8, 70u8, 101u8, 101u8, 77u8, 117u8, 108u8, 116u8, 105u8,
112u8, 108u8, 105u8, 101u8, 114u8, 1u8, 0u8, 73u8, 5u8, 64u8, 0u8, 0u8, 100u8, 167u8, 179u8,
182u8, 224u8, 13u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 56u8, 83u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 77u8, 5u8, 4u8,
0u8, 0u8, 0u8, 0u8, 8u8, 72u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 66u8, 121u8, 116u8, 101u8, 70u8, 101u8, 101u8, 24u8, 64u8, 100u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 13u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8,
102u8, 101u8, 101u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 112u8, 97u8, 105u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 109u8, 97u8, 107u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8,
116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 59u8, 32u8, 116u8,
104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 45u8, 98u8, 121u8, 116u8, 101u8, 32u8, 112u8, 111u8,
114u8, 116u8, 105u8, 111u8, 110u8, 46u8, 44u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 84u8,
111u8, 70u8, 101u8, 101u8, 81u8, 5u8, 92u8, 4u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 73u8, 180u8, 0u8, 0u8, 0u8, 1u8, 4u8, 13u8, 1u8, 32u8, 84u8,
104u8, 101u8, 32u8, 112u8, 111u8, 108u8, 121u8, 110u8, 111u8, 109u8, 105u8, 97u8, 108u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8,
100u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8,
100u8, 101u8, 114u8, 105u8, 118u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 46u8, 0u8, 6u8, 32u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 1u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 60u8, 40u8, 68u8, 105u8, 100u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 115u8, 0u8, 1u8,
4u8, 6u8, 120u8, 89u8, 5u8, 4u8, 0u8, 4u8, 84u8, 32u8, 68u8, 73u8, 68u8, 32u8, 45u8, 62u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 105u8, 110u8, 102u8, 111u8, 44u8,
73u8, 115u8, 68u8, 105u8, 100u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 1u8, 1u8, 4u8, 6u8,
120u8, 21u8, 1u8, 4u8, 0u8, 4u8, 228u8, 32u8, 68u8, 73u8, 68u8, 32u8, 45u8, 62u8, 32u8, 98u8,
111u8, 111u8, 108u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 110u8, 100u8, 105u8, 99u8,
97u8, 116u8, 101u8, 115u8, 32u8, 105u8, 102u8, 32u8, 115u8, 101u8, 99u8, 111u8, 110u8, 100u8,
97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 102u8,
114u8, 111u8, 122u8, 101u8, 110u8, 46u8, 40u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
68u8, 105u8, 100u8, 0u8, 0u8, 120u8, 4u8, 0u8, 4u8, 224u8, 32u8, 73u8, 116u8, 32u8, 115u8, 116u8,
111u8, 114u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 102u8, 111u8,
114u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 48u8, 67u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 80u8, 97u8, 121u8, 101u8, 114u8, 0u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 1u8, 32u8,
73u8, 116u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 103u8, 97u8, 115u8, 32u8, 102u8, 101u8,
101u8, 32u8, 112u8, 97u8, 121u8, 101u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8,
115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 24u8, 67u8, 108u8, 97u8, 105u8, 109u8, 115u8, 1u8,
1u8, 8u8, 5u8, 2u8, 93u8, 5u8, 236u8, 200u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 10u8, 4u8, 240u8, 32u8, 40u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8, 73u8, 68u8,
44u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 32u8, 116u8, 121u8, 112u8, 101u8, 41u8, 32u8, 40u8,
105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 44u8, 115u8, 99u8, 111u8, 112u8, 101u8, 41u8, 32u8,
45u8, 62u8, 32u8, 65u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8,
108u8, 97u8, 105u8, 109u8, 115u8, 40u8, 75u8, 101u8, 121u8, 82u8, 101u8, 99u8, 111u8, 114u8,
100u8, 115u8, 0u8, 1u8, 4u8, 5u8, 0u8, 109u8, 5u8, 4u8, 0u8, 4u8, 69u8, 1u8, 32u8, 77u8, 97u8,
112u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8,
73u8, 100u8, 32u8, 116u8, 111u8, 32u8, 96u8, 75u8, 101u8, 121u8, 82u8, 101u8, 99u8, 111u8, 114u8,
100u8, 96u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 111u8, 108u8, 100u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 107u8, 101u8, 121u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 32u8, 97u8, 110u8, 100u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 46u8, 28u8, 68u8, 105u8, 100u8, 75u8, 101u8, 121u8,
115u8, 1u8, 1u8, 8u8, 6u8, 5u8, 113u8, 5u8, 21u8, 1u8, 4u8, 0u8, 4u8, 1u8, 1u8, 32u8, 65u8, 32u8,
114u8, 101u8, 118u8, 101u8, 114u8, 115u8, 101u8, 32u8, 100u8, 111u8, 117u8, 98u8, 108u8, 101u8,
32u8, 109u8, 97u8, 112u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8,
102u8, 105u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 97u8, 108u8, 108u8, 32u8, 107u8, 101u8,
121u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 46u8, 68u8, 77u8, 117u8, 108u8, 116u8, 105u8, 80u8, 117u8, 114u8,
112u8, 111u8, 115u8, 101u8, 78u8, 111u8, 110u8, 99u8, 101u8, 1u8, 0u8, 32u8, 32u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 188u8, 32u8, 78u8, 111u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8,
32u8, 101u8, 110u8, 115u8, 117u8, 114u8, 101u8, 32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8,
32u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 32u8, 115u8, 116u8, 97u8, 114u8,
116u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 49u8, 46u8, 104u8, 79u8, 102u8, 102u8,
67u8, 104u8, 97u8, 105u8, 110u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 78u8, 111u8, 110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 6u8, 120u8, 32u8,
32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 200u8, 32u8, 65u8, 117u8, 116u8, 104u8, 111u8,
114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 110u8, 111u8, 110u8, 99u8, 101u8,
32u8, 112u8, 101u8, 114u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8,
32u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 105u8, 115u8, 32u8,
48u8, 46u8, 56u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8,
111u8, 110u8, 115u8, 0u8, 1u8, 8u8, 2u8, 5u8, 117u8, 5u8, 121u8, 5u8, 4u8, 0u8, 4u8, 176u8, 32u8,
65u8, 108u8, 108u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 110u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 47u8, 107u8, 101u8, 121u8, 32u8, 104u8, 97u8,
115u8, 76u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 71u8, 105u8, 118u8, 101u8, 110u8, 1u8, 1u8, 8u8, 6u8, 5u8, 125u8, 5u8, 105u8, 1u8,
132u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 77u8, 1u8, 32u8,
65u8, 108u8, 108u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 110u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 104u8, 97u8, 115u8, 32u8, 103u8, 105u8,
118u8, 101u8, 110u8, 46u8, 32u8, 40u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8,
101u8, 114u8, 44u8, 32u8, 97u8, 117u8, 116u8, 104u8, 95u8, 105u8, 100u8, 32u8, 45u8, 62u8, 32u8,
97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 101u8, 100u8, 41u8, 108u8, 67u8, 100u8,
100u8, 65u8, 117u8, 116u8, 104u8, 70u8, 111u8, 114u8, 77u8, 97u8, 115u8, 116u8, 101u8, 114u8,
75u8, 101u8, 121u8, 82u8, 111u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 1u8, 0u8, 21u8, 1u8,
4u8, 0u8, 8u8, 101u8, 1u8, 32u8, 79u8, 98u8, 115u8, 111u8, 108u8, 101u8, 116u8, 101u8, 100u8,
32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 97u8, 114u8, 105u8, 97u8,
98u8, 108u8, 101u8, 32u8, 115u8, 117u8, 112u8, 101u8, 114u8, 99u8, 101u8, 100u8, 101u8, 100u8,
32u8, 98u8, 121u8, 32u8, 96u8, 67u8, 100u8, 100u8, 65u8, 117u8, 116u8, 104u8, 70u8, 111u8, 114u8,
80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 82u8, 111u8, 116u8, 97u8,
116u8, 105u8, 111u8, 110u8, 96u8, 46u8, 32u8, 73u8, 116u8, 32u8, 105u8, 115u8, 32u8, 107u8,
101u8, 112u8, 116u8, 32u8, 104u8, 101u8, 114u8, 101u8, 152u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 112u8, 117u8, 114u8, 112u8, 111u8, 115u8, 101u8, 32u8, 111u8, 102u8,
32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 105u8, 103u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 46u8, 112u8, 67u8, 100u8, 100u8, 65u8, 117u8, 116u8, 104u8, 70u8,
111u8, 114u8, 80u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 75u8, 101u8, 121u8, 82u8, 111u8,
116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 8u8, 93u8, 1u8, 32u8,
65u8, 32u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 32u8, 102u8, 108u8, 97u8, 103u8, 32u8,
116u8, 104u8, 97u8, 116u8, 44u8, 32u8, 105u8, 102u8, 32u8, 115u8, 101u8, 116u8, 44u8, 32u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8,
117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 97u8, 32u8, 67u8, 68u8, 68u8, 32u8, 112u8, 114u8, 111u8, 118u8, 105u8,
100u8, 101u8, 114u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 32u8, 116u8,
111u8, 156u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 105u8, 109u8, 97u8, 114u8, 121u8, 32u8, 107u8, 101u8, 121u8, 32u8, 111u8, 102u8,
32u8, 97u8, 110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 56u8,
83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
1u8, 0u8, 129u8, 5u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 72u8, 65u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 75u8, 101u8, 121u8, 82u8, 101u8, 102u8, 67u8, 111u8, 117u8, 110u8, 116u8,
1u8, 1u8, 4u8, 2u8, 0u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 28u8, 196u8, 32u8,
72u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 34u8, 115u8, 116u8, 114u8, 111u8,
110u8, 103u8, 34u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 115u8,
32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 107u8, 101u8, 121u8, 46u8, 0u8, 252u8, 32u8, 83u8, 116u8, 114u8, 111u8, 110u8,
103u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 115u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 32u8, 107u8, 101u8,
121u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 108u8, 101u8, 97u8, 118u8, 105u8, 110u8, 103u8,
32u8, 105u8, 116u8, 39u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8,
46u8, 0u8, 204u8, 32u8, 80u8, 97u8, 108u8, 108u8, 101u8, 116u8, 115u8, 32u8, 117u8, 115u8, 105u8,
110u8, 103u8, 32u8, 34u8, 115u8, 116u8, 114u8, 111u8, 110u8, 103u8, 34u8, 32u8, 114u8, 101u8,
102u8, 101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 99u8,
99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 107u8, 101u8, 121u8, 115u8, 58u8, 172u8, 32u8, 42u8,
32u8, 82u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 58u8, 32u8, 70u8, 111u8, 114u8, 32u8, 96u8,
117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8,
96u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8, 96u8, 0u8, 1u8, 133u8,
5u8, 1u8, 136u8, 4u8, 48u8, 73u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 80u8, 79u8, 76u8,
89u8, 88u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 1u8, 181u8, 5u8, 7u8, 76u8, 67u8, 100u8, 100u8, 83u8, 101u8, 114u8, 118u8, 105u8,
99u8, 101u8, 80u8, 114u8, 111u8, 118u8, 105u8, 100u8, 101u8, 114u8, 115u8, 1u8, 56u8, 73u8,
110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 50u8, 71u8, 114u8, 111u8, 117u8, 112u8, 12u8,
52u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8,
0u8, 33u8, 1u8, 4u8, 0u8, 4u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 115u8, 116u8, 111u8,
114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8,
114u8, 101u8, 100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 60u8, 73u8, 110u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8, 185u8, 5u8, 4u8, 0u8, 4u8,
244u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
34u8, 105u8, 110u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8,
100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 101u8,
100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 72u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8,
0u8, 0u8, 0u8, 4u8, 196u8, 32u8, 76u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8,
104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8,
101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 46u8, 1u8, 193u8, 5u8, 1u8,
25u8, 1u8, 0u8, 1u8, 197u8, 5u8, 8u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 1u8, 72u8, 73u8, 110u8,
115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 49u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 36u8, 36u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 1u8, 0u8,
109u8, 4u8, 4u8, 0u8, 4u8, 144u8, 32u8, 84u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8,
101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 46u8, 40u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 79u8, 102u8, 0u8, 1u8, 4u8, 6u8, 36u8,
201u8, 5u8, 4u8, 0u8, 4u8, 136u8, 32u8, 65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 24u8, 86u8, 111u8,
116u8, 105u8, 110u8, 103u8, 0u8, 1u8, 4u8, 6u8, 36u8, 65u8, 8u8, 4u8, 0u8, 4u8, 212u8, 32u8,
80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 86u8, 111u8, 116u8, 101u8, 115u8, 32u8,
111u8, 110u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 44u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8, 105u8,
115u8, 32u8, 111u8, 110u8, 103u8, 111u8, 105u8, 110u8, 103u8, 46u8, 52u8, 80u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8,
0u8, 0u8, 0u8, 4u8, 72u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8,
32u8, 115u8, 111u8, 32u8, 102u8, 97u8, 114u8, 46u8, 28u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 1u8, 0u8, 33u8, 1u8, 4u8, 0u8, 4u8, 152u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 46u8, 52u8, 86u8, 111u8, 116u8, 101u8, 84u8, 104u8, 114u8, 101u8, 115u8, 104u8,
111u8, 108u8, 100u8, 1u8, 0u8, 153u8, 3u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8,
128u8, 32u8, 86u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8,
108u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8,
111u8, 118u8, 97u8, 108u8, 46u8, 72u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 67u8,
111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 0u8, 0u8, 120u8, 4u8, 0u8,
4u8, 84u8, 32u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8,
100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 48u8, 69u8, 120u8, 112u8, 105u8, 114u8,
101u8, 115u8, 65u8, 102u8, 116u8, 101u8, 114u8, 1u8, 0u8, 53u8, 1u8, 4u8, 1u8, 4u8, 164u8, 32u8,
84u8, 105u8, 109u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8,
99u8, 104u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
119u8, 105u8, 108u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 56u8, 83u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8,
0u8, 69u8, 8u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 205u8, 5u8, 1u8, 37u8, 1u8, 0u8, 1u8,
73u8, 8u8, 9u8, 76u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 1u8, 56u8, 73u8, 110u8, 115u8, 116u8,
97u8, 110u8, 99u8, 101u8, 49u8, 71u8, 114u8, 111u8, 117u8, 112u8, 12u8, 52u8, 65u8, 99u8, 116u8,
105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8, 33u8, 1u8, 4u8,
0u8, 4u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 34u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8,
97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8,
86u8, 101u8, 99u8, 46u8, 60u8, 73u8, 110u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8,
109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8, 185u8, 5u8, 4u8, 0u8, 4u8, 244u8, 32u8, 84u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 34u8, 105u8, 110u8, 97u8,
99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
104u8, 105u8, 112u8, 44u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8,
32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 86u8, 101u8,
99u8, 46u8, 72u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 196u8,
32u8, 76u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8,
109u8, 97u8, 110u8, 121u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 99u8,
97u8, 110u8, 32u8, 98u8, 101u8, 46u8, 1u8, 209u8, 5u8, 1u8, 57u8, 1u8, 0u8, 1u8, 77u8, 8u8, 10u8,
72u8, 84u8, 101u8, 99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 1u8, 72u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8,
101u8, 51u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 36u8, 36u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 1u8, 0u8, 109u8, 4u8, 4u8, 0u8, 4u8,
144u8, 32u8, 84u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 101u8, 115u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 46u8, 40u8, 80u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 79u8, 102u8, 0u8, 1u8, 4u8, 6u8, 36u8, 201u8, 5u8, 4u8, 0u8, 4u8,
136u8, 32u8, 65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 24u8, 86u8, 111u8, 116u8, 105u8, 110u8, 103u8, 0u8,
1u8, 4u8, 6u8, 36u8, 65u8, 8u8, 4u8, 0u8, 4u8, 212u8, 32u8, 80u8, 111u8, 108u8, 121u8, 109u8,
101u8, 115u8, 104u8, 86u8, 111u8, 116u8, 101u8, 115u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
44u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 111u8, 110u8, 103u8,
111u8, 105u8, 110u8, 103u8, 46u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 72u8, 32u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 115u8, 111u8, 32u8, 102u8,
97u8, 114u8, 46u8, 28u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8, 33u8, 1u8, 4u8,
0u8, 4u8, 152u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 52u8, 86u8,
111u8, 116u8, 101u8, 84u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 1u8, 0u8,
153u8, 3u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 128u8, 32u8, 86u8, 111u8, 116u8,
101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 102u8, 111u8,
114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 97u8, 108u8, 46u8, 72u8,
82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8,
97u8, 116u8, 111u8, 114u8, 0u8, 0u8, 120u8, 4u8, 0u8, 4u8, 84u8, 32u8, 82u8, 101u8, 108u8, 101u8,
97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 46u8, 48u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 65u8, 102u8, 116u8, 101u8,
114u8, 1u8, 0u8, 53u8, 1u8, 4u8, 1u8, 4u8, 164u8, 32u8, 84u8, 105u8, 109u8, 101u8, 32u8, 97u8,
102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 97u8, 32u8, 112u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 101u8,
120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 69u8, 8u8, 4u8, 0u8, 4u8, 68u8, 32u8,
83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 46u8, 1u8, 213u8, 5u8, 1u8, 65u8, 1u8, 0u8, 1u8, 81u8, 8u8, 11u8, 112u8, 84u8, 101u8,
99u8, 104u8, 110u8, 105u8, 99u8, 97u8, 108u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8,
101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 1u8, 56u8,
73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 51u8, 71u8, 114u8, 111u8, 117u8, 112u8,
12u8, 52u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8,
115u8, 1u8, 0u8, 33u8, 1u8, 4u8, 0u8, 4u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8,
32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 115u8,
116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8,
100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 60u8, 73u8, 110u8, 97u8, 99u8,
116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8, 185u8, 5u8,
4u8, 0u8, 4u8, 244u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8,
116u8, 32u8, 34u8, 105u8, 110u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8,
101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8, 115u8, 116u8, 111u8,
114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8,
114u8, 101u8, 100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 72u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8,
77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8, 116u8, 1u8, 0u8, 16u8,
16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 196u8, 32u8, 76u8, 105u8, 109u8, 105u8, 116u8, 32u8, 111u8, 102u8,
32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8,
118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 116u8, 104u8,
101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 46u8, 1u8, 217u8, 5u8, 1u8,
73u8, 1u8, 0u8, 1u8, 85u8, 8u8, 12u8, 64u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8,
111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 1u8, 72u8, 73u8, 110u8, 115u8, 116u8,
97u8, 110u8, 99u8, 101u8, 52u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
36u8, 36u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 1u8, 0u8, 109u8, 4u8,
4u8, 0u8, 4u8, 144u8, 32u8, 84u8, 104u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 101u8, 115u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 46u8, 40u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 79u8, 102u8, 0u8, 1u8, 4u8, 6u8, 36u8, 201u8, 5u8, 4u8,
0u8, 4u8, 136u8, 32u8, 65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 24u8, 86u8, 111u8, 116u8, 105u8, 110u8,
103u8, 0u8, 1u8, 4u8, 6u8, 36u8, 65u8, 8u8, 4u8, 0u8, 4u8, 212u8, 32u8, 80u8, 111u8, 108u8,
121u8, 109u8, 101u8, 115u8, 104u8, 86u8, 111u8, 116u8, 101u8, 115u8, 32u8, 111u8, 110u8, 32u8,
97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 44u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 111u8,
110u8, 103u8, 111u8, 105u8, 110u8, 103u8, 46u8, 52u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8,
72u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 115u8, 111u8,
32u8, 102u8, 97u8, 114u8, 46u8, 28u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 1u8, 0u8,
33u8, 1u8, 4u8, 0u8, 4u8, 152u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8,
46u8, 52u8, 86u8, 111u8, 116u8, 101u8, 84u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8,
100u8, 1u8, 0u8, 153u8, 3u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 128u8, 32u8,
86u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8,
97u8, 108u8, 46u8, 72u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 67u8, 111u8, 111u8,
114u8, 100u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 0u8, 0u8, 120u8, 4u8, 0u8, 4u8, 84u8,
32u8, 82u8, 101u8, 108u8, 101u8, 97u8, 115u8, 101u8, 32u8, 99u8, 111u8, 111u8, 114u8, 100u8,
105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 46u8, 48u8, 69u8, 120u8, 112u8, 105u8, 114u8, 101u8,
115u8, 65u8, 102u8, 116u8, 101u8, 114u8, 1u8, 0u8, 53u8, 1u8, 4u8, 1u8, 4u8, 164u8, 32u8, 84u8,
105u8, 109u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8,
104u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 119u8,
105u8, 108u8, 108u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 46u8, 56u8, 83u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 69u8,
8u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8,
101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 221u8, 5u8, 1u8, 81u8, 1u8, 0u8, 1u8, 89u8,
8u8, 13u8, 104u8, 85u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 67u8, 111u8, 109u8, 109u8,
105u8, 116u8, 116u8, 101u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8,
112u8, 1u8, 56u8, 73u8, 110u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8, 52u8, 71u8, 114u8, 111u8,
117u8, 112u8, 12u8, 52u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8,
101u8, 114u8, 115u8, 1u8, 0u8, 33u8, 1u8, 4u8, 0u8, 4u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 34u8, 97u8, 99u8, 116u8, 105u8, 118u8,
101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8,
32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8,
111u8, 114u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 60u8, 73u8,
110u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8,
1u8, 0u8, 185u8, 5u8, 4u8, 0u8, 4u8, 244u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 32u8, 34u8, 105u8, 110u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8,
34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 44u8, 32u8,
115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 110u8, 32u8, 111u8,
114u8, 100u8, 101u8, 114u8, 101u8, 100u8, 32u8, 86u8, 101u8, 99u8, 46u8, 72u8, 65u8, 99u8, 116u8,
105u8, 118u8, 101u8, 77u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 76u8, 105u8, 109u8, 105u8,
116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 196u8, 32u8, 76u8, 105u8, 109u8, 105u8,
116u8, 32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8,
34u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 34u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8,
114u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8,
101u8, 46u8, 1u8, 225u8, 5u8, 1u8, 89u8, 1u8, 0u8, 1u8, 93u8, 8u8, 14u8, 32u8, 77u8, 117u8,
108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 1u8, 32u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8,
105u8, 103u8, 48u8, 52u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 78u8, 111u8,
110u8, 99u8, 101u8, 1u8, 0u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 33u8, 1u8,
32u8, 78u8, 111u8, 110u8, 99u8, 101u8, 32u8, 116u8, 111u8, 32u8, 101u8, 110u8, 115u8, 117u8,
114u8, 101u8, 32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 32u8, 77u8, 117u8, 108u8, 116u8,
105u8, 83u8, 105u8, 103u8, 32u8, 97u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 101u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 100u8,
59u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
49u8, 46u8, 60u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 83u8, 105u8, 103u8,
110u8, 101u8, 114u8, 115u8, 1u8, 1u8, 8u8, 6u8, 5u8, 97u8, 8u8, 105u8, 1u8, 132u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 212u8, 32u8, 83u8, 105u8, 103u8,
110u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8,
105u8, 115u8, 105u8, 103u8, 46u8, 32u8, 40u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 41u8, 32u8, 61u8, 62u8, 32u8, 115u8,
105u8, 103u8, 110u8, 101u8, 114u8, 46u8, 60u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 79u8,
102u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 1u8, 1u8, 4u8, 6u8, 0u8, 32u8, 32u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 204u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 97u8, 112u8, 112u8, 114u8, 111u8, 118u8, 101u8, 100u8, 47u8, 97u8,
99u8, 99u8, 101u8, 112u8, 116u8, 101u8, 100u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8,
115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8,
103u8, 46u8, 84u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8, 103u8, 83u8, 105u8, 103u8,
110u8, 115u8, 82u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 1u8, 1u8, 4u8, 6u8, 0u8,
32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 224u8, 32u8, 67u8, 111u8, 110u8, 102u8,
105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8,
105u8, 114u8, 101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 112u8, 114u8,
111u8, 99u8, 101u8, 115u8, 115u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 116u8, 120u8, 46u8, 56u8, 77u8, 117u8, 108u8, 116u8,
105u8, 83u8, 105u8, 103u8, 84u8, 120u8, 68u8, 111u8, 110u8, 101u8, 1u8, 1u8, 4u8, 6u8, 0u8, 32u8,
32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 53u8, 1u8, 32u8, 78u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 115u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8,
105u8, 110u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 46u8,
32u8, 85u8, 115u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 116u8, 120u8, 32u8, 105u8, 100u8, 59u8,
32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 48u8,
46u8, 36u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 0u8, 1u8, 4u8, 5u8,
101u8, 8u8, 201u8, 5u8, 4u8, 0u8, 4u8, 117u8, 1u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 115u8, 32u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8,
102u8, 111u8, 114u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8,
97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 40u8, 109u8, 117u8,
108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8,
97u8, 108u8, 32u8, 105u8, 100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 79u8, 112u8, 116u8, 105u8, 111u8,
110u8, 60u8, 84u8, 58u8, 58u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 62u8, 46u8,
44u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 73u8, 100u8, 115u8, 0u8, 1u8, 8u8,
6u8, 2u8, 105u8, 8u8, 32u8, 4u8, 0u8, 4u8, 148u8, 32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 112u8,
105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 73u8, 68u8,
115u8, 46u8, 20u8, 86u8, 111u8, 116u8, 101u8, 115u8, 1u8, 1u8, 4u8, 5u8, 109u8, 8u8, 21u8, 1u8,
4u8, 0u8, 4u8, 37u8, 1u8, 32u8, 73u8, 110u8, 100u8, 105u8, 118u8, 105u8, 100u8, 117u8, 97u8,
108u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 115u8, 105u8, 103u8,
110u8, 101u8, 114u8, 32u8, 118u8, 111u8, 116u8, 101u8, 115u8, 46u8, 32u8, 40u8, 109u8, 117u8,
108u8, 116u8, 105u8, 32u8, 115u8, 105u8, 103u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8,
114u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 41u8, 32u8, 61u8, 62u8,
32u8, 118u8, 111u8, 116u8, 101u8, 46u8, 72u8, 77u8, 117u8, 108u8, 116u8, 105u8, 83u8, 105u8,
103u8, 84u8, 111u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 1u8, 1u8, 4u8, 6u8,
0u8, 120u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 164u8,
32u8, 77u8, 97u8, 112u8, 115u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 115u8,
105u8, 103u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8,
105u8, 116u8, 115u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 56u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8,
1u8, 1u8, 4u8, 5u8, 101u8, 8u8, 113u8, 8u8, 76u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 124u8, 32u8, 68u8, 101u8, 116u8, 97u8,
105u8, 108u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8,
115u8, 105u8, 103u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 72u8, 84u8,
114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 86u8, 101u8, 114u8, 115u8,
105u8, 111u8, 110u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 244u8, 32u8, 84u8, 104u8,
101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 44u8, 32u8,
117u8, 115u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 111u8, 110u8, 95u8, 114u8,
117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 95u8, 117u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8,
96u8, 46u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8,
105u8, 111u8, 110u8, 1u8, 0u8, 121u8, 8u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 229u8, 5u8,
1u8, 97u8, 1u8, 0u8, 1u8, 125u8, 8u8, 15u8, 24u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 1u8,
24u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 40u8, 40u8, 67u8, 111u8, 110u8, 116u8, 114u8,
111u8, 108u8, 108u8, 101u8, 114u8, 1u8, 0u8, 0u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 12u8, 65u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 117u8, 108u8,
116u8, 105u8, 115u8, 105u8, 103u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8,
99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 46u8, 32u8, 84u8, 104u8,
101u8, 32u8, 103u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 32u8, 115u8, 105u8, 103u8, 110u8,
101u8, 114u8, 115u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 32u8, 116u8, 104u8, 101u8,
105u8, 114u8, 69u8, 1u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 122u8, 97u8,
116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 114u8, 101u8, 32u8,
97u8, 98u8, 108u8, 101u8, 32u8, 116u8, 111u8, 32u8, 103u8, 101u8, 116u8, 32u8, 116u8, 104u8,
101u8, 105u8, 114u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8,
100u8, 101u8, 108u8, 105u8, 118u8, 101u8, 114u8, 101u8, 100u8, 46u8, 32u8, 84u8, 104u8, 101u8,
32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 111u8,
114u8, 156u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 115u8, 32u8, 115u8,
111u8, 109u8, 101u8, 32u8, 80u8, 79u8, 76u8, 89u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
105u8, 114u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 60u8, 66u8,
114u8, 105u8, 100u8, 103u8, 101u8, 84u8, 120u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8,
1u8, 1u8, 8u8, 2u8, 2u8, 129u8, 8u8, 133u8, 8u8, 212u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 89u8, 1u8, 32u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 32u8, 111u8, 102u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 105u8, 100u8, 101u8,
110u8, 116u8, 105u8, 102u8, 105u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 112u8,
97u8, 105u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8,
99u8, 105u8, 112u8, 105u8, 101u8, 110u8, 116u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 104u8, 32u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 110u8, 111u8, 110u8, 99u8, 101u8, 46u8, 20u8, 65u8, 100u8, 109u8, 105u8, 110u8, 1u8,
0u8, 0u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 60u8, 32u8,
84u8, 104u8, 101u8, 32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 32u8, 107u8, 101u8, 121u8, 46u8,
24u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 4u8, 188u8, 32u8,
87u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 111u8, 112u8,
101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 102u8, 114u8, 111u8,
122u8, 101u8, 110u8, 46u8, 48u8, 70u8, 114u8, 101u8, 101u8, 122u8, 101u8, 65u8, 100u8, 109u8,
105u8, 110u8, 115u8, 1u8, 1u8, 4u8, 2u8, 0u8, 21u8, 1u8, 4u8, 0u8, 4u8, 9u8, 1u8, 32u8, 70u8,
114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 97u8,
100u8, 109u8, 105u8, 110u8, 115u8, 46u8, 32u8, 32u8, 84u8, 104u8, 101u8, 115u8, 101u8, 32u8,
97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 111u8, 110u8,
108u8, 121u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 46u8, 32u8, 84u8, 105u8, 109u8, 101u8, 108u8, 111u8,
99u8, 107u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 8u8, 61u8, 1u8, 32u8, 84u8, 104u8, 101u8,
32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8,
99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 105u8, 109u8, 101u8, 108u8, 111u8, 99u8, 107u8,
32u8, 112u8, 101u8, 114u8, 105u8, 111u8, 100u8, 44u8, 32u8, 105u8, 110u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 115u8, 44u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 101u8, 49u8, 1u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8,
105u8, 111u8, 110u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 100u8,
117u8, 114u8, 105u8, 110u8, 103u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 100u8, 109u8, 105u8, 110u8, 32u8, 107u8, 101u8, 121u8, 32u8, 99u8, 97u8,
110u8, 32u8, 102u8, 114u8, 101u8, 101u8, 122u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 44u8, 66u8, 114u8,
105u8, 100u8, 103u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 1u8, 0u8, 141u8, 8u8, 80u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
8u8, 41u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 114u8, 105u8,
100u8, 103u8, 101u8, 100u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 112u8, 101u8, 114u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 119u8, 105u8, 116u8, 104u8, 105u8,
110u8, 32u8, 97u8, 32u8, 115u8, 101u8, 116u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 118u8,
97u8, 108u8, 32u8, 111u8, 102u8, 248u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 46u8, 32u8,
70u8, 105u8, 101u8, 108u8, 100u8, 115u8, 58u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8,
98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 118u8, 97u8, 108u8,
32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 48u8, 80u8, 111u8, 108u8,
121u8, 120u8, 66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 100u8, 1u8, 1u8, 4u8, 6u8, 120u8, 141u8,
8u8, 80u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 8u8, 81u8, 1u8, 32u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8,
32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 32u8, 105u8, 110u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 118u8, 97u8, 108u8, 46u8, 32u8, 70u8, 105u8,
101u8, 108u8, 100u8, 115u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8,
103u8, 101u8, 100u8, 148u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 97u8, 110u8,
100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 105u8, 110u8, 116u8,
101u8, 114u8, 118u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 46u8, 76u8,
66u8, 114u8, 105u8, 100u8, 103u8, 101u8, 76u8, 105u8, 109u8, 105u8, 116u8, 69u8, 120u8, 101u8,
109u8, 112u8, 116u8, 101u8, 100u8, 1u8, 1u8, 4u8, 5u8, 120u8, 21u8, 1u8, 4u8, 0u8, 4u8, 192u8,
32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 99u8, 111u8, 110u8, 115u8, 116u8, 114u8, 97u8, 105u8, 110u8, 101u8, 100u8, 32u8,
98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 114u8, 105u8, 100u8, 103u8, 101u8, 32u8,
108u8, 105u8, 109u8, 105u8, 116u8, 46u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 145u8, 8u8, 4u8, 0u8, 4u8, 68u8, 32u8,
83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 46u8, 1u8, 233u8, 5u8, 1u8, 109u8, 1u8, 0u8, 1u8, 149u8, 8u8, 16u8, 28u8, 83u8, 116u8,
97u8, 107u8, 105u8, 110u8, 103u8, 1u8, 28u8, 83u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8,
156u8, 48u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 68u8, 101u8, 112u8, 116u8, 104u8,
1u8, 0u8, 16u8, 16u8, 84u8, 0u8, 0u8, 0u8, 28u8, 140u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 116u8, 111u8, 32u8, 107u8,
101u8, 101u8, 112u8, 32u8, 105u8, 110u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8,
46u8, 0u8, 57u8, 1u8, 32u8, 73u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 105u8, 115u8, 32u8, 107u8, 101u8, 112u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
101u8, 114u8, 97u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8, 91u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 95u8, 101u8, 114u8, 97u8, 32u8, 45u8, 32u8, 104u8, 105u8, 115u8, 116u8,
111u8, 114u8, 121u8, 95u8, 100u8, 101u8, 112u8, 116u8, 104u8, 59u8, 32u8, 99u8, 117u8, 114u8,
114u8, 101u8, 110u8, 116u8, 95u8, 101u8, 114u8, 97u8, 93u8, 96u8, 46u8, 0u8, 97u8, 1u8, 32u8,
77u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8,
104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 100u8, 101u8, 108u8, 97u8, 121u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8,
111u8, 116u8, 104u8, 101u8, 114u8, 119u8, 105u8, 115u8, 101u8, 46u8, 32u8, 73u8, 46u8, 101u8,
46u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 109u8, 117u8,
115u8, 116u8, 57u8, 1u8, 32u8, 97u8, 108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 98u8, 101u8, 32u8,
105u8, 110u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 46u8, 32u8, 73u8, 46u8,
101u8, 46u8, 32u8, 96u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 101u8, 114u8, 97u8, 32u8,
62u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 95u8, 101u8, 114u8, 97u8, 32u8, 45u8,
32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 121u8, 95u8, 100u8, 101u8, 112u8, 116u8, 104u8,
96u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 48u8, 32u8, 103u8, 117u8, 97u8, 114u8,
97u8, 110u8, 116u8, 101u8, 101u8, 100u8, 46u8, 56u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8,
4u8, 168u8, 32u8, 84u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 97u8, 108u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8,
103u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 105u8, 112u8, 97u8, 110u8, 116u8, 115u8,
46u8, 84u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 86u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8,
0u8, 4u8, 65u8, 1u8, 32u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8,
103u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 105u8, 112u8, 97u8, 110u8, 116u8, 115u8,
32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 101u8, 109u8, 101u8, 114u8, 103u8, 101u8,
110u8, 99u8, 121u8, 32u8, 99u8, 111u8, 110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8,
32u8, 97u8, 114u8, 101u8, 32u8, 105u8, 109u8, 112u8, 111u8, 115u8, 101u8, 100u8, 46u8, 52u8,
73u8, 110u8, 118u8, 117u8, 108u8, 110u8, 101u8, 114u8, 97u8, 98u8, 108u8, 101u8, 115u8, 1u8, 0u8,
232u8, 4u8, 0u8, 12u8, 89u8, 1u8, 32u8, 65u8, 110u8, 121u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 109u8, 97u8,
121u8, 32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 98u8, 101u8, 32u8, 115u8, 108u8, 97u8,
115u8, 104u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 102u8, 111u8, 114u8, 99u8, 105u8, 98u8,
108u8, 121u8, 32u8, 107u8, 105u8, 99u8, 107u8, 101u8, 100u8, 46u8, 32u8, 73u8, 116u8, 39u8,
115u8, 32u8, 97u8, 32u8, 86u8, 101u8, 99u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8, 32u8, 116u8,
104u8, 101u8, 121u8, 39u8, 114u8, 101u8, 77u8, 1u8, 32u8, 101u8, 97u8, 115u8, 121u8, 32u8, 116u8,
111u8, 32u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8, 32u8, 97u8,
110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 102u8, 111u8, 114u8, 109u8,
97u8, 110u8, 99u8, 101u8, 32u8, 104u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 109u8, 105u8,
110u8, 105u8, 109u8, 97u8, 108u8, 32u8, 40u8, 119u8, 101u8, 32u8, 101u8, 120u8, 112u8, 101u8,
99u8, 116u8, 32u8, 110u8, 111u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8,
110u8, 32u8, 102u8, 111u8, 117u8, 114u8, 172u8, 32u8, 105u8, 110u8, 118u8, 117u8, 108u8, 110u8,
101u8, 114u8, 97u8, 98u8, 108u8, 101u8, 115u8, 41u8, 32u8, 97u8, 110u8, 100u8, 32u8, 114u8,
101u8, 115u8, 116u8, 114u8, 105u8, 99u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8,
101u8, 115u8, 116u8, 110u8, 101u8, 116u8, 115u8, 46u8, 24u8, 66u8, 111u8, 110u8, 100u8, 101u8,
100u8, 0u8, 1u8, 4u8, 5u8, 0u8, 0u8, 4u8, 0u8, 4u8, 1u8, 1u8, 32u8, 77u8, 97u8, 112u8, 32u8,
102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 108u8, 108u8, 32u8, 108u8, 111u8, 99u8, 107u8, 101u8,
100u8, 32u8, 34u8, 115u8, 116u8, 97u8, 115u8, 104u8, 34u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8,
110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 24u8, 76u8, 101u8, 100u8, 103u8, 101u8, 114u8, 0u8, 1u8, 4u8, 2u8, 0u8, 153u8, 8u8,
4u8, 0u8, 4u8, 69u8, 1u8, 32u8, 77u8, 97u8, 112u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8,
108u8, 108u8, 32u8, 40u8, 117u8, 110u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 41u8, 32u8,
34u8, 99u8, 111u8, 110u8, 116u8, 114u8, 111u8, 108u8, 108u8, 101u8, 114u8, 34u8, 32u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 110u8, 102u8, 111u8, 32u8, 114u8, 101u8, 103u8, 97u8, 114u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 97u8, 107u8, 105u8, 110u8, 103u8, 46u8,
20u8, 80u8, 97u8, 121u8, 101u8, 101u8, 1u8, 1u8, 4u8, 5u8, 0u8, 253u8, 5u8, 4u8, 0u8, 4u8, 228u8,
32u8, 87u8, 104u8, 101u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 119u8,
97u8, 114u8, 100u8, 32u8, 112u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 109u8, 97u8, 100u8, 101u8, 46u8, 32u8, 75u8,
101u8, 121u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 46u8,
40u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 1u8, 1u8, 4u8, 5u8, 0u8,
1u8, 6u8, 8u8, 0u8, 0u8, 4u8, 69u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 112u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 40u8, 119u8, 97u8, 110u8, 110u8, 97u8, 98u8, 101u8, 41u8,
32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8,
115u8, 104u8, 32u8, 107u8, 101u8, 121u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8,
112u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 46u8, 40u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 0u8, 1u8,
4u8, 5u8, 0u8, 165u8, 8u8, 4u8, 0u8, 4u8, 101u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8,
97u8, 112u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 107u8, 101u8, 121u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8,
115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 111u8, 102u8, 32u8,
97u8, 108u8, 108u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8,
32u8, 116u8, 111u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 46u8, 40u8,
67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 69u8, 114u8, 97u8, 0u8, 0u8, 16u8, 4u8, 0u8,
16u8, 92u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8,
101u8, 114u8, 97u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 46u8, 0u8, 101u8, 1u8, 32u8, 84u8,
104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 116u8,
101u8, 115u8, 116u8, 32u8, 112u8, 108u8, 97u8, 110u8, 110u8, 101u8, 100u8, 32u8, 101u8, 114u8,
97u8, 44u8, 32u8, 100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8,
110u8, 32u8, 104u8, 111u8, 119u8, 32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 128u8, 32u8, 115u8, 101u8, 116u8, 44u8, 32u8, 105u8, 116u8, 32u8, 109u8,
105u8, 103u8, 104u8, 116u8, 32u8, 98u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8,
32u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 46u8, 36u8, 65u8, 99u8, 116u8, 105u8, 118u8,
101u8, 69u8, 114u8, 97u8, 0u8, 0u8, 169u8, 8u8, 4u8, 0u8, 16u8, 216u8, 32u8, 84u8, 104u8, 101u8,
32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 105u8, 110u8,
102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 44u8, 32u8, 105u8, 116u8, 32u8,
104u8, 111u8, 108u8, 100u8, 115u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 97u8, 110u8,
100u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 46u8, 0u8, 89u8, 1u8, 32u8, 84u8, 104u8, 101u8,
32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 105u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8,
99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8, 114u8, 101u8, 119u8, 97u8,
114u8, 100u8, 101u8, 100u8, 46u8, 32u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
101u8, 114u8, 97u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 172u8, 32u8, 101u8,
113u8, 117u8, 97u8, 108u8, 32u8, 116u8, 111u8, 32u8, 91u8, 96u8, 83u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 73u8, 110u8, 116u8, 101u8, 114u8, 102u8, 97u8, 99u8, 101u8, 58u8, 58u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 96u8, 93u8, 46u8, 84u8, 69u8,
114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 114u8, 116u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8,
110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 0u8, 1u8, 4u8, 5u8, 16u8, 16u8, 4u8, 0u8, 16u8, 49u8,
1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8,
105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 97u8, 116u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8,
96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 96u8, 32u8,
101u8, 114u8, 97u8, 115u8, 46u8, 0u8, 97u8, 1u8, 32u8, 78u8, 111u8, 116u8, 101u8, 58u8, 32u8,
84u8, 104u8, 105u8, 115u8, 32u8, 116u8, 114u8, 97u8, 99u8, 107u8, 115u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 105u8, 110u8, 103u8, 32u8, 115u8, 101u8, 115u8,
115u8, 105u8, 111u8, 110u8, 32u8, 40u8, 105u8, 46u8, 101u8, 46u8, 32u8, 115u8, 101u8, 115u8,
115u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 119u8, 104u8, 101u8,
110u8, 32u8, 101u8, 114u8, 97u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 32u8, 98u8, 101u8,
105u8, 110u8, 103u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 41u8, 240u8, 32u8, 102u8,
111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 105u8, 110u8,
32u8, 96u8, 91u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 69u8, 114u8, 97u8, 32u8, 45u8,
32u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 44u8, 32u8,
67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 69u8, 114u8, 97u8, 93u8, 96u8, 46u8, 44u8, 69u8,
114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8,
173u8, 8u8, 197u8, 1u8, 12u8, 0u8, 0u8, 0u8, 24u8, 120u8, 32u8, 69u8, 120u8, 112u8, 111u8, 115u8,
117u8, 114u8, 101u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 32u8, 97u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 97u8, 1u8, 32u8, 84u8,
104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 107u8, 101u8, 121u8, 101u8, 100u8, 32u8, 102u8,
105u8, 114u8, 115u8, 116u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8,
97u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8,
111u8, 119u8, 32u8, 98u8, 117u8, 108u8, 107u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8,
111u8, 110u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 0u8, 168u8, 32u8, 73u8, 115u8, 32u8, 105u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 96u8, 72u8, 73u8, 83u8, 84u8,
79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 96u8, 32u8, 101u8, 114u8, 97u8, 115u8,
46u8, 65u8, 1u8, 32u8, 73u8, 102u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 32u8,
104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 101u8,
116u8, 32u8, 111u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 101u8,
109u8, 112u8, 116u8, 121u8, 32u8, 101u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8, 101u8, 32u8,
105u8, 115u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8, 72u8, 69u8,
114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 67u8, 108u8, 105u8, 112u8,
112u8, 101u8, 100u8, 1u8, 1u8, 8u8, 5u8, 5u8, 173u8, 8u8, 197u8, 1u8, 12u8, 0u8, 0u8, 0u8, 44u8,
152u8, 32u8, 67u8, 108u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 69u8, 120u8, 112u8, 111u8,
115u8, 117u8, 114u8, 101u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 32u8, 97u8, 116u8, 32u8, 101u8, 114u8, 97u8, 46u8, 0u8, 89u8, 1u8, 32u8,
84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 115u8, 105u8, 109u8, 105u8, 108u8, 97u8,
114u8, 32u8, 116u8, 111u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 115u8, 83u8, 116u8, 97u8, 107u8,
101u8, 114u8, 115u8, 96u8, 93u8, 32u8, 98u8, 117u8, 116u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 115u8, 32u8, 101u8, 120u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 105u8, 115u8, 32u8,
114u8, 101u8, 100u8, 117u8, 99u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
220u8, 32u8, 96u8, 84u8, 58u8, 58u8, 77u8, 97u8, 120u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8,
116u8, 111u8, 114u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 80u8, 101u8, 114u8,
86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 96u8, 32u8, 98u8, 105u8, 103u8,
103u8, 101u8, 115u8, 116u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 46u8, 29u8,
1u8, 32u8, 40u8, 78u8, 111u8, 116u8, 101u8, 58u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8,
101u8, 108u8, 100u8, 32u8, 96u8, 116u8, 111u8, 116u8, 97u8, 108u8, 96u8, 32u8, 97u8, 110u8,
100u8, 32u8, 96u8, 111u8, 119u8, 110u8, 96u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8, 101u8, 32u8, 114u8, 101u8, 109u8, 97u8,
105u8, 110u8, 115u8, 32u8, 117u8, 110u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8, 41u8,
46u8, 244u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 117u8, 115u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 116u8, 104u8, 101u8,
32u8, 105u8, 47u8, 111u8, 32u8, 99u8, 111u8, 115u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 101u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 32u8,
112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 46u8, 0u8, 93u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 105u8, 115u8, 32u8, 107u8, 101u8, 121u8, 101u8, 100u8, 32u8, 102u8, 105u8, 115u8, 116u8,
32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 105u8, 110u8,
100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8, 98u8,
117u8, 108u8, 107u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 116u8,
97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 168u8, 32u8,
73u8, 115u8, 32u8, 105u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8,
97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8,
68u8, 69u8, 80u8, 84u8, 72u8, 96u8, 32u8, 101u8, 114u8, 97u8, 115u8, 46u8, 65u8, 1u8, 32u8, 73u8,
102u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 32u8, 104u8, 97u8, 115u8, 110u8,
39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 114u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 101u8, 109u8, 112u8, 116u8, 121u8,
32u8, 101u8, 120u8, 112u8, 111u8, 115u8, 117u8, 114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 114u8,
101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8, 72u8, 69u8, 114u8, 97u8, 115u8, 86u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 80u8, 114u8, 101u8, 102u8, 115u8, 1u8, 1u8,
8u8, 5u8, 5u8, 173u8, 8u8, 1u8, 6u8, 8u8, 0u8, 0u8, 20u8, 17u8, 1u8, 32u8, 83u8, 105u8, 109u8,
105u8, 108u8, 97u8, 114u8, 32u8, 116u8, 111u8, 32u8, 96u8, 69u8, 114u8, 97u8, 115u8, 83u8, 116u8,
97u8, 107u8, 101u8, 114u8, 115u8, 96u8, 44u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 104u8,
111u8, 108u8, 100u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 102u8, 101u8,
114u8, 101u8, 110u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8,
100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 46u8, 0u8, 97u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 105u8, 115u8, 32u8, 107u8, 101u8, 121u8, 101u8, 100u8, 32u8, 102u8, 105u8, 114u8, 115u8,
116u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 105u8,
110u8, 100u8, 101u8, 120u8, 32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 32u8,
98u8, 117u8, 108u8, 107u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8,
97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8,
116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 0u8, 168u8,
32u8, 73u8, 115u8, 32u8, 105u8, 116u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8,
95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 96u8, 32u8, 101u8, 114u8, 97u8, 115u8, 46u8, 76u8, 69u8,
114u8, 97u8, 115u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 82u8, 101u8,
119u8, 97u8, 114u8, 100u8, 0u8, 1u8, 4u8, 5u8, 16u8, 24u8, 4u8, 0u8, 12u8, 9u8, 1u8, 32u8, 84u8,
104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8,
97u8, 116u8, 111u8, 114u8, 32u8, 101u8, 114u8, 97u8, 32u8, 112u8, 97u8, 121u8, 111u8, 117u8,
116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8,
32u8, 96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 96u8,
32u8, 101u8, 114u8, 97u8, 115u8, 46u8, 0u8, 33u8, 1u8, 32u8, 69u8, 114u8, 97u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 118u8, 101u8, 110u8, 39u8, 116u8, 32u8, 102u8,
105u8, 110u8, 105u8, 115u8, 104u8, 101u8, 100u8, 32u8, 121u8, 101u8, 116u8, 32u8, 111u8, 114u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 32u8, 100u8, 111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 104u8, 97u8,
118u8, 101u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 64u8, 69u8, 114u8, 97u8,
115u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 80u8, 111u8, 105u8, 110u8, 116u8, 115u8, 1u8, 1u8,
4u8, 5u8, 16u8, 177u8, 8u8, 20u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 172u8, 32u8, 82u8, 101u8, 119u8,
97u8, 114u8, 100u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8,
97u8, 115u8, 116u8, 32u8, 96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8,
84u8, 72u8, 96u8, 32u8, 101u8, 114u8, 97u8, 115u8, 46u8, 37u8, 1u8, 32u8, 73u8, 102u8, 32u8,
114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8,
98u8, 101u8, 101u8, 110u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8,
32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 48u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8,
32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8, 56u8,
69u8, 114u8, 97u8, 115u8, 84u8, 111u8, 116u8, 97u8, 108u8, 83u8, 116u8, 97u8, 107u8, 101u8, 1u8,
1u8, 4u8, 5u8, 16u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 8u8, 236u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8,
32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8,
96u8, 72u8, 73u8, 83u8, 84u8, 79u8, 82u8, 89u8, 95u8, 68u8, 69u8, 80u8, 84u8, 72u8, 96u8, 32u8,
101u8, 114u8, 97u8, 115u8, 46u8, 29u8, 1u8, 32u8, 73u8, 102u8, 32u8, 116u8, 111u8, 116u8, 97u8,
108u8, 32u8, 104u8, 97u8, 115u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8,
115u8, 101u8, 116u8, 32u8, 111u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8,
110u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 32u8, 116u8, 104u8, 101u8, 110u8,
32u8, 48u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8,
116u8, 117u8, 114u8, 110u8, 101u8, 100u8, 46u8, 32u8, 70u8, 111u8, 114u8, 99u8, 101u8, 69u8,
114u8, 97u8, 1u8, 0u8, 189u8, 8u8, 4u8, 0u8, 4u8, 84u8, 32u8, 77u8, 111u8, 100u8, 101u8, 32u8,
111u8, 102u8, 32u8, 101u8, 114u8, 97u8, 32u8, 102u8, 111u8, 114u8, 99u8, 105u8, 110u8, 103u8,
46u8, 76u8, 83u8, 108u8, 97u8, 115u8, 104u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 70u8, 114u8,
97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 1u8, 0u8, 137u8, 1u8, 16u8, 0u8, 0u8, 0u8, 0u8, 12u8,
248u8, 32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 101u8, 114u8, 99u8, 101u8, 110u8, 116u8, 97u8,
103u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 108u8, 97u8, 115u8,
104u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 112u8,
111u8, 114u8, 116u8, 101u8, 114u8, 115u8, 46u8, 0u8, 228u8, 32u8, 84u8, 104u8, 101u8, 32u8,
114u8, 101u8, 115u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 108u8,
97u8, 115u8, 104u8, 101u8, 100u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 105u8, 115u8,
32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 83u8, 108u8, 97u8, 115u8, 104u8, 96u8, 46u8, 76u8, 67u8, 97u8, 110u8, 99u8,
101u8, 108u8, 101u8, 100u8, 83u8, 108u8, 97u8, 115u8, 104u8, 80u8, 97u8, 121u8, 111u8, 117u8,
116u8, 1u8, 0u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 8u8, 21u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8,
116u8, 32u8, 111u8, 102u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8, 121u8, 32u8,
103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8,
116u8, 101u8, 114u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 108u8, 97u8, 115u8,
104u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8,
119u8, 97u8, 115u8, 236u8, 32u8, 99u8, 97u8, 110u8, 99u8, 101u8, 108u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 101u8, 120u8, 116u8, 114u8, 97u8, 111u8, 114u8, 100u8, 105u8, 110u8, 97u8, 114u8,
121u8, 32u8, 99u8, 105u8, 114u8, 99u8, 117u8, 109u8, 115u8, 116u8, 97u8, 110u8, 99u8, 101u8,
115u8, 32u8, 40u8, 101u8, 46u8, 103u8, 46u8, 32u8, 103u8, 111u8, 118u8, 101u8, 114u8, 110u8,
97u8, 110u8, 99u8, 101u8, 41u8, 46u8, 64u8, 85u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8,
100u8, 83u8, 108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 1u8, 1u8, 4u8, 5u8, 16u8, 193u8, 8u8, 4u8,
0u8, 4u8, 196u8, 32u8, 65u8, 108u8, 108u8, 32u8, 117u8, 110u8, 97u8, 112u8, 112u8, 108u8, 105u8,
101u8, 100u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 108u8, 97u8, 116u8, 101u8, 114u8, 46u8, 40u8, 66u8, 111u8, 110u8, 100u8,
101u8, 100u8, 69u8, 114u8, 97u8, 115u8, 1u8, 0u8, 113u8, 4u8, 4u8, 0u8, 16u8, 37u8, 1u8, 32u8,
65u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 115u8, 116u8, 105u8, 108u8, 108u8, 45u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8,
101u8, 114u8, 97u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 105u8,
114u8, 115u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8,
100u8, 101u8, 120u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 101u8, 114u8,
97u8, 46u8, 0u8, 200u8, 32u8, 77u8, 117u8, 115u8, 116u8, 32u8, 99u8, 111u8, 110u8, 116u8, 97u8,
105u8, 110u8, 115u8, 32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 97u8, 110u8, 103u8, 101u8, 58u8, 188u8, 32u8, 96u8, 91u8,
97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 101u8, 114u8, 97u8, 32u8, 45u8, 32u8, 98u8, 111u8,
117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 95u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 59u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 95u8, 101u8, 114u8, 97u8, 93u8, 96u8,
76u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 83u8, 108u8, 97u8, 115u8,
104u8, 73u8, 110u8, 69u8, 114u8, 97u8, 0u8, 1u8, 8u8, 5u8, 5u8, 173u8, 8u8, 209u8, 8u8, 4u8, 0u8,
8u8, 69u8, 1u8, 32u8, 65u8, 108u8, 108u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8,
103u8, 32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 111u8, 110u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 32u8, 109u8, 97u8, 112u8, 112u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 101u8, 114u8, 97u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 104u8, 105u8, 103u8, 104u8, 101u8, 115u8, 116u8, 32u8, 115u8, 108u8, 97u8,
115u8, 104u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 114u8, 116u8, 105u8, 111u8, 110u8, 112u8,
32u8, 97u8, 110u8, 100u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 32u8, 118u8, 97u8, 108u8,
117u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 46u8,
76u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 83u8, 108u8, 97u8, 115u8,
104u8, 73u8, 110u8, 69u8, 114u8, 97u8, 0u8, 1u8, 8u8, 5u8, 5u8, 173u8, 8u8, 24u8, 4u8, 0u8, 4u8,
97u8, 1u8, 32u8, 65u8, 108u8, 108u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8,
32u8, 101u8, 118u8, 101u8, 110u8, 116u8, 115u8, 32u8, 111u8, 110u8, 32u8, 110u8, 111u8, 109u8,
105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 44u8, 32u8, 109u8, 97u8, 112u8, 112u8, 101u8,
100u8, 32u8, 98u8, 121u8, 32u8, 101u8, 114u8, 97u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 104u8, 105u8, 103u8, 104u8, 101u8, 115u8, 116u8, 32u8, 115u8, 108u8, 97u8, 115u8,
104u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8,
32u8, 101u8, 114u8, 97u8, 46u8, 52u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 83u8,
112u8, 97u8, 110u8, 115u8, 0u8, 1u8, 4u8, 5u8, 0u8, 213u8, 8u8, 4u8, 0u8, 4u8, 140u8, 32u8, 83u8,
108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 115u8, 112u8, 97u8, 110u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 115u8, 46u8, 36u8, 83u8, 112u8, 97u8, 110u8, 83u8, 108u8, 97u8, 115u8,
104u8, 1u8, 1u8, 4u8, 5u8, 129u8, 8u8, 217u8, 8u8, 128u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 61u8, 1u8, 32u8, 82u8, 101u8, 99u8, 111u8, 114u8, 100u8, 115u8,
32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8,
98u8, 111u8, 117u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8,
117u8, 109u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8,
115u8, 116u8, 97u8, 115u8, 104u8, 32u8, 119u8, 105u8, 116u8, 104u8, 105u8, 110u8, 32u8, 97u8,
32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 32u8, 115u8, 112u8, 97u8, 110u8,
44u8, 184u8, 32u8, 97u8, 115u8, 32u8, 119u8, 101u8, 108u8, 108u8, 32u8, 97u8, 115u8, 32u8, 104u8,
111u8, 119u8, 32u8, 109u8, 117u8, 99u8, 104u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8,
32u8, 104u8, 97u8, 115u8, 32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 97u8, 105u8, 100u8, 32u8,
111u8, 117u8, 116u8, 46u8, 88u8, 69u8, 97u8, 114u8, 108u8, 105u8, 101u8, 115u8, 116u8, 85u8,
110u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 83u8, 108u8, 97u8, 115u8, 104u8, 0u8, 0u8,
16u8, 4u8, 0u8, 4u8, 252u8, 32u8, 84u8, 104u8, 101u8, 32u8, 101u8, 97u8, 114u8, 108u8, 105u8,
101u8, 115u8, 116u8, 32u8, 101u8, 114u8, 97u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 119u8, 101u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 112u8,
101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 44u8, 32u8, 117u8, 110u8, 97u8, 112u8, 112u8, 108u8,
105u8, 101u8, 100u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 46u8, 72u8, 83u8, 110u8, 97u8,
112u8, 115u8, 104u8, 111u8, 116u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
115u8, 0u8, 0u8, 232u8, 4u8, 0u8, 8u8, 101u8, 1u8, 32u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8,
114u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 101u8, 103u8, 105u8,
110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 25u8, 1u8,
32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8,
111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 61u8, 61u8, 32u8, 96u8,
69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8,
58u8, 58u8, 79u8, 112u8, 101u8, 110u8, 40u8, 95u8, 41u8, 96u8, 46u8, 72u8, 83u8, 110u8, 97u8,
112u8, 115u8, 104u8, 111u8, 116u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8,
115u8, 0u8, 0u8, 232u8, 4u8, 0u8, 8u8, 101u8, 1u8, 32u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 32u8, 111u8, 102u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 101u8, 103u8, 105u8,
110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 119u8, 105u8, 110u8, 100u8, 111u8, 119u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 111u8, 110u8, 108u8, 121u8, 25u8, 1u8,
32u8, 104u8, 97u8, 118u8, 101u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 119u8,
104u8, 101u8, 110u8, 32u8, 91u8, 96u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8,
111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 93u8, 32u8, 61u8, 61u8, 32u8, 96u8,
69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8,
58u8, 58u8, 79u8, 112u8, 101u8, 110u8, 40u8, 95u8, 41u8, 96u8, 46u8, 52u8, 81u8, 117u8, 101u8,
117u8, 101u8, 100u8, 69u8, 108u8, 101u8, 99u8, 116u8, 101u8, 100u8, 0u8, 0u8, 221u8, 8u8, 4u8,
0u8, 12u8, 101u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 115u8, 101u8, 116u8, 46u8, 32u8,
65u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8,
97u8, 110u8, 32u8, 101u8, 114u8, 97u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 97u8, 118u8, 97u8, 105u8, 108u8, 97u8, 98u8, 108u8, 101u8, 32u8,
40u8, 112u8, 111u8, 116u8, 101u8, 110u8, 116u8, 105u8, 97u8, 108u8, 108u8, 121u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 116u8, 104u8, 101u8, 97u8, 1u8, 32u8, 114u8, 101u8, 115u8, 117u8,
108u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 110u8, 32u8, 111u8, 102u8, 102u8, 99u8, 104u8,
97u8, 105u8, 110u8, 32u8, 119u8, 111u8, 114u8, 107u8, 101u8, 114u8, 41u8, 44u8, 32u8, 105u8,
116u8, 32u8, 105u8, 115u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8,
108u8, 121u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 32u8, 79u8, 116u8, 104u8, 101u8, 114u8,
119u8, 105u8, 115u8, 101u8, 44u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 45u8, 99u8,
104u8, 97u8, 105u8, 110u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 52u8,
32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8, 44u8,
81u8, 117u8, 101u8, 117u8, 101u8, 100u8, 83u8, 99u8, 111u8, 114u8, 101u8, 0u8, 0u8, 229u8, 6u8,
4u8, 0u8, 4u8, 176u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 99u8, 111u8, 114u8, 101u8, 32u8,
111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
32u8, 91u8, 96u8, 81u8, 117u8, 101u8, 117u8, 101u8, 100u8, 69u8, 108u8, 101u8, 99u8, 116u8,
101u8, 100u8, 96u8, 93u8, 46u8, 68u8, 69u8, 114u8, 97u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8,
111u8, 110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 1u8, 0u8, 225u8, 8u8, 4u8, 0u8, 8u8, 73u8,
1u8, 32u8, 70u8, 108u8, 97u8, 103u8, 32u8, 116u8, 111u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
111u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8,
111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 99u8,
104u8, 97u8, 105u8, 110u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 96u8, 79u8, 112u8, 101u8, 110u8, 40u8, 95u8, 41u8, 96u8,
44u8, 32u8, 119u8, 101u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 108u8, 32u8, 115u8, 111u8,
108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8,
115u8, 117u8, 98u8, 109u8, 105u8, 116u8, 116u8, 101u8, 100u8, 46u8, 84u8, 73u8, 115u8, 67u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 70u8,
105u8, 110u8, 97u8, 108u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 8u8, 77u8, 1u8, 32u8, 84u8, 114u8,
117u8, 101u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 42u8, 42u8, 112u8, 108u8, 97u8, 110u8, 110u8, 101u8, 100u8, 42u8,
42u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 102u8,
105u8, 110u8, 97u8, 108u8, 46u8, 32u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8,
116u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 100u8, 111u8, 101u8, 115u8, 32u8, 110u8, 111u8,
116u8, 32u8, 116u8, 97u8, 107u8, 101u8, 32u8, 101u8, 114u8, 97u8, 88u8, 32u8, 102u8, 111u8,
114u8, 99u8, 105u8, 110u8, 103u8, 32u8, 105u8, 110u8, 116u8, 111u8, 32u8, 97u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 46u8, 80u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 101u8, 100u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 0u8, 1u8, 4u8,
5u8, 120u8, 229u8, 8u8, 4u8, 0u8, 4u8, 236u8, 32u8, 69u8, 110u8, 116u8, 105u8, 116u8, 105u8,
101u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 114u8, 117u8, 110u8, 32u8, 111u8,
112u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8, 47u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 32u8, 110u8, 111u8, 100u8, 101u8, 115u8, 46u8, 88u8, 86u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 67u8, 111u8, 109u8, 109u8, 105u8, 115u8, 115u8, 105u8,
111u8, 110u8, 67u8, 97u8, 112u8, 1u8, 0u8, 137u8, 1u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 21u8, 1u8,
32u8, 69u8, 118u8, 101u8, 114u8, 121u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 32u8, 104u8, 97u8, 115u8, 32u8, 99u8, 111u8, 109u8, 109u8, 105u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 98u8, 101u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 97u8,
110u8, 103u8, 101u8, 32u8, 91u8, 48u8, 44u8, 32u8, 67u8, 97u8, 112u8, 93u8, 46u8, 80u8, 77u8,
105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 66u8, 111u8, 110u8, 100u8, 84u8, 104u8, 114u8, 101u8,
115u8, 104u8, 111u8, 108u8, 100u8, 1u8, 0u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 208u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 105u8,
110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 119u8,
105u8, 116u8, 104u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 97u8, 32u8, 118u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 111u8,
110u8, 100u8, 46u8, 72u8, 83u8, 108u8, 97u8, 115u8, 104u8, 105u8, 110u8, 103u8, 65u8, 108u8,
108u8, 111u8, 119u8, 101u8, 100u8, 70u8, 111u8, 114u8, 1u8, 0u8, 141u8, 1u8, 4u8, 2u8, 0u8, 56u8,
83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
1u8, 0u8, 233u8, 8u8, 4u8, 6u8, 16u8, 204u8, 32u8, 84u8, 114u8, 117u8, 101u8, 32u8, 105u8, 102u8,
32u8, 110u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 117u8, 112u8, 103u8, 114u8, 97u8, 100u8, 101u8, 100u8, 32u8, 116u8,
111u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
46u8, 124u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8,
115u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 97u8,
108u8, 108u8, 101u8, 116u8, 46u8, 0u8, 160u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8,
115u8, 32u8, 115u8, 101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 118u8, 54u8, 46u8, 48u8, 46u8, 49u8,
32u8, 102u8, 111u8, 114u8, 32u8, 110u8, 101u8, 119u8, 32u8, 110u8, 101u8, 116u8, 119u8, 111u8,
114u8, 107u8, 115u8, 46u8, 1u8, 249u8, 5u8, 1u8, 129u8, 1u8, 44u8, 56u8, 83u8, 101u8, 115u8,
115u8, 105u8, 111u8, 110u8, 115u8, 80u8, 101u8, 114u8, 69u8, 114u8, 97u8, 16u8, 16u8, 3u8, 0u8,
0u8, 0u8, 4u8, 112u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 112u8, 101u8, 114u8, 32u8, 101u8,
114u8, 97u8, 46u8, 60u8, 66u8, 111u8, 110u8, 100u8, 105u8, 110u8, 103u8, 68u8, 117u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 16u8, 16u8, 7u8, 0u8, 0u8, 0u8, 4u8, 228u8, 32u8, 78u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 100u8, 32u8, 102u8, 117u8, 110u8,
100u8, 115u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 114u8, 101u8, 109u8, 97u8, 105u8, 110u8,
32u8, 98u8, 111u8, 110u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 46u8, 72u8, 83u8,
108u8, 97u8, 115u8, 104u8, 68u8, 101u8, 102u8, 101u8, 114u8, 68u8, 117u8, 114u8, 97u8, 116u8,
105u8, 111u8, 110u8, 16u8, 16u8, 4u8, 0u8, 0u8, 0u8, 20u8, 1u8, 1u8, 32u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 101u8, 114u8, 97u8, 115u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 115u8, 108u8, 97u8, 115u8, 104u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8,
32u8, 100u8, 101u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 98u8, 121u8, 44u8, 32u8,
97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 97u8, 116u8,
105u8, 111u8, 110u8, 46u8, 0u8, 188u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 115u8, 104u8,
111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 108u8, 101u8, 115u8, 115u8, 32u8, 116u8,
104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 111u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 45u8, 1u8, 32u8, 83u8,
101u8, 116u8, 32u8, 116u8, 111u8, 32u8, 48u8, 32u8, 105u8, 102u8, 32u8, 115u8, 108u8, 97u8,
115u8, 104u8, 101u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8,
32u8, 97u8, 112u8, 112u8, 108u8, 105u8, 101u8, 100u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8,
105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 44u8, 32u8, 119u8, 105u8, 116u8, 104u8, 111u8, 117u8,
116u8, 32u8, 111u8, 112u8, 112u8, 111u8, 114u8, 116u8, 117u8, 110u8, 105u8, 116u8, 121u8, 32u8,
102u8, 111u8, 114u8, 56u8, 32u8, 105u8, 110u8, 116u8, 101u8, 114u8, 118u8, 101u8, 110u8, 116u8,
105u8, 111u8, 110u8, 46u8, 68u8, 69u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 76u8,
111u8, 111u8, 107u8, 97u8, 104u8, 101u8, 97u8, 100u8, 16u8, 16u8, 75u8, 0u8, 0u8, 0u8, 28u8,
113u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 111u8, 102u8, 32u8, 116u8,
104u8, 101u8, 32u8, 101u8, 114u8, 97u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 101u8, 108u8, 101u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8,
117u8, 98u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 114u8, 101u8,
32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 46u8, 0u8, 109u8, 1u8, 32u8, 83u8, 101u8,
116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 116u8, 111u8, 32u8,
122u8, 101u8, 114u8, 111u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 100u8, 105u8, 115u8, 97u8,
98u8, 108u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 102u8, 102u8, 99u8, 104u8, 97u8,
105u8, 110u8, 32u8, 99u8, 111u8, 109u8, 112u8, 117u8, 116u8, 101u8, 32u8, 97u8, 110u8, 100u8,
32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8,
32u8, 115u8, 101u8, 113u8, 45u8, 112u8, 104u8, 114u8, 97u8, 103u8, 109u8, 101u8, 110u8, 32u8,
119u8, 105u8, 108u8, 108u8, 36u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 46u8, 0u8,
117u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 98u8, 111u8, 117u8, 110u8,
100u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 98u8, 101u8, 105u8, 110u8, 103u8, 32u8, 119u8,
105u8, 116u8, 104u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8,
32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 46u8, 32u8, 72u8, 101u8, 110u8, 99u8,
101u8, 44u8, 32u8, 115u8, 101u8, 116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 32u8,
116u8, 111u8, 32u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 109u8, 111u8, 114u8,
101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 156u8, 32u8, 108u8, 101u8,
110u8, 103u8, 116u8, 104u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 112u8, 111u8,
105u8, 110u8, 116u8, 108u8, 101u8, 115u8, 115u8, 46u8, 52u8, 77u8, 97u8, 120u8, 73u8, 116u8,
101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 16u8, 16u8, 10u8, 0u8, 0u8, 0u8, 12u8,
41u8, 1u8, 32u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8,
101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 105u8, 110u8,
103u8, 32u8, 105u8, 116u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 116u8,
111u8, 32u8, 114u8, 117u8, 110u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8,
102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8, 115u8, 117u8, 98u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 46u8, 0u8, 236u8, 32u8, 73u8, 102u8, 32u8, 115u8, 101u8, 116u8, 32u8,
116u8, 111u8, 32u8, 48u8, 44u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 95u8, 115u8,
111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 110u8,
111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8,
32u8, 97u8, 116u8, 32u8, 97u8, 108u8, 108u8, 46u8, 80u8, 77u8, 105u8, 110u8, 83u8, 111u8, 108u8,
117u8, 116u8, 105u8, 111u8, 110u8, 83u8, 99u8, 111u8, 114u8, 101u8, 66u8, 117u8, 109u8, 112u8,
137u8, 1u8, 16u8, 32u8, 161u8, 7u8, 0u8, 4u8, 97u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8,
104u8, 114u8, 101u8, 115u8, 104u8, 111u8, 108u8, 100u8, 32u8, 111u8, 102u8, 32u8, 105u8, 109u8,
112u8, 114u8, 111u8, 118u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 112u8, 114u8, 111u8,
118u8, 105u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 110u8, 101u8,
119u8, 32u8, 115u8, 111u8, 108u8, 117u8, 116u8, 105u8, 111u8, 110u8, 32u8, 116u8, 111u8, 32u8,
98u8, 101u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 101u8, 100u8, 46u8, 128u8, 77u8, 97u8,
120u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 82u8, 101u8, 119u8, 97u8,
114u8, 100u8, 101u8, 100u8, 80u8, 101u8, 114u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 16u8, 16u8, 0u8, 8u8, 0u8, 0u8, 16u8, 248u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8,
97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8,
114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 0u8,
105u8, 1u8, 32u8, 70u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 36u8, 77u8, 97u8, 120u8, 78u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 101u8, 100u8, 80u8, 101u8, 114u8, 86u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 96u8, 32u8, 98u8, 105u8, 103u8, 103u8, 101u8,
115u8, 116u8, 32u8, 115u8, 116u8, 97u8, 107u8, 101u8, 114u8, 115u8, 32u8, 99u8, 97u8, 110u8,
32u8, 99u8, 108u8, 97u8, 105u8, 109u8, 33u8, 1u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8,
114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 117u8,
115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 32u8, 116u8,
104u8, 101u8, 32u8, 105u8, 47u8, 111u8, 32u8, 99u8, 111u8, 115u8, 116u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8,
114u8, 32u8, 112u8, 97u8, 121u8, 111u8, 117u8, 116u8, 46u8, 92u8, 77u8, 97u8, 120u8, 86u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 80u8, 101u8, 114u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 121u8, 2u8, 16u8, 16u8, 9u8, 5u8, 0u8, 12u8, 244u8, 32u8, 77u8, 97u8,
120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8, 115u8,
115u8, 105u8, 111u8, 110u8, 101u8, 100u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8,
121u8, 46u8, 0u8, 89u8, 1u8, 32u8, 77u8, 97u8, 120u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8,
114u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8,
115u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 61u8, 32u8, 96u8, 77u8, 97u8, 120u8, 86u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 80u8, 101u8, 114u8, 73u8, 100u8, 101u8,
110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 42u8, 32u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8,
118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 95u8, 99u8, 111u8, 117u8, 110u8,
116u8, 40u8, 41u8, 96u8, 46u8, 132u8, 77u8, 97u8, 120u8, 86u8, 97u8, 114u8, 105u8, 97u8, 98u8,
108u8, 101u8, 73u8, 110u8, 102u8, 108u8, 97u8, 116u8, 105u8, 111u8, 110u8, 84u8, 111u8, 116u8,
97u8, 108u8, 73u8, 115u8, 115u8, 117u8, 97u8, 110u8, 99u8, 101u8, 24u8, 64u8, 0u8, 128u8, 198u8,
164u8, 126u8, 141u8, 3u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 113u8, 1u8, 32u8,
77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8,
32u8, 111u8, 102u8, 32u8, 96u8, 84u8, 58u8, 58u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 99u8,
121u8, 58u8, 58u8, 116u8, 111u8, 116u8, 97u8, 108u8, 95u8, 105u8, 115u8, 115u8, 117u8, 97u8,
110u8, 99u8, 101u8, 40u8, 41u8, 96u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 116u8, 104u8,
97u8, 116u8, 32u8, 110u8, 111u8, 110u8, 45u8, 105u8, 110u8, 102u8, 108u8, 97u8, 116u8, 101u8,
100u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 32u8, 103u8, 101u8, 116u8, 32u8,
112u8, 97u8, 105u8, 100u8, 46u8, 68u8, 70u8, 105u8, 120u8, 101u8, 100u8, 89u8, 101u8, 97u8,
114u8, 108u8, 121u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 24u8, 64u8, 0u8, 192u8, 68u8, 74u8,
84u8, 127u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 1u8, 1u8, 32u8, 84u8, 111u8,
116u8, 97u8, 108u8, 32u8, 121u8, 101u8, 97u8, 114u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8,
100u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 112u8,
97u8, 105u8, 100u8, 32u8, 100u8, 117u8, 114u8, 105u8, 110u8, 103u8, 32u8, 102u8, 105u8, 120u8,
101u8, 100u8, 32u8, 114u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 115u8, 99u8, 104u8, 101u8,
100u8, 117u8, 108u8, 101u8, 46u8, 44u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 66u8,
111u8, 110u8, 100u8, 24u8, 64u8, 64u8, 66u8, 15u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 4u8, 240u8, 32u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8,
109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 80u8, 79u8, 76u8, 89u8, 88u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 109u8, 117u8, 115u8, 116u8, 32u8, 98u8, 101u8, 32u8, 98u8,
111u8, 110u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 110u8, 101u8,
119u8, 32u8, 98u8, 111u8, 110u8, 100u8, 46u8, 1u8, 237u8, 8u8, 17u8, 32u8, 79u8, 102u8, 102u8,
101u8, 110u8, 99u8, 101u8, 115u8, 1u8, 32u8, 79u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8,
115u8, 12u8, 28u8, 82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 115u8, 0u8, 1u8, 4u8, 5u8, 36u8,
241u8, 8u8, 4u8, 0u8, 4u8, 73u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 109u8,
97u8, 114u8, 121u8, 32u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 117u8, 114u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 111u8, 108u8, 100u8, 115u8, 32u8, 97u8, 108u8, 108u8,
32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8,
100u8, 115u8, 32u8, 107u8, 101u8, 121u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 114u8, 101u8,
112u8, 111u8, 114u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8,
114u8, 115u8, 46u8, 88u8, 67u8, 111u8, 110u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8,
82u8, 101u8, 112u8, 111u8, 114u8, 116u8, 115u8, 73u8, 110u8, 100u8, 101u8, 120u8, 1u8, 1u8, 8u8,
5u8, 5u8, 245u8, 8u8, 109u8, 4u8, 4u8, 0u8, 4u8, 41u8, 1u8, 32u8, 65u8, 32u8, 118u8, 101u8, 99u8,
116u8, 111u8, 114u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 115u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 107u8,
105u8, 110u8, 100u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 104u8, 97u8, 112u8, 112u8, 101u8,
110u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8,
101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 115u8, 108u8, 111u8, 116u8, 46u8, 72u8, 82u8,
101u8, 112u8, 111u8, 114u8, 116u8, 115u8, 66u8, 121u8, 75u8, 105u8, 110u8, 100u8, 73u8, 110u8,
100u8, 101u8, 120u8, 1u8, 1u8, 4u8, 5u8, 149u8, 1u8, 40u8, 4u8, 0u8, 24u8, 17u8, 1u8, 32u8, 69u8,
110u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 101u8, 115u8, 32u8, 97u8, 108u8, 108u8, 32u8,
114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 107u8,
105u8, 110u8, 100u8, 32u8, 97u8, 108u8, 111u8, 110u8, 103u8, 32u8, 119u8, 105u8, 116u8, 104u8,
32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 116u8, 104u8, 101u8, 121u8,
32u8, 104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 101u8, 100u8, 46u8, 0u8, 188u8, 32u8, 65u8, 108u8,
108u8, 32u8, 114u8, 101u8, 112u8, 111u8, 114u8, 116u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8,
115u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
116u8, 105u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 111u8, 102u8, 102u8, 101u8, 110u8, 99u8,
101u8, 46u8, 0u8, 73u8, 1u8, 32u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 116u8, 121u8,
112u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 109u8, 97u8, 112u8,
112u8, 105u8, 110u8, 103u8, 32u8, 105u8, 115u8, 32u8, 96u8, 86u8, 101u8, 99u8, 60u8, 117u8, 56u8,
62u8, 96u8, 44u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 98u8, 101u8, 99u8,
97u8, 117u8, 115u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 115u8, 32u8, 111u8, 102u8,
105u8, 1u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8, 110u8, 116u8, 32u8, 116u8,
121u8, 112u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 110u8, 111u8, 116u8, 32u8, 115u8,
117u8, 112u8, 112u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 109u8, 111u8, 109u8, 101u8, 110u8, 116u8, 32u8, 115u8, 111u8, 32u8, 119u8, 101u8,
32u8, 97u8, 114u8, 101u8, 32u8, 100u8, 111u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8,
32u8, 109u8, 97u8, 110u8, 117u8, 97u8, 108u8, 32u8, 115u8, 101u8, 114u8, 105u8, 97u8, 108u8,
105u8, 122u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 1u8, 145u8, 1u8, 0u8, 0u8, 18u8, 28u8,
83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 1u8, 28u8, 83u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 28u8, 40u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 1u8,
0u8, 232u8, 4u8, 0u8, 4u8, 124u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8,
101u8, 110u8, 116u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 118u8, 97u8, 108u8,
105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 46u8, 48u8, 67u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 73u8, 110u8, 100u8, 101u8, 120u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8,
120u8, 32u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 105u8, 110u8, 100u8, 101u8,
120u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 46u8, 52u8, 81u8, 117u8, 101u8, 117u8, 101u8, 100u8, 67u8, 104u8, 97u8, 110u8,
103u8, 101u8, 100u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 8u8, 57u8, 1u8, 32u8, 84u8, 114u8, 117u8,
101u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8,
108u8, 121u8, 105u8, 110u8, 103u8, 32u8, 101u8, 99u8, 111u8, 110u8, 111u8, 109u8, 105u8, 99u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 111u8, 114u8,
32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 105u8, 110u8, 103u8, 32u8, 98u8, 101u8, 104u8,
105u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 115u8, 164u8, 32u8, 104u8, 97u8, 115u8, 32u8, 99u8, 104u8, 97u8, 110u8,
103u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8,
115u8, 101u8, 116u8, 46u8, 40u8, 81u8, 117u8, 101u8, 117u8, 101u8, 100u8, 75u8, 101u8, 121u8,
115u8, 1u8, 0u8, 249u8, 8u8, 4u8, 0u8, 8u8, 61u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 113u8,
117u8, 101u8, 117u8, 101u8, 100u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 46u8, 32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 98u8,
101u8, 103u8, 105u8, 110u8, 115u8, 44u8, 32u8, 116u8, 104u8, 101u8, 115u8, 101u8, 32u8, 107u8,
101u8, 121u8, 115u8, 224u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 98u8, 101u8, 32u8, 117u8,
115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8,
110u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 39u8, 115u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 107u8,
101u8, 121u8, 115u8, 46u8, 72u8, 68u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 86u8, 97u8,
108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 1u8, 0u8, 53u8, 4u8, 4u8, 0u8, 20u8,
128u8, 32u8, 73u8, 110u8, 100u8, 105u8, 99u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 100u8,
105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8,
116u8, 111u8, 114u8, 115u8, 46u8, 0u8, 61u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 118u8, 101u8,
99u8, 32u8, 105u8, 115u8, 32u8, 97u8, 108u8, 119u8, 97u8, 121u8, 115u8, 32u8, 107u8, 101u8,
112u8, 116u8, 32u8, 115u8, 111u8, 114u8, 116u8, 101u8, 100u8, 32u8, 115u8, 111u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 119u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 102u8, 105u8, 110u8,
100u8, 32u8, 119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8,
118u8, 101u8, 110u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 32u8,
105u8, 115u8, 61u8, 1u8, 32u8, 100u8, 105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 117u8,
115u8, 105u8, 110u8, 103u8, 32u8, 98u8, 105u8, 110u8, 97u8, 114u8, 121u8, 32u8, 115u8, 101u8,
97u8, 114u8, 99u8, 104u8, 46u8, 32u8, 73u8, 116u8, 32u8, 103u8, 101u8, 116u8, 115u8, 32u8, 99u8,
108u8, 101u8, 97u8, 114u8, 101u8, 100u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 96u8, 111u8,
110u8, 95u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 95u8, 101u8, 110u8, 100u8, 105u8,
110u8, 103u8, 96u8, 32u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 115u8, 100u8, 32u8, 97u8,
32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8, 105u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 46u8, 32u8, 78u8, 101u8, 120u8, 116u8,
75u8, 101u8, 121u8, 115u8, 0u8, 1u8, 4u8, 5u8, 0u8, 241u8, 6u8, 4u8, 0u8, 4u8, 156u8, 32u8, 84u8,
104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8,
110u8, 32u8, 107u8, 101u8, 121u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 46u8, 32u8, 75u8, 101u8, 121u8, 79u8,
119u8, 110u8, 101u8, 114u8, 0u8, 1u8, 4u8, 5u8, 1u8, 9u8, 0u8, 4u8, 0u8, 4u8, 9u8, 1u8, 32u8,
84u8, 104u8, 101u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 107u8, 101u8, 121u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8, 107u8, 101u8, 121u8, 32u8,
105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 75u8, 101u8, 121u8, 84u8, 121u8, 112u8,
101u8, 73u8, 100u8, 96u8, 32u8, 43u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 99u8, 111u8,
100u8, 101u8, 100u8, 32u8, 107u8, 101u8, 121u8, 46u8, 1u8, 237u8, 6u8, 1u8, 153u8, 1u8, 0u8, 1u8,
9u8, 9u8, 19u8, 72u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 68u8, 105u8,
115u8, 99u8, 111u8, 118u8, 101u8, 114u8, 121u8, 0u8, 0u8, 0u8, 0u8, 0u8, 20u8, 28u8, 71u8, 114u8,
97u8, 110u8, 100u8, 112u8, 97u8, 1u8, 28u8, 71u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 24u8,
20u8, 83u8, 116u8, 97u8, 116u8, 101u8, 1u8, 0u8, 13u8, 9u8, 4u8, 0u8, 4u8, 144u8, 32u8, 83u8,
116u8, 97u8, 116u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8,
121u8, 32u8, 115u8, 101u8, 116u8, 46u8, 52u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8,
67u8, 104u8, 97u8, 110u8, 103u8, 101u8, 0u8, 0u8, 17u8, 9u8, 4u8, 0u8, 4u8, 196u8, 32u8, 80u8,
101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 58u8,
32u8, 40u8, 115u8, 105u8, 103u8, 110u8, 97u8, 108u8, 101u8, 100u8, 32u8, 97u8, 116u8, 44u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 99u8, 104u8, 97u8, 110u8,
103u8, 101u8, 41u8, 46u8, 40u8, 78u8, 101u8, 120u8, 116u8, 70u8, 111u8, 114u8, 99u8, 101u8,
100u8, 0u8, 0u8, 16u8, 4u8, 0u8, 4u8, 188u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 119u8, 104u8, 101u8,
114u8, 101u8, 32u8, 119u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8, 102u8, 111u8, 114u8, 99u8,
101u8, 32u8, 97u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 46u8, 28u8, 83u8, 116u8, 97u8,
108u8, 108u8, 101u8, 100u8, 0u8, 0u8, 153u8, 3u8, 4u8, 0u8, 4u8, 144u8, 32u8, 96u8, 116u8, 114u8,
117u8, 101u8, 96u8, 32u8, 105u8, 102u8, 32u8, 119u8, 101u8, 32u8, 97u8, 114u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8, 115u8, 116u8, 97u8, 108u8, 108u8,
101u8, 100u8, 46u8, 48u8, 67u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 83u8, 101u8, 116u8,
73u8, 100u8, 1u8, 0u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 93u8, 1u8, 32u8,
84u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8,
99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 115u8, 32u8, 40u8, 98u8, 111u8, 116u8, 104u8, 32u8,
105u8, 110u8, 32u8, 116u8, 101u8, 114u8, 109u8, 115u8, 32u8, 111u8, 102u8, 32u8, 107u8, 101u8,
121u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 108u8, 121u8,
105u8, 110u8, 103u8, 32u8, 101u8, 99u8, 111u8, 110u8, 111u8, 109u8, 105u8, 99u8, 32u8, 114u8,
101u8, 115u8, 112u8, 111u8, 110u8, 115u8, 105u8, 98u8, 105u8, 108u8, 105u8, 116u8, 105u8, 101u8,
115u8, 41u8, 196u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 34u8, 115u8, 101u8,
116u8, 34u8, 32u8, 111u8, 102u8, 32u8, 71u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 32u8, 118u8,
97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8,
32u8, 103u8, 101u8, 110u8, 101u8, 115u8, 105u8, 115u8, 46u8, 48u8, 83u8, 101u8, 116u8, 73u8,
100u8, 83u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 0u8, 1u8, 4u8, 5u8, 32u8, 16u8, 4u8, 0u8,
16u8, 89u8, 1u8, 32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8, 32u8, 102u8,
114u8, 111u8, 109u8, 32u8, 103u8, 114u8, 97u8, 110u8, 100u8, 112u8, 97u8, 32u8, 115u8, 101u8,
116u8, 32u8, 73u8, 68u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8,
100u8, 101u8, 120u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 42u8, 109u8, 111u8,
115u8, 116u8, 32u8, 114u8, 101u8, 99u8, 101u8, 110u8, 116u8, 42u8, 32u8, 115u8, 101u8, 115u8,
115u8, 105u8, 111u8, 110u8, 32u8, 102u8, 111u8, 114u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8,
32u8, 105u8, 116u8, 115u8, 104u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8,
119u8, 101u8, 114u8, 101u8, 32u8, 114u8, 101u8, 115u8, 112u8, 111u8, 110u8, 115u8, 105u8, 98u8,
108u8, 101u8, 46u8, 0u8, 184u8, 32u8, 84u8, 87u8, 79u8, 88u8, 45u8, 78u8, 79u8, 84u8, 69u8, 58u8,
32u8, 96u8, 83u8, 101u8, 116u8, 73u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8,
32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 99u8, 111u8,
110u8, 116u8, 114u8, 111u8, 108u8, 46u8, 1u8, 249u8, 6u8, 1u8, 157u8, 1u8, 4u8, 56u8, 77u8, 97u8,
120u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8, 16u8, 16u8,
160u8, 134u8, 1u8, 0u8, 4u8, 92u8, 32u8, 77u8, 97u8, 120u8, 32u8, 65u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 117u8, 115u8, 101u8,
1u8, 25u8, 9u8, 21u8, 40u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8, 105u8, 99u8, 97u8, 108u8,
0u8, 0u8, 0u8, 0u8, 0u8, 22u8, 32u8, 73u8, 109u8, 79u8, 110u8, 108u8, 105u8, 110u8, 101u8, 1u8,
32u8, 73u8, 109u8, 79u8, 110u8, 108u8, 105u8, 110u8, 101u8, 16u8, 56u8, 72u8, 101u8, 97u8, 114u8,
116u8, 98u8, 101u8, 97u8, 116u8, 65u8, 102u8, 116u8, 101u8, 114u8, 1u8, 0u8, 16u8, 16u8, 0u8,
0u8, 0u8, 0u8, 44u8, 29u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8,
119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 105u8, 116u8, 39u8, 115u8, 32u8, 111u8, 107u8, 32u8,
116u8, 111u8, 32u8, 115u8, 101u8, 110u8, 100u8, 32u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8,
101u8, 97u8, 116u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 36u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8,
46u8, 0u8, 37u8, 1u8, 32u8, 65u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 101u8, 103u8,
105u8, 110u8, 110u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 101u8, 97u8, 99u8, 104u8,
32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 119u8, 101u8, 32u8, 115u8, 101u8,
116u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 118u8, 97u8,
108u8, 117u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8,
100u8, 32u8, 102u8, 97u8, 108u8, 108u8, 53u8, 1u8, 32u8, 114u8, 111u8, 117u8, 103u8, 104u8,
108u8, 121u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 105u8, 100u8, 100u8,
108u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 100u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8,
84u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 97u8, 32u8, 105u8, 115u8, 32u8, 116u8, 111u8,
32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 119u8, 97u8, 105u8, 116u8, 32u8, 102u8, 111u8,
114u8, 25u8, 1u8, 32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8,
111u8, 114u8, 115u8, 32u8, 116u8, 111u8, 32u8, 112u8, 114u8, 111u8, 100u8, 117u8, 99u8, 101u8,
32u8, 97u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 44u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
101u8, 168u8, 32u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 32u8, 108u8,
97u8, 116u8, 101u8, 114u8, 32u8, 111u8, 110u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 110u8,
111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 110u8, 101u8, 99u8, 101u8, 115u8, 115u8, 97u8, 114u8,
121u8, 46u8, 0u8, 57u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 98u8, 101u8,
32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 102u8, 97u8, 108u8, 108u8,
98u8, 97u8, 99u8, 107u8, 32u8, 105u8, 102u8, 32u8, 119u8, 101u8, 32u8, 102u8, 97u8, 105u8, 108u8,
32u8, 116u8, 111u8, 32u8, 103u8, 101u8, 116u8, 32u8, 97u8, 32u8, 112u8, 114u8, 111u8, 112u8,
101u8, 114u8, 32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 45u8, 1u8, 32u8, 112u8,
114u8, 111u8, 103u8, 114u8, 101u8, 115u8, 115u8, 32u8, 101u8, 115u8, 116u8, 105u8, 109u8, 97u8,
116u8, 101u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 96u8, 78u8, 101u8, 120u8, 116u8, 83u8,
101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 82u8, 111u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8,
96u8, 44u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 111u8, 115u8, 101u8, 32u8, 101u8, 115u8,
116u8, 105u8, 109u8, 97u8, 116u8, 101u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8,
32u8, 98u8, 101u8, 1u8, 1u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 97u8, 99u8, 99u8, 117u8,
114u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 119u8, 101u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8,
108u8, 97u8, 116u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 72u8, 101u8, 97u8, 114u8,
116u8, 98u8, 101u8, 97u8, 116u8, 65u8, 102u8, 116u8, 101u8, 114u8, 96u8, 46u8, 16u8, 75u8, 101u8,
121u8, 115u8, 1u8, 0u8, 29u8, 9u8, 4u8, 0u8, 4u8, 208u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8, 32u8,
107u8, 101u8, 121u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 109u8, 97u8, 121u8, 32u8,
105u8, 115u8, 115u8, 117u8, 101u8, 32u8, 97u8, 32u8, 104u8, 101u8, 97u8, 114u8, 116u8, 98u8,
101u8, 97u8, 116u8, 46u8, 72u8, 82u8, 101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 100u8, 72u8,
101u8, 97u8, 114u8, 116u8, 98u8, 101u8, 97u8, 116u8, 115u8, 0u8, 1u8, 8u8, 5u8, 5u8, 153u8, 3u8,
37u8, 9u8, 4u8, 0u8, 8u8, 61u8, 1u8, 32u8, 70u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8,
32u8, 115u8, 101u8, 115u8, 115u8, 105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
44u8, 32u8, 119u8, 101u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 97u8, 32u8, 109u8, 97u8, 112u8,
112u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 96u8, 83u8, 101u8, 115u8, 115u8, 105u8,
111u8, 110u8, 73u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 96u8, 65u8,
117u8, 116u8, 104u8, 73u8, 110u8, 100u8, 101u8, 120u8, 96u8, 32u8, 116u8, 111u8, 176u8, 32u8,
96u8, 87u8, 114u8, 97u8, 112u8, 112u8, 101u8, 114u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8,
60u8, 66u8, 111u8, 117u8, 110u8, 100u8, 101u8, 100u8, 79u8, 112u8, 97u8, 113u8, 117u8, 101u8,
78u8, 101u8, 116u8, 119u8, 111u8, 114u8, 107u8, 83u8, 116u8, 97u8, 116u8, 101u8, 62u8, 96u8,
46u8, 56u8, 65u8, 117u8, 116u8, 104u8, 111u8, 114u8, 101u8, 100u8, 66u8, 108u8, 111u8, 99u8,
107u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8, 173u8, 8u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 8u8, 21u8,
1u8, 32u8, 70u8, 111u8, 114u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 115u8, 101u8, 115u8, 115u8,
105u8, 111u8, 110u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 44u8, 32u8, 119u8, 101u8, 32u8,
107u8, 101u8, 101u8, 112u8, 32u8, 97u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8,
32u8, 111u8, 102u8, 32u8, 96u8, 86u8, 97u8, 108u8, 105u8, 100u8, 97u8, 116u8, 111u8, 114u8, 73u8,
100u8, 60u8, 84u8, 62u8, 96u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 200u8, 32u8, 110u8,
117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
115u8, 32u8, 97u8, 117u8, 116u8, 104u8, 111u8, 114u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8,
116u8, 104u8, 101u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 117u8, 116u8, 104u8,
111u8, 114u8, 105u8, 116u8, 121u8, 46u8, 1u8, 37u8, 7u8, 1u8, 177u8, 1u8, 4u8, 64u8, 85u8, 110u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 80u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8,
32u8, 32u8, 255u8, 255u8, 255u8, 255u8, 255u8, 255u8, 255u8, 255u8, 16u8, 240u8, 32u8, 65u8,
32u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 117u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8,
32u8, 102u8, 111u8, 114u8, 32u8, 98u8, 97u8, 115u8, 101u8, 32u8, 112u8, 114u8, 105u8, 111u8,
114u8, 105u8, 116u8, 121u8, 32u8, 111u8, 102u8, 32u8, 117u8, 110u8, 115u8, 105u8, 103u8, 110u8,
101u8, 100u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
115u8, 46u8, 0u8, 21u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 101u8,
120u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 115u8, 111u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 105u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 116u8, 117u8, 110u8, 101u8,
100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 117u8, 108u8,
97u8, 114u8, 32u8, 114u8, 117u8, 110u8, 116u8, 105u8, 109u8, 101u8, 44u8, 32u8, 119u8, 104u8,
101u8, 110u8, 180u8, 32u8, 109u8, 117u8, 108u8, 116u8, 105u8, 112u8, 108u8, 101u8, 32u8, 112u8,
97u8, 108u8, 108u8, 101u8, 116u8, 115u8, 32u8, 115u8, 101u8, 110u8, 100u8, 32u8, 117u8, 110u8,
115u8, 105u8, 103u8, 110u8, 101u8, 100u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 1u8, 57u8, 9u8, 23u8, 96u8, 82u8, 97u8, 110u8, 100u8,
111u8, 109u8, 110u8, 101u8, 115u8, 115u8, 67u8, 111u8, 108u8, 108u8, 101u8, 99u8, 116u8, 105u8,
118u8, 101u8, 70u8, 108u8, 105u8, 112u8, 1u8, 96u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8,
110u8, 101u8, 115u8, 115u8, 67u8, 111u8, 108u8, 108u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8,
70u8, 108u8, 105u8, 112u8, 4u8, 56u8, 82u8, 97u8, 110u8, 100u8, 111u8, 109u8, 77u8, 97u8, 116u8,
101u8, 114u8, 105u8, 97u8, 108u8, 1u8, 0u8, 61u8, 9u8, 4u8, 0u8, 12u8, 97u8, 1u8, 32u8, 83u8,
101u8, 114u8, 105u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8,
32u8, 104u8, 101u8, 97u8, 100u8, 101u8, 114u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
116u8, 104u8, 101u8, 32u8, 108u8, 97u8, 115u8, 116u8, 32u8, 56u8, 49u8, 32u8, 98u8, 108u8, 111u8,
99u8, 107u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 99u8, 116u8, 115u8, 32u8, 97u8,
115u8, 32u8, 114u8, 97u8, 110u8, 100u8, 111u8, 109u8, 32u8, 115u8, 101u8, 101u8, 100u8, 32u8,
109u8, 97u8, 116u8, 101u8, 114u8, 105u8, 97u8, 108u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8,
97u8, 1u8, 32u8, 105u8, 115u8, 32u8, 97u8, 114u8, 114u8, 97u8, 110u8, 103u8, 101u8, 100u8, 32u8,
97u8, 115u8, 32u8, 97u8, 32u8, 114u8, 105u8, 110u8, 103u8, 32u8, 98u8, 117u8, 102u8, 102u8,
101u8, 114u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 98u8, 108u8, 111u8, 99u8, 107u8,
95u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 37u8, 32u8, 56u8, 49u8, 96u8, 32u8, 98u8,
101u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
32u8, 105u8, 110u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 86u8, 101u8, 99u8, 96u8,
32u8, 111u8, 102u8, 68u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 108u8, 100u8, 101u8, 115u8,
116u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 0u8, 0u8, 0u8, 0u8, 24u8, 16u8, 83u8, 117u8, 100u8,
111u8, 1u8, 16u8, 83u8, 117u8, 100u8, 111u8, 4u8, 12u8, 75u8, 101u8, 121u8, 1u8, 0u8, 0u8, 128u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 132u8, 32u8, 84u8, 104u8,
101u8, 32u8, 96u8, 65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 117u8, 100u8, 111u8, 32u8, 107u8, 101u8, 121u8,
46u8, 1u8, 69u8, 7u8, 1u8, 213u8, 1u8, 0u8, 1u8, 65u8, 9u8, 25u8, 20u8, 65u8, 115u8, 115u8,
101u8, 116u8, 1u8, 20u8, 65u8, 115u8, 115u8, 101u8, 116u8, 124u8, 28u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 69u8, 9u8, 132u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 116u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 46u8, 124u8, 32u8, 40u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8,
101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 48u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 1u8, 0u8, 97u8, 7u8, 8u8,
0u8, 0u8, 8u8, 112u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 114u8, 101u8, 103u8,
105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 99u8, 111u8, 110u8, 102u8,
105u8, 103u8, 46u8, 148u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8,
62u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 82u8, 101u8, 103u8, 105u8, 115u8, 116u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 110u8, 102u8, 105u8, 103u8, 24u8, 84u8,
111u8, 107u8, 101u8, 110u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 73u8, 9u8, 200u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 224u8, 32u8, 68u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 115u8, 112u8, 111u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 5u8, 1u8, 32u8, 40u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 83u8, 101u8, 99u8, 117u8, 114u8, 105u8, 116u8,
121u8, 84u8, 111u8, 107u8, 101u8, 110u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8,
32u8, 91u8, 114u8, 101u8, 116u8, 117u8, 114u8, 110u8, 115u8, 32u8, 83u8, 101u8, 99u8, 117u8,
114u8, 105u8, 116u8, 121u8, 84u8, 111u8, 107u8, 101u8, 110u8, 32u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 93u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 115u8, 1u8,
1u8, 4u8, 2u8, 156u8, 249u8, 1u8, 4u8, 0u8, 8u8, 236u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8,
111u8, 107u8, 101u8, 110u8, 32u8, 99u8, 111u8, 114u8, 114u8, 101u8, 115u8, 112u8, 111u8, 110u8,
100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8,
107u8, 101u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 96u8, 32u8, 40u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 96u8, 65u8, 115u8, 115u8,
101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 96u8, 36u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
79u8, 102u8, 1u8, 1u8, 8u8, 2u8, 6u8, 77u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 180u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8,
111u8, 116u8, 97u8, 108u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 112u8, 101u8,
114u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 100u8, 32u8, 40u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 68u8, 73u8, 68u8, 41u8, 32u8, 45u8, 62u8,
32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 44u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8,
102u8, 105u8, 101u8, 114u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 233u8, 1u8, 4u8, 0u8, 4u8, 184u8,
32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 110u8, 97u8, 109u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 102u8, 105u8, 101u8,
114u8, 115u8, 46u8, 80u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 84u8, 121u8, 112u8, 101u8,
73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 0u8, 229u8, 1u8, 16u8,
0u8, 0u8, 0u8, 0u8, 12u8, 196u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8,
32u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 121u8, 112u8, 101u8, 58u8, 58u8, 67u8, 117u8,
115u8, 116u8, 111u8, 109u8, 96u8, 32u8, 73u8, 68u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8,
101u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 46u8, 0u8, 208u8, 32u8, 78u8,
117u8, 109u8, 98u8, 101u8, 114u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 32u8, 115u8, 116u8, 97u8, 114u8, 116u8,
32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 49u8, 32u8, 114u8, 97u8, 116u8, 104u8, 101u8, 114u8,
32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 48u8, 46u8, 44u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8,
84u8, 121u8, 112u8, 101u8, 115u8, 1u8, 1u8, 4u8, 5u8, 229u8, 1u8, 40u8, 4u8, 0u8, 4u8, 248u8,
32u8, 77u8, 97u8, 112u8, 115u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 97u8, 115u8,
115u8, 101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 105u8, 100u8, 115u8, 32u8, 116u8,
111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8,
101u8, 100u8, 32u8, 115u8, 116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 116u8,
101u8, 110u8, 116u8, 115u8, 46u8, 72u8, 67u8, 117u8, 115u8, 116u8, 111u8, 109u8, 84u8, 121u8,
112u8, 101u8, 115u8, 73u8, 110u8, 118u8, 101u8, 114u8, 115u8, 101u8, 1u8, 1u8, 4u8, 2u8, 40u8,
229u8, 1u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 97u8, 1u8, 32u8, 73u8, 110u8, 118u8, 101u8, 114u8,
115u8, 101u8, 32u8, 109u8, 97u8, 112u8, 32u8, 111u8, 102u8, 32u8, 96u8, 67u8, 117u8, 115u8,
116u8, 111u8, 109u8, 84u8, 121u8, 112u8, 101u8, 115u8, 96u8, 44u8, 32u8, 102u8, 114u8, 111u8,
109u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 101u8, 114u8, 101u8, 100u8, 32u8, 115u8,
116u8, 114u8, 105u8, 110u8, 103u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 110u8, 116u8, 115u8,
32u8, 116u8, 111u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 32u8, 116u8, 121u8, 112u8, 101u8, 32u8, 105u8, 100u8, 115u8, 46u8, 48u8, 70u8,
117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 1u8, 1u8, 4u8, 2u8,
156u8, 221u8, 1u8, 4u8, 0u8, 8u8, 156u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 97u8, 109u8,
101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8,
110u8, 116u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 114u8, 111u8, 117u8,
110u8, 100u8, 46u8, 96u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8, 62u8, 32u8,
102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 80u8,
73u8, 115u8, 115u8, 117u8, 101u8, 100u8, 73u8, 110u8, 70u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 1u8, 1u8, 4u8, 2u8, 81u8, 9u8, 24u8, 64u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 17u8, 1u8, 32u8, 84u8,
104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 115u8, 32u8, 111u8, 102u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 115u8, 32u8, 105u8,
115u8, 115u8, 117u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 97u8, 108u8, 108u8, 32u8, 114u8,
101u8, 99u8, 111u8, 114u8, 100u8, 101u8, 100u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 114u8, 111u8, 117u8, 110u8, 100u8, 115u8, 46u8, 140u8, 32u8, 40u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8,
114u8, 111u8, 117u8, 110u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8,
99u8, 101u8, 24u8, 70u8, 114u8, 111u8, 122u8, 101u8, 110u8, 1u8, 1u8, 4u8, 2u8, 156u8, 21u8, 1u8,
4u8, 0u8, 8u8, 232u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8, 111u8, 102u8,
32u8, 102u8, 114u8, 111u8, 122u8, 101u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 115u8,
32u8, 105u8, 109u8, 112u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 97u8,
115u8, 32u8, 97u8, 32u8, 109u8, 101u8, 109u8, 98u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8,
32u8, 109u8, 97u8, 112u8, 46u8, 60u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 45u8,
62u8, 32u8, 98u8, 111u8, 111u8, 108u8, 92u8, 65u8, 115u8, 115u8, 101u8, 116u8, 79u8, 119u8,
110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 82u8, 101u8, 108u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 1u8, 1u8, 8u8, 6u8, 2u8, 85u8, 9u8, 89u8, 9u8, 4u8, 0u8, 8u8, 136u8, 32u8, 84u8,
105u8, 99u8, 107u8, 101u8, 114u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 111u8, 107u8,
101u8, 110u8, 32u8, 111u8, 119u8, 110u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 32u8,
117u8, 115u8, 101u8, 114u8, 132u8, 32u8, 40u8, 117u8, 115u8, 101u8, 114u8, 44u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
79u8, 119u8, 110u8, 101u8, 114u8, 115u8, 104u8, 105u8, 112u8, 56u8, 65u8, 115u8, 115u8, 101u8,
116u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 1u8, 1u8, 8u8, 2u8, 5u8,
93u8, 9u8, 1u8, 2u8, 20u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 124u8, 32u8, 68u8, 111u8, 99u8, 117u8,
109u8, 101u8, 110u8, 116u8, 115u8, 32u8, 97u8, 116u8, 116u8, 97u8, 99u8, 104u8, 101u8, 100u8,
32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 116u8, 32u8, 40u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 100u8, 111u8, 99u8, 95u8, 105u8, 100u8,
41u8, 32u8, 45u8, 62u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 96u8, 65u8,
115u8, 115u8, 101u8, 116u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 115u8, 73u8,
100u8, 83u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 2u8, 156u8, 253u8,
1u8, 16u8, 0u8, 0u8, 0u8, 0u8, 8u8, 128u8, 32u8, 80u8, 101u8, 114u8, 45u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 32u8, 73u8,
68u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 46u8, 76u8, 32u8, 40u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 100u8, 111u8, 99u8, 95u8, 105u8, 100u8,
56u8, 67u8, 108u8, 97u8, 115u8, 115u8, 105u8, 99u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
115u8, 0u8, 1u8, 4u8, 2u8, 156u8, 97u8, 9u8, 4u8, 0u8, 4u8, 240u8, 32u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 114u8, 101u8, 103u8, 105u8, 115u8, 116u8, 114u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 111u8, 110u8, 32u8,
80u8, 111u8, 108u8, 121u8, 109u8, 97u8, 116u8, 104u8, 32u8, 67u8, 108u8, 97u8, 115u8, 115u8,
105u8, 99u8, 32u8, 47u8, 32u8, 69u8, 116u8, 104u8, 101u8, 114u8, 101u8, 117u8, 109u8, 46u8, 64u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 79u8, 102u8, 65u8, 116u8, 83u8, 99u8, 111u8, 112u8,
101u8, 1u8, 1u8, 8u8, 6u8, 6u8, 101u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 12u8, 204u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 115u8, 32u8, 103u8, 101u8, 116u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8,
111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 97u8, 115u8, 105u8, 115u8, 32u8, 111u8,
102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 96u8,
46u8, 157u8, 1u8, 32u8, 82u8, 105u8, 103u8, 104u8, 116u8, 32u8, 110u8, 111u8, 119u8, 32u8, 105u8,
116u8, 32u8, 105u8, 115u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 104u8, 101u8, 108u8, 112u8,
102u8, 117u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 85u8, 73u8,
32u8, 112u8, 117u8, 114u8, 112u8, 111u8, 115u8, 101u8, 115u8, 32u8, 98u8, 117u8, 116u8, 32u8,
105u8, 110u8, 32u8, 102u8, 117u8, 116u8, 117u8, 114u8, 101u8, 32u8, 105u8, 116u8, 32u8, 99u8,
97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8,
100u8, 111u8, 32u8, 109u8, 105u8, 114u8, 97u8, 99u8, 108u8, 101u8, 115u8, 32u8, 111u8, 110u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 136u8, 32u8, 40u8, 83u8, 99u8, 111u8, 112u8, 101u8,
73u8, 100u8, 44u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
41u8, 32u8, 61u8, 62u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 64u8, 65u8,
103u8, 103u8, 114u8, 101u8, 103u8, 97u8, 116u8, 101u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 1u8, 1u8, 8u8, 2u8, 6u8, 77u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 37u8, 1u8, 32u8, 83u8, 116u8, 111u8, 114u8, 101u8,
32u8, 97u8, 103u8, 103u8, 114u8, 101u8, 103u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 111u8, 115u8, 101u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 104u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 96u8,
83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 96u8, 46u8, 120u8, 32u8, 40u8, 84u8, 105u8, 99u8,
107u8, 101u8, 114u8, 44u8, 32u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 41u8, 32u8, 61u8,
62u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 46u8, 36u8, 83u8, 99u8, 111u8, 112u8,
101u8, 73u8, 100u8, 79u8, 102u8, 1u8, 1u8, 8u8, 2u8, 6u8, 77u8, 9u8, 120u8, 128u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 220u8, 32u8, 84u8, 114u8, 97u8, 99u8,
107u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8,
116u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8,
32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 132u8, 32u8, 40u8, 84u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
41u8, 32u8, 61u8, 62u8, 32u8, 83u8, 99u8, 111u8, 112u8, 101u8, 73u8, 100u8, 46u8, 100u8, 68u8,
105u8, 115u8, 97u8, 98u8, 108u8, 101u8, 73u8, 110u8, 118u8, 101u8, 115u8, 116u8, 111u8, 114u8,
85u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8,
21u8, 1u8, 4u8, 0u8, 16u8, 49u8, 1u8, 32u8, 68u8, 101u8, 99u8, 105u8, 100u8, 101u8, 115u8, 32u8,
119u8, 104u8, 101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 105u8, 110u8, 118u8, 101u8, 115u8, 116u8,
111u8, 114u8, 32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 32u8,
114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 109u8, 101u8, 110u8, 116u8, 32u8, 105u8, 115u8,
32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8,
116u8, 104u8, 105u8, 115u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 140u8, 32u8, 96u8,
102u8, 97u8, 108u8, 115u8, 101u8, 96u8, 32u8, 109u8, 101u8, 97u8, 110u8, 115u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 101u8, 110u8, 102u8, 111u8,
114u8, 99u8, 101u8, 100u8, 46u8, 0u8, 64u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
61u8, 62u8, 32u8, 98u8, 111u8, 111u8, 108u8, 46u8, 76u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8,
101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 115u8, 0u8, 1u8,
8u8, 2u8, 5u8, 105u8, 9u8, 49u8, 2u8, 4u8, 0u8, 4u8, 124u8, 32u8, 77u8, 101u8, 116u8, 97u8,
116u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 46u8, 100u8, 65u8,
115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 86u8, 97u8,
108u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 0u8, 1u8, 8u8, 2u8, 5u8,
105u8, 9u8, 57u8, 2u8, 4u8, 0u8, 4u8, 160u8, 32u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 39u8,
115u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 118u8, 97u8, 108u8, 117u8,
101u8, 115u8, 46u8, 108u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 78u8, 97u8, 109u8, 101u8, 84u8, 111u8, 75u8,
101u8, 121u8, 0u8, 1u8, 8u8, 2u8, 2u8, 109u8, 9u8, 69u8, 2u8, 4u8, 0u8, 4u8, 136u8, 32u8, 65u8,
115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 76u8,
111u8, 99u8, 97u8, 108u8, 32u8, 78u8, 97u8, 109u8, 101u8, 32u8, 45u8, 62u8, 32u8, 75u8, 101u8,
121u8, 46u8, 112u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 78u8, 97u8, 109u8, 101u8, 84u8, 111u8, 75u8,
101u8, 121u8, 0u8, 1u8, 4u8, 2u8, 65u8, 2u8, 97u8, 2u8, 4u8, 0u8, 4u8, 140u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 71u8, 108u8,
111u8, 98u8, 97u8, 108u8, 32u8, 78u8, 97u8, 109u8, 101u8, 32u8, 45u8, 62u8, 32u8, 75u8, 101u8,
121u8, 46u8, 108u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 76u8, 111u8, 99u8, 97u8, 108u8, 75u8, 101u8, 121u8, 84u8, 111u8, 78u8, 97u8, 109u8,
101u8, 0u8, 1u8, 8u8, 2u8, 5u8, 113u8, 9u8, 65u8, 2u8, 4u8, 0u8, 4u8, 136u8, 32u8, 65u8, 115u8,
115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 76u8, 111u8,
99u8, 97u8, 108u8, 32u8, 75u8, 101u8, 121u8, 32u8, 45u8, 62u8, 32u8, 78u8, 97u8, 109u8, 101u8,
46u8, 112u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 84u8, 111u8, 78u8, 97u8, 109u8,
101u8, 0u8, 1u8, 4u8, 5u8, 97u8, 2u8, 65u8, 2u8, 4u8, 0u8, 4u8, 140u8, 32u8, 65u8, 115u8, 115u8,
101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 71u8, 108u8, 111u8,
98u8, 97u8, 108u8, 32u8, 75u8, 101u8, 121u8, 32u8, 45u8, 62u8, 32u8, 78u8, 97u8, 109u8, 101u8,
46u8, 92u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8,
76u8, 111u8, 99u8, 97u8, 108u8, 83u8, 112u8, 101u8, 99u8, 115u8, 0u8, 1u8, 8u8, 2u8, 5u8, 113u8,
9u8, 73u8, 2u8, 4u8, 0u8, 4u8, 128u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8,
116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 76u8, 111u8, 99u8, 97u8, 108u8, 32u8, 75u8, 101u8,
121u8, 32u8, 115u8, 112u8, 101u8, 99u8, 115u8, 46u8, 96u8, 65u8, 115u8, 115u8, 101u8, 116u8,
77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 83u8,
112u8, 101u8, 99u8, 115u8, 0u8, 1u8, 4u8, 5u8, 97u8, 2u8, 73u8, 2u8, 4u8, 0u8, 4u8, 132u8, 32u8,
65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8,
71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 75u8, 101u8, 121u8, 32u8, 115u8, 112u8, 101u8, 99u8,
115u8, 46u8, 100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8,
116u8, 97u8, 78u8, 101u8, 120u8, 116u8, 76u8, 111u8, 99u8, 97u8, 108u8, 75u8, 101u8, 121u8, 1u8,
1u8, 4u8, 2u8, 156u8, 69u8, 2u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 124u8, 32u8,
78u8, 101u8, 120u8, 116u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8,
97u8, 100u8, 97u8, 116u8, 97u8, 32u8, 76u8, 111u8, 99u8, 97u8, 108u8, 32u8, 75u8, 101u8, 121u8,
46u8, 104u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 78u8, 101u8, 120u8, 116u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 75u8, 101u8, 121u8, 1u8,
0u8, 97u8, 2u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 128u8, 32u8, 78u8, 101u8,
120u8, 116u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8,
97u8, 116u8, 97u8, 32u8, 71u8, 108u8, 111u8, 98u8, 97u8, 108u8, 32u8, 75u8, 101u8, 121u8, 46u8,
56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 1u8, 0u8, 117u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 73u8, 7u8, 1u8, 217u8,
1u8, 20u8, 72u8, 65u8, 115u8, 115u8, 101u8, 116u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8,
76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 16u8, 16u8, 128u8, 0u8, 0u8, 0u8, 0u8, 100u8, 70u8,
117u8, 110u8, 100u8, 105u8, 110u8, 103u8, 82u8, 111u8, 117u8, 110u8, 100u8, 78u8, 97u8, 109u8,
101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 16u8, 16u8, 128u8, 0u8, 0u8,
0u8, 0u8, 104u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8,
97u8, 78u8, 97u8, 109u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 16u8,
16u8, 0u8, 1u8, 0u8, 0u8, 0u8, 108u8, 65u8, 115u8, 115u8, 101u8, 116u8, 77u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 86u8, 97u8, 108u8, 117u8, 101u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8,
103u8, 116u8, 104u8, 16u8, 16u8, 0u8, 32u8, 0u8, 0u8, 0u8, 116u8, 65u8, 115u8, 115u8, 101u8,
116u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 84u8, 121u8, 112u8, 101u8, 68u8,
101u8, 102u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 103u8, 116u8, 104u8, 16u8, 16u8, 0u8, 32u8,
0u8, 0u8, 0u8, 1u8, 121u8, 9u8, 26u8, 76u8, 67u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 68u8,
105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 1u8, 76u8, 67u8,
97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 12u8, 52u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8,
116u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 4u8, 2u8, 109u8, 2u8, 117u8, 2u8, 4u8, 0u8, 12u8,
53u8, 1u8, 32u8, 65u8, 108u8, 108u8, 32u8, 99u8, 97u8, 112u8, 105u8, 116u8, 97u8, 108u8, 32u8,
100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 111u8, 110u8, 115u8, 44u8,
32u8, 116u8, 105u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8,
32u8, 114u8, 101u8, 115u8, 112u8, 101u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 99u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
115u8, 32u8, 40u8, 67u8, 65u8, 115u8, 41u8, 46u8, 0u8, 92u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8,
41u8, 32u8, 61u8, 62u8, 32u8, 68u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8,
111u8, 110u8, 40u8, 72u8, 111u8, 108u8, 100u8, 101u8, 114u8, 80u8, 97u8, 105u8, 100u8, 1u8, 1u8,
4u8, 2u8, 125u8, 9u8, 21u8, 1u8, 4u8, 0u8, 12u8, 140u8, 32u8, 72u8, 97u8, 115u8, 32u8, 97u8,
110u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 32u8, 104u8, 111u8, 108u8, 100u8, 101u8, 114u8,
32u8, 98u8, 101u8, 101u8, 110u8, 32u8, 112u8, 97u8, 105u8, 100u8, 32u8, 121u8, 101u8, 116u8,
63u8, 0u8, 164u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8, 44u8, 32u8, 68u8, 73u8, 68u8, 41u8, 32u8,
45u8, 62u8, 32u8, 87u8, 97u8, 115u8, 32u8, 68u8, 73u8, 68u8, 32u8, 112u8, 97u8, 105u8, 100u8,
32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 67u8, 65u8, 73u8, 100u8, 63u8, 56u8, 83u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8,
0u8, 129u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 105u8, 7u8, 1u8, 101u8, 2u8, 0u8,
1u8, 133u8, 9u8, 27u8, 40u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
1u8, 40u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 44u8, 44u8, 84u8,
111u8, 116u8, 97u8, 108u8, 83u8, 117u8, 112u8, 112u8, 108u8, 121u8, 1u8, 1u8, 8u8, 2u8, 5u8,
137u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 12u8, 180u8, 32u8, 84u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 117u8, 112u8, 112u8,
108u8, 121u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 116u8, 111u8, 107u8, 101u8,
110u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8,
112u8, 111u8, 105u8, 110u8, 116u8, 46u8, 0u8, 236u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 44u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
73u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 115u8, 117u8,
112u8, 112u8, 108u8, 121u8, 32u8, 97u8, 116u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 28u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 1u8, 1u8, 8u8, 2u8, 5u8, 141u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 12u8, 136u8, 32u8, 66u8, 97u8, 108u8,
97u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8, 32u8, 97u8,
116u8, 32u8, 97u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
46u8, 0u8, 5u8, 1u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 100u8,
105u8, 100u8, 44u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
32u8, 73u8, 68u8, 41u8, 32u8, 45u8, 62u8, 32u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8, 32u8, 97u8, 116u8, 32u8, 97u8, 32u8,
99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 80u8, 67u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8,
110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 2u8, 156u8, 133u8, 2u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 16u8, 140u8, 32u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8,
115u8, 32u8, 73u8, 68u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8,
32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 46u8, 168u8, 32u8, 73u8, 68u8, 32u8,
111u8, 102u8, 32u8, 102u8, 105u8, 114u8, 115u8, 116u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8,
112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 105u8, 115u8, 32u8, 49u8, 32u8, 105u8, 110u8, 115u8,
116u8, 101u8, 97u8, 100u8, 32u8, 111u8, 102u8, 32u8, 48u8, 46u8, 0u8, 124u8, 32u8, 40u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 110u8, 111u8, 46u8, 32u8, 111u8,
102u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 56u8,
66u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 85u8, 112u8, 100u8, 97u8, 116u8, 101u8, 115u8, 1u8,
1u8, 8u8, 2u8, 5u8, 77u8, 9u8, 145u8, 9u8, 4u8, 0u8, 8u8, 188u8, 32u8, 67u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8,
97u8, 32u8, 68u8, 73u8, 68u8, 39u8, 115u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8,
32u8, 119u8, 97u8, 115u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 46u8, 240u8,
32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 100u8, 105u8, 100u8, 41u8, 32u8,
45u8, 62u8, 32u8, 91u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8,
73u8, 68u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8,
98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 99u8, 104u8, 97u8, 110u8, 103u8, 101u8, 100u8,
93u8, 40u8, 84u8, 105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 115u8, 1u8, 1u8, 8u8,
2u8, 5u8, 137u8, 9u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 24u8, 92u8, 32u8, 67u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8,
115u8, 116u8, 97u8, 109u8, 112u8, 115u8, 46u8, 0u8, 9u8, 1u8, 32u8, 69u8, 118u8, 101u8, 114u8,
121u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 45u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 97u8, 116u8, 101u8, 100u8, 32u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8,
111u8, 105u8, 110u8, 116u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 105u8, 116u8, 115u8, 32u8,
73u8, 68u8, 32u8, 116u8, 111u8, 32u8, 105u8, 116u8, 115u8, 32u8, 100u8, 117u8, 101u8, 32u8,
116u8, 105u8, 109u8, 101u8, 46u8, 33u8, 1u8, 32u8, 69u8, 118u8, 101u8, 114u8, 121u8, 32u8, 99u8,
104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 109u8, 97u8, 110u8, 117u8,
97u8, 108u8, 108u8, 121u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 109u8,
97u8, 112u8, 115u8, 32u8, 105u8, 116u8, 115u8, 32u8, 73u8, 68u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 99u8,
111u8, 114u8, 100u8, 105u8, 110u8, 103u8, 46u8, 0u8, 208u8, 32u8, 40u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 40u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8,
111u8, 105u8, 110u8, 116u8, 32u8, 73u8, 68u8, 41u8, 32u8, 45u8, 62u8, 32u8, 99u8, 104u8, 101u8,
99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 116u8,
97u8, 109u8, 112u8, 88u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 77u8,
97u8, 120u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8, 1u8, 0u8, 32u8,
32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 25u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8,
109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 99u8, 111u8, 109u8, 112u8, 108u8, 101u8,
120u8, 105u8, 116u8, 121u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 97u8, 114u8, 98u8, 105u8, 116u8, 114u8, 97u8, 114u8,
121u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 39u8, 115u8, 32u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 115u8, 101u8, 116u8, 156u8, 32u8, 40u8, 105u8, 46u8,
101u8, 46u8, 32u8, 96u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 96u8, 32u8,
115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 32u8, 98u8,
101u8, 108u8, 111u8, 119u8, 41u8, 46u8, 72u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 2u8,
156u8, 153u8, 2u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 12u8, 180u8, 32u8, 67u8, 104u8,
101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8,
117u8, 108u8, 101u8, 32u8, 73u8, 68u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8,
101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 115u8, 46u8,
0u8, 96u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 73u8, 68u8, 36u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 149u8, 9u8, 4u8, 0u8, 12u8,
136u8, 32u8, 67u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 32u8, 115u8,
99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 115u8, 46u8, 0u8, 92u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8,
101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8, 91u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 93u8, 64u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 82u8, 101u8, 102u8,
67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 1u8, 8u8, 2u8, 5u8, 153u8, 9u8, 16u8, 16u8, 0u8, 0u8, 0u8,
0u8, 32u8, 1u8, 1u8, 32u8, 72u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 34u8,
115u8, 116u8, 114u8, 111u8, 110u8, 103u8, 34u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8,
110u8, 99u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8,
32u8, 116u8, 111u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 83u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 73u8, 100u8, 96u8, 63u8, 0u8, 252u8, 32u8, 84u8, 104u8,
101u8, 32u8, 112u8, 114u8, 101u8, 115u8, 101u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8,
97u8, 32u8, 34u8, 115u8, 116u8, 114u8, 111u8, 110u8, 103u8, 34u8, 32u8, 114u8, 101u8, 102u8,
101u8, 114u8, 101u8, 110u8, 99u8, 101u8, 44u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 101u8, 110u8, 115u8, 101u8, 32u8, 111u8, 102u8, 32u8, 96u8, 82u8, 99u8, 60u8, 84u8,
62u8, 96u8, 44u8, 224u8, 32u8, 101u8, 110u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 114u8, 101u8, 102u8, 101u8, 114u8, 101u8,
110u8, 99u8, 101u8, 100u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8,
118u8, 101u8, 100u8, 46u8, 216u8, 32u8, 84u8, 104u8, 117u8, 115u8, 44u8, 32u8, 97u8, 115u8, 32u8,
108u8, 111u8, 110u8, 103u8, 32u8, 97u8, 115u8, 32u8, 96u8, 115u8, 116u8, 114u8, 111u8, 110u8,
103u8, 95u8, 114u8, 101u8, 102u8, 95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 40u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 95u8, 105u8, 100u8, 41u8, 32u8, 62u8, 32u8, 48u8, 96u8,
44u8, 172u8, 32u8, 96u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 95u8, 115u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 40u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8,
95u8, 105u8, 100u8, 41u8, 96u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 101u8, 114u8, 114u8,
111u8, 114u8, 46u8, 0u8, 168u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8,
115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 73u8, 68u8, 41u8, 32u8, 45u8, 62u8,
32u8, 115u8, 116u8, 114u8, 111u8, 110u8, 103u8, 32u8, 114u8, 101u8, 102u8, 32u8, 99u8, 111u8,
117u8, 110u8, 116u8, 56u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 80u8, 111u8,
105u8, 110u8, 116u8, 115u8, 1u8, 1u8, 8u8, 2u8, 5u8, 153u8, 9u8, 145u8, 9u8, 4u8, 0u8, 12u8,
196u8, 32u8, 65u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 104u8, 101u8, 99u8,
107u8, 112u8, 111u8, 105u8, 110u8, 116u8, 115u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8,
110u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 97u8, 116u8, 101u8, 100u8, 46u8, 0u8, 164u8, 32u8, 40u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 44u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8,
73u8, 68u8, 41u8, 32u8, 45u8, 62u8, 32u8, 91u8, 99u8, 104u8, 101u8, 99u8, 107u8, 112u8, 111u8,
105u8, 110u8, 116u8, 32u8, 73u8, 68u8, 93u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 157u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8,
83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 46u8, 1u8, 113u8, 7u8, 1u8, 125u8, 2u8, 0u8, 1u8, 161u8, 9u8, 28u8, 68u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 77u8, 97u8, 110u8, 97u8, 103u8, 101u8,
114u8, 1u8, 68u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 77u8, 97u8,
110u8, 97u8, 103u8, 101u8, 114u8, 12u8, 64u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8,
109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 165u8,
9u8, 8u8, 0u8, 0u8, 4u8, 232u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 99u8, 111u8, 109u8,
112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 40u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 45u8, 62u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8, 109u8, 112u8, 108u8,
105u8, 97u8, 110u8, 99u8, 101u8, 41u8, 72u8, 84u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8,
67u8, 108u8, 97u8, 105u8, 109u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 1u8, 1u8, 4u8, 2u8,
156u8, 185u8, 2u8, 4u8, 0u8, 4u8, 220u8, 32u8, 76u8, 105u8, 115u8, 116u8, 32u8, 111u8, 102u8,
32u8, 116u8, 114u8, 117u8, 115u8, 116u8, 101u8, 100u8, 32u8, 99u8, 108u8, 97u8, 105u8, 109u8,
32u8, 105u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
32u8, 45u8, 62u8, 32u8, 73u8, 115u8, 115u8, 117u8, 101u8, 114u8, 32u8, 73u8, 100u8, 101u8, 110u8,
116u8, 105u8, 116u8, 121u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8,
114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 169u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8,
1u8, 121u8, 7u8, 1u8, 157u8, 2u8, 4u8, 88u8, 77u8, 97u8, 120u8, 67u8, 111u8, 110u8, 100u8, 105u8,
116u8, 105u8, 111u8, 110u8, 67u8, 111u8, 109u8, 112u8, 108u8, 101u8, 120u8, 105u8, 116u8, 121u8,
16u8, 16u8, 50u8, 0u8, 0u8, 0u8, 0u8, 1u8, 173u8, 9u8, 29u8, 60u8, 67u8, 111u8, 114u8, 112u8,
111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 1u8, 60u8, 67u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8, 111u8, 110u8, 36u8,
64u8, 77u8, 97u8, 120u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 76u8, 101u8, 110u8,
103u8, 116u8, 104u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 28u8, 93u8, 1u8, 32u8, 68u8,
101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8,
109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 98u8, 121u8, 116u8, 101u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8,
32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 114u8, 101u8, 101u8, 45u8, 102u8, 111u8, 114u8, 109u8,
32u8, 96u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 67u8, 65u8, 32u8, 99u8, 97u8, 110u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 46u8, 0u8,
41u8, 1u8, 32u8, 78u8, 111u8, 116u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8,
110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 96u8, 99u8, 104u8, 97u8,
114u8, 96u8, 115u8, 32u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 91u8, 103u8, 114u8, 97u8, 112u8, 104u8, 101u8,
109u8, 101u8, 115u8, 93u8, 46u8, 65u8, 1u8, 32u8, 87u8, 104u8, 105u8, 108u8, 101u8, 32u8, 116u8,
104u8, 105u8, 115u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8, 101u8, 32u8, 117u8, 110u8, 110u8,
97u8, 116u8, 117u8, 114u8, 97u8, 108u8, 32u8, 105u8, 110u8, 32u8, 116u8, 101u8, 114u8, 109u8,
115u8, 32u8, 111u8, 102u8, 32u8, 104u8, 117u8, 109u8, 97u8, 110u8, 32u8, 117u8, 110u8, 100u8,
101u8, 114u8, 115u8, 116u8, 97u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8,
97u8, 32u8, 116u8, 101u8, 120u8, 116u8, 39u8, 115u8, 32u8, 108u8, 101u8, 110u8, 103u8, 116u8,
104u8, 44u8, 101u8, 1u8, 32u8, 105u8, 116u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 99u8, 108u8,
111u8, 115u8, 101u8, 108u8, 121u8, 32u8, 114u8, 101u8, 102u8, 108u8, 101u8, 99u8, 116u8, 115u8,
32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 99u8, 111u8, 115u8, 116u8, 115u8, 32u8, 40u8, 96u8, 39u8, 97u8, 39u8, 96u8, 32u8,
105u8, 115u8, 32u8, 99u8, 104u8, 101u8, 97u8, 112u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8,
115u8, 116u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 97u8, 110u8, 32u8,
101u8, 109u8, 111u8, 106u8, 105u8, 41u8, 46u8, 0u8, 208u8, 32u8, 91u8, 103u8, 114u8, 97u8, 112u8,
104u8, 101u8, 109u8, 101u8, 115u8, 93u8, 58u8, 32u8, 104u8, 116u8, 116u8, 112u8, 115u8, 58u8,
47u8, 47u8, 101u8, 110u8, 46u8, 119u8, 105u8, 107u8, 105u8, 112u8, 101u8, 100u8, 105u8, 97u8,
46u8, 111u8, 114u8, 103u8, 47u8, 119u8, 105u8, 107u8, 105u8, 47u8, 71u8, 114u8, 97u8, 112u8,
104u8, 101u8, 109u8, 101u8, 92u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 84u8, 97u8,
114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8,
1u8, 1u8, 4u8, 2u8, 156u8, 213u8, 2u8, 8u8, 0u8, 1u8, 16u8, 240u8, 32u8, 84u8, 104u8, 101u8,
32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 116u8, 97u8,
114u8, 103u8, 101u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 100u8, 101u8, 102u8, 97u8,
117u8, 108u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 67u8, 65u8, 115u8, 32u8, 102u8, 111u8,
114u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8,
140u8, 32u8, 101u8, 105u8, 116u8, 104u8, 101u8, 114u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8,
32u8, 101u8, 120u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 105u8,
110u8, 99u8, 108u8, 117u8, 100u8, 101u8, 100u8, 46u8, 0u8, 120u8, 32u8, 40u8, 116u8, 105u8, 99u8,
107u8, 101u8, 114u8, 32u8, 61u8, 62u8, 32u8, 116u8, 97u8, 114u8, 103u8, 101u8, 116u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 41u8, 84u8, 68u8, 101u8,
102u8, 97u8, 117u8, 108u8, 116u8, 87u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8,
110u8, 103u8, 84u8, 97u8, 120u8, 1u8, 1u8, 4u8, 2u8, 156u8, 121u8, 2u8, 16u8, 0u8, 0u8, 0u8, 0u8,
32u8, 173u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8,
32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 97u8, 120u8,
32u8, 116u8, 111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 32u8, 40u8,
34u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8,
97u8, 120u8, 34u8, 44u8, 32u8, 87u8, 84u8, 41u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 100u8, 105u8, 115u8, 116u8, 114u8, 105u8, 98u8, 117u8, 116u8, 105u8, 110u8, 103u8, 32u8,
100u8, 105u8, 118u8, 105u8, 100u8, 101u8, 110u8, 100u8, 115u8, 46u8, 0u8, 53u8, 1u8, 32u8, 84u8,
111u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 115u8, 116u8, 97u8, 110u8, 100u8, 32u8, 119u8,
105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8, 116u8, 97u8, 120u8,
44u8, 32u8, 101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 108u8, 101u8, 116u8, 39u8, 115u8, 32u8, 97u8,
115u8, 115u8, 117u8, 109u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 121u8, 111u8, 117u8,
32u8, 104u8, 111u8, 108u8, 100u8, 32u8, 65u8, 67u8, 77u8, 69u8, 32u8, 115u8, 104u8, 97u8, 114u8,
101u8, 115u8, 46u8, 196u8, 32u8, 65u8, 67u8, 77u8, 69u8, 32u8, 110u8, 111u8, 119u8, 32u8, 100u8,
101u8, 99u8, 105u8, 100u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 100u8, 105u8, 115u8, 116u8,
114u8, 105u8, 98u8, 117u8, 116u8, 101u8, 32u8, 49u8, 48u8, 48u8, 32u8, 83u8, 69u8, 75u8, 32u8,
116u8, 111u8, 32u8, 65u8, 108u8, 105u8, 99u8, 101u8, 46u8, 89u8, 1u8, 32u8, 65u8, 108u8, 105u8,
99u8, 101u8, 32u8, 108u8, 105u8, 118u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 83u8, 119u8,
101u8, 100u8, 101u8, 110u8, 44u8, 32u8, 115u8, 111u8, 32u8, 83u8, 107u8, 97u8, 116u8, 116u8,
101u8, 118u8, 101u8, 114u8, 107u8, 101u8, 116u8, 32u8, 40u8, 116u8, 104u8, 101u8, 32u8, 83u8,
119u8, 101u8, 100u8, 105u8, 115u8, 104u8, 32u8, 116u8, 97u8, 120u8, 32u8, 97u8, 117u8, 116u8,
104u8, 111u8, 114u8, 105u8, 116u8, 121u8, 41u8, 32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8,
51u8, 48u8, 37u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 97u8, 116u8, 46u8, 93u8, 1u8, 32u8,
84u8, 104u8, 101u8, 110u8, 32u8, 116u8, 104u8, 111u8, 115u8, 101u8, 32u8, 49u8, 48u8, 48u8, 32u8,
42u8, 32u8, 51u8, 48u8, 37u8, 32u8, 97u8, 114u8, 101u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8,
101u8, 108u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 65u8, 108u8, 105u8, 99u8, 101u8,
44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 65u8, 67u8, 77u8, 69u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 115u8, 101u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 109u8, 32u8, 116u8, 111u8, 32u8,
83u8, 107u8, 97u8, 116u8, 116u8, 101u8, 118u8, 101u8, 114u8, 107u8, 101u8, 116u8, 46u8, 0u8,
104u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 61u8, 62u8, 32u8, 37u8, 32u8,
116u8, 111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 41u8, 68u8, 68u8,
105u8, 100u8, 87u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 84u8,
97u8, 120u8, 1u8, 1u8, 4u8, 2u8, 156u8, 245u8, 2u8, 4u8, 0u8, 16u8, 73u8, 1u8, 32u8, 84u8, 104u8,
101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 116u8, 97u8,
120u8, 32u8, 116u8, 111u8, 32u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 32u8,
40u8, 34u8, 119u8, 105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 32u8,
116u8, 97u8, 120u8, 34u8, 44u8, 32u8, 87u8, 84u8, 41u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
32u8, 99u8, 101u8, 114u8, 116u8, 97u8, 105u8, 110u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 120u8, 32u8, 68u8, 73u8, 68u8, 46u8, 109u8, 1u8, 32u8, 73u8, 102u8, 32u8, 97u8,
110u8, 32u8, 101u8, 110u8, 116u8, 114u8, 121u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 115u8,
32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 99u8, 101u8, 114u8, 116u8, 97u8, 105u8, 110u8, 32u8,
68u8, 73u8, 68u8, 44u8, 32u8, 105u8, 116u8, 32u8, 111u8, 118u8, 101u8, 114u8, 114u8, 105u8,
100u8, 101u8, 115u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 105u8, 110u8, 32u8, 96u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 87u8,
105u8, 116u8, 104u8, 104u8, 111u8, 108u8, 100u8, 105u8, 110u8, 103u8, 84u8, 97u8, 120u8, 96u8,
46u8, 0u8, 136u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 61u8, 62u8, 32u8,
91u8, 40u8, 100u8, 105u8, 100u8, 44u8, 32u8, 37u8, 32u8, 116u8, 111u8, 32u8, 119u8, 105u8, 116u8,
104u8, 104u8, 111u8, 108u8, 100u8, 41u8, 93u8, 48u8, 67u8, 65u8, 73u8, 100u8, 83u8, 101u8, 113u8,
117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 2u8, 156u8, 113u8, 2u8, 16u8, 0u8, 0u8, 0u8,
0u8, 8u8, 180u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 112u8, 101u8,
114u8, 45u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 67u8, 65u8, 32u8, 73u8,
68u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8,
110u8, 99u8, 101u8, 46u8, 77u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 102u8, 117u8, 108u8, 108u8,
32u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8,
32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 98u8, 105u8, 110u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
97u8, 110u8, 100u8, 32u8, 97u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 105u8,
110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8,
101u8, 46u8, 64u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8,
116u8, 105u8, 111u8, 110u8, 115u8, 0u8, 1u8, 8u8, 2u8, 5u8, 177u8, 9u8, 225u8, 2u8, 4u8, 0u8,
20u8, 108u8, 32u8, 65u8, 108u8, 108u8, 32u8, 114u8, 101u8, 99u8, 111u8, 114u8, 100u8, 101u8,
100u8, 32u8, 67u8, 65u8, 115u8, 32u8, 116u8, 104u8, 117u8, 115u8, 32u8, 102u8, 97u8, 114u8, 46u8,
164u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 105u8, 99u8,
32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8,
115u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 104u8, 101u8, 114u8, 101u8, 46u8,
125u8, 1u8, 32u8, 83u8, 112u8, 101u8, 99u8, 105u8, 102u8, 105u8, 99u8, 32u8, 96u8, 67u8, 65u8,
75u8, 105u8, 110u8, 100u8, 96u8, 115u8, 44u8, 32u8, 101u8, 46u8, 103u8, 46u8, 44u8, 32u8, 98u8,
101u8, 110u8, 101u8, 102u8, 105u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 99u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8,
115u8, 44u8, 32u8, 109u8, 97u8, 121u8, 32u8, 117u8, 115u8, 101u8, 32u8, 97u8, 100u8, 100u8,
105u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8, 32u8, 111u8, 110u8, 45u8, 99u8, 104u8, 97u8,
105u8, 110u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 0u8, 180u8, 32u8, 40u8,
116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 61u8, 62u8, 32u8, 108u8, 111u8, 99u8, 97u8, 108u8,
32u8, 73u8, 68u8, 32u8, 61u8, 62u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 114u8, 112u8,
111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 41u8, 36u8, 67u8,
65u8, 68u8, 111u8, 99u8, 76u8, 105u8, 110u8, 107u8, 1u8, 1u8, 4u8, 2u8, 109u8, 2u8, 1u8, 3u8,
4u8, 0u8, 20u8, 208u8, 32u8, 65u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 67u8, 65u8, 115u8, 32u8, 116u8, 111u8,
32u8, 96u8, 68u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 96u8, 115u8, 32u8, 118u8,
105u8, 97u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 73u8, 68u8, 115u8, 46u8, 92u8, 32u8,
40u8, 67u8, 65u8, 73u8, 100u8, 32u8, 61u8, 62u8, 32u8, 91u8, 68u8, 111u8, 99u8, 117u8, 109u8,
101u8, 110u8, 116u8, 73u8, 100u8, 93u8, 41u8, 0u8, 5u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8,
96u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 65u8, 99u8, 116u8, 105u8,
111u8, 110u8, 115u8, 96u8, 32u8, 109u8, 97u8, 112u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8,
115u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 61u8, 62u8, 32u8, 76u8, 111u8,
99u8, 97u8, 108u8, 73u8, 100u8, 32u8, 61u8, 62u8, 32u8, 84u8, 104u8, 101u8, 32u8, 67u8, 65u8,
96u8, 44u8, 37u8, 1u8, 32u8, 115u8, 111u8, 32u8, 119u8, 101u8, 32u8, 99u8, 97u8, 110u8, 32u8,
105u8, 110u8, 102u8, 101u8, 114u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 32u8,
61u8, 62u8, 32u8, 67u8, 65u8, 73u8, 100u8, 96u8, 46u8, 32u8, 84u8, 104u8, 101u8, 114u8, 101u8,
102u8, 111u8, 114u8, 101u8, 44u8, 32u8, 119u8, 101u8, 32u8, 100u8, 111u8, 110u8, 39u8, 116u8,
32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 97u8, 32u8, 100u8, 111u8, 117u8, 98u8, 108u8, 101u8,
32u8, 109u8, 97u8, 112u8, 46u8, 28u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 1u8, 1u8,
4u8, 2u8, 109u8, 2u8, 253u8, 2u8, 4u8, 0u8, 8u8, 232u8, 32u8, 65u8, 115u8, 115u8, 111u8, 99u8,
105u8, 97u8, 116u8, 101u8, 115u8, 32u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8,
105u8, 110u8, 32u8, 102u8, 114u8, 101u8, 101u8, 45u8, 102u8, 111u8, 114u8, 109u8, 32u8, 116u8,
101u8, 120u8, 116u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 97u8, 32u8, 67u8, 65u8, 32u8, 98u8,
121u8, 32u8, 105u8, 116u8, 115u8, 32u8, 73u8, 68u8, 46u8, 80u8, 32u8, 40u8, 67u8, 65u8, 73u8,
100u8, 32u8, 61u8, 62u8, 32u8, 67u8, 65u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 41u8,
56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8,
110u8, 1u8, 0u8, 181u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8,
101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 125u8, 7u8, 1u8, 209u8,
2u8, 8u8, 48u8, 77u8, 97u8, 120u8, 84u8, 97u8, 114u8, 103u8, 101u8, 116u8, 73u8, 100u8, 115u8,
16u8, 16u8, 232u8, 3u8, 0u8, 0u8, 0u8, 40u8, 77u8, 97u8, 120u8, 68u8, 105u8, 100u8, 87u8, 104u8,
116u8, 115u8, 16u8, 16u8, 232u8, 3u8, 0u8, 0u8, 0u8, 1u8, 185u8, 9u8, 30u8, 60u8, 67u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 1u8,
60u8, 67u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 66u8, 97u8, 108u8, 108u8,
111u8, 116u8, 24u8, 20u8, 77u8, 101u8, 116u8, 97u8, 115u8, 0u8, 1u8, 4u8, 2u8, 109u8, 2u8, 13u8,
3u8, 4u8, 0u8, 12u8, 128u8, 32u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 32u8,
111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 111u8, 114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8,
32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 0u8, 84u8, 32u8, 40u8, 67u8, 65u8, 73u8,
100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 77u8, 101u8, 116u8,
97u8, 40u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8, 103u8, 101u8, 115u8, 0u8, 1u8, 4u8,
2u8, 109u8, 2u8, 9u8, 3u8, 4u8, 0u8, 16u8, 228u8, 32u8, 84u8, 105u8, 109u8, 101u8, 32u8, 100u8,
101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 99u8, 111u8,
114u8, 112u8, 111u8, 114u8, 97u8, 116u8, 101u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8,
32u8, 97u8, 115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8,
116u8, 104u8, 32u8, 97u8, 32u8, 67u8, 65u8, 46u8, 208u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8,
105u8, 109u8, 101u8, 115u8, 116u8, 97u8, 109u8, 112u8, 115u8, 32u8, 100u8, 101u8, 110u8, 111u8,
116u8, 101u8, 32u8, 119u8, 104u8, 101u8, 110u8, 32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8,
32u8, 115u8, 116u8, 97u8, 114u8, 116u8, 115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 115u8, 116u8,
111u8, 112u8, 115u8, 46u8, 0u8, 104u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8, 41u8, 32u8, 61u8,
62u8, 32u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 84u8, 105u8, 109u8, 101u8, 82u8, 97u8, 110u8,
103u8, 101u8, 64u8, 77u8, 111u8, 116u8, 105u8, 111u8, 110u8, 78u8, 117u8, 109u8, 67u8, 104u8,
111u8, 105u8, 99u8, 101u8, 115u8, 1u8, 1u8, 4u8, 2u8, 109u8, 2u8, 21u8, 6u8, 4u8, 0u8, 36u8,
200u8, 32u8, 83u8, 116u8, 111u8, 114u8, 101u8, 115u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8,
97u8, 110u8, 121u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 32u8, 116u8, 104u8,
101u8, 114u8, 101u8, 32u8, 97u8, 114u8, 101u8, 32u8, 105u8, 110u8, 32u8, 101u8, 97u8, 99u8,
104u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 37u8, 1u8, 32u8, 65u8, 116u8,
32u8, 97u8, 108u8, 108u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 44u8, 32u8, 116u8, 104u8,
101u8, 32u8, 105u8, 110u8, 118u8, 97u8, 114u8, 105u8, 97u8, 110u8, 116u8, 32u8, 104u8, 111u8,
108u8, 100u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 109u8, 111u8, 116u8, 105u8,
111u8, 110u8, 95u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 91u8, 105u8, 100u8, 120u8,
93u8, 96u8, 32u8, 105u8, 115u8, 32u8, 101u8, 113u8, 117u8, 97u8, 108u8, 32u8, 116u8, 111u8, 49u8,
1u8, 32u8, 96u8, 109u8, 101u8, 116u8, 97u8, 115u8, 46u8, 117u8, 110u8, 119u8, 114u8, 97u8, 112u8,
40u8, 41u8, 46u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 115u8, 91u8, 105u8, 100u8, 120u8,
93u8, 46u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 46u8, 108u8, 101u8, 110u8, 40u8, 41u8,
96u8, 46u8, 32u8, 84u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8, 44u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 105u8, 115u8, 32u8, 106u8, 117u8, 115u8, 116u8, 32u8, 97u8, 32u8, 99u8, 97u8, 99u8,
104u8, 101u8, 44u8, 17u8, 1u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8,
118u8, 111u8, 105u8, 100u8, 32u8, 102u8, 101u8, 116u8, 99u8, 104u8, 105u8, 110u8, 103u8, 32u8,
97u8, 108u8, 108u8, 32u8, 116u8, 104u8, 101u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8,
115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 97u8,
115u8, 115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 116u8, 101u8, 120u8, 116u8,
115u8, 46u8, 0u8, 1u8, 1u8, 32u8, 96u8, 117u8, 49u8, 54u8, 96u8, 32u8, 99u8, 104u8, 111u8, 105u8,
99u8, 101u8, 115u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8,
109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 101u8, 110u8, 111u8, 117u8,
103u8, 104u8, 32u8, 116u8, 111u8, 32u8, 102u8, 105u8, 116u8, 32u8, 114u8, 101u8, 97u8, 108u8,
32u8, 117u8, 115u8, 101u8, 32u8, 99u8, 97u8, 115u8, 101u8, 115u8, 46u8, 0u8, 176u8, 32u8, 40u8,
67u8, 65u8, 73u8, 100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8, 115u8, 32u8, 105u8, 110u8,
32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 109u8, 111u8, 116u8, 105u8, 111u8, 110u8, 46u8, 12u8, 82u8,
67u8, 86u8, 1u8, 1u8, 4u8, 2u8, 109u8, 2u8, 21u8, 1u8, 4u8, 0u8, 16u8, 220u8, 32u8, 73u8, 115u8,
32u8, 114u8, 97u8, 110u8, 107u8, 101u8, 100u8, 32u8, 99u8, 104u8, 111u8, 105u8, 99u8, 101u8,
32u8, 118u8, 111u8, 116u8, 105u8, 110u8, 103u8, 32u8, 40u8, 82u8, 67u8, 86u8, 41u8, 32u8, 101u8,
110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 63u8, 101u8, 1u8, 32u8, 70u8, 111u8, 114u8,
32u8, 97u8, 110u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 115u8, 116u8, 97u8, 110u8, 100u8,
105u8, 110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 104u8, 111u8, 119u8, 32u8, 82u8, 67u8, 86u8, 32u8,
105u8, 115u8, 32u8, 104u8, 97u8, 110u8, 100u8, 108u8, 101u8, 100u8, 44u8, 32u8, 115u8, 101u8,
101u8, 32u8, 110u8, 111u8, 116u8, 101u8, 32u8, 111u8, 110u8, 32u8, 96u8, 66u8, 97u8, 108u8,
108u8, 111u8, 116u8, 86u8, 111u8, 116u8, 101u8, 96u8, 39u8, 115u8, 32u8, 96u8, 102u8, 97u8,
108u8, 108u8, 98u8, 97u8, 99u8, 107u8, 96u8, 32u8, 102u8, 105u8, 101u8, 108u8, 100u8, 46u8, 0u8,
60u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 98u8, 111u8, 111u8,
108u8, 28u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 1u8, 1u8, 4u8, 2u8, 109u8, 2u8,
189u8, 9u8, 4u8, 0u8, 28u8, 176u8, 32u8, 83u8, 116u8, 111u8, 114u8, 101u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 116u8, 111u8, 116u8, 97u8, 108u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8,
116u8, 97u8, 108u8, 108u8, 121u8, 32u8, 111u8, 110u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 99u8,
104u8, 111u8, 105u8, 99u8, 101u8, 46u8, 0u8, 104u8, 32u8, 82u8, 67u8, 86u8, 32u8, 105u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 100u8,
32u8, 102u8, 111u8, 114u8, 44u8, 208u8, 32u8, 97u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8,
101u8, 32u8, 97u8, 114u8, 101u8, 32u8, 116u8, 111u8, 111u8, 32u8, 109u8, 97u8, 110u8, 121u8,
32u8, 119u8, 97u8, 110u8, 116u8, 115u8, 32u8, 116u8, 111u8, 32u8, 105u8, 110u8, 116u8, 101u8,
114u8, 112u8, 114u8, 101u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 103u8, 114u8, 97u8, 112u8,
104u8, 44u8, 156u8, 32u8, 97u8, 110u8, 100u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8,
32u8, 105u8, 116u8, 32u8, 119u8, 111u8, 117u8, 108u8, 100u8, 32u8, 110u8, 111u8, 116u8, 32u8,
98u8, 101u8, 32u8, 101u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8, 116u8, 46u8, 0u8,
132u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 91u8, 99u8, 117u8,
114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 115u8, 93u8, 20u8, 86u8, 111u8, 116u8, 101u8, 115u8, 1u8, 1u8, 8u8, 2u8,
6u8, 125u8, 9u8, 45u8, 3u8, 4u8, 0u8, 24u8, 172u8, 32u8, 83u8, 116u8, 111u8, 114u8, 101u8, 115u8,
32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 68u8, 73u8, 68u8, 39u8, 115u8, 32u8, 118u8, 111u8, 116u8,
101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
98u8, 97u8, 108u8, 108u8, 111u8, 116u8, 46u8, 248u8, 32u8, 83u8, 101u8, 101u8, 32u8, 116u8,
104u8, 101u8, 32u8, 100u8, 111u8, 99u8, 117u8, 109u8, 101u8, 110u8, 116u8, 97u8, 116u8, 105u8,
111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 96u8, 66u8, 97u8, 108u8, 108u8, 111u8, 116u8, 86u8,
111u8, 116u8, 101u8, 96u8, 32u8, 102u8, 111u8, 114u8, 32u8, 110u8, 111u8, 116u8, 101u8, 115u8,
32u8, 111u8, 110u8, 32u8, 115u8, 101u8, 109u8, 97u8, 110u8, 116u8, 105u8, 99u8, 115u8, 46u8, 0u8,
132u8, 32u8, 40u8, 67u8, 65u8, 73u8, 100u8, 41u8, 32u8, 61u8, 62u8, 32u8, 40u8, 68u8, 73u8, 68u8,
41u8, 32u8, 61u8, 62u8, 32u8, 91u8, 118u8, 111u8, 116u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8,
104u8, 116u8, 93u8, 0u8, 29u8, 1u8, 32u8, 85u8, 115u8, 101u8, 114u8, 32u8, 109u8, 117u8, 115u8,
116u8, 32u8, 101u8, 110u8, 116u8, 101u8, 114u8, 32u8, 48u8, 32u8, 118u8, 111u8, 116u8, 101u8,
32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
121u8, 32u8, 100u8, 111u8, 110u8, 39u8, 116u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8,
111u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 99u8,
104u8, 111u8, 105u8, 99u8, 101u8, 46u8, 1u8, 149u8, 7u8, 1u8, 5u8, 3u8, 0u8, 1u8, 193u8, 9u8,
31u8, 44u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8, 0u8,
0u8, 0u8, 1u8, 197u8, 9u8, 32u8, 16u8, 80u8, 105u8, 112u8, 115u8, 1u8, 16u8, 80u8, 105u8, 112u8,
115u8, 84u8, 76u8, 80u8, 114u8, 117u8, 110u8, 101u8, 72u8, 105u8, 115u8, 116u8, 111u8, 114u8,
105u8, 99u8, 97u8, 108u8, 80u8, 105u8, 112u8, 115u8, 1u8, 0u8, 21u8, 1u8, 4u8, 0u8, 4u8, 252u8,
32u8, 68u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8, 115u8, 32u8, 119u8, 104u8,
101u8, 116u8, 104u8, 101u8, 114u8, 32u8, 104u8, 105u8, 115u8, 116u8, 111u8, 114u8, 105u8, 99u8,
97u8, 108u8, 32u8, 80u8, 73u8, 80u8, 32u8, 100u8, 97u8, 116u8, 97u8, 32u8, 105u8, 115u8, 32u8,
112u8, 101u8, 114u8, 115u8, 105u8, 115u8, 116u8, 101u8, 100u8, 32u8, 111u8, 114u8, 32u8, 114u8,
101u8, 109u8, 111u8, 118u8, 101u8, 100u8, 88u8, 77u8, 105u8, 110u8, 105u8, 109u8, 117u8, 109u8,
80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 1u8, 0u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 4u8, 29u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 105u8, 110u8, 105u8, 109u8,
117u8, 109u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 116u8, 111u8, 32u8, 98u8,
101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 100u8, 101u8,
112u8, 111u8, 115u8, 105u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 99u8, 111u8, 109u8, 109u8,
117u8, 110u8, 105u8, 116u8, 121u8, 32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8,
105u8, 111u8, 110u8, 46u8, 88u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8, 116u8, 69u8, 110u8,
97u8, 99u8, 116u8, 109u8, 101u8, 110u8, 116u8, 80u8, 101u8, 114u8, 105u8, 111u8, 100u8, 1u8, 0u8,
16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 57u8, 1u8, 32u8, 68u8, 101u8, 102u8, 97u8, 117u8, 108u8,
116u8, 32u8, 101u8, 110u8, 97u8, 99u8, 116u8, 109u8, 101u8, 110u8, 116u8, 32u8, 112u8, 101u8,
114u8, 105u8, 111u8, 100u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 105u8, 108u8, 108u8,
32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 32u8, 97u8, 102u8, 116u8, 101u8, 114u8, 32u8, 97u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 115u8, 32u8, 97u8,
99u8, 99u8, 101u8, 112u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 71u8, 67u8, 46u8, 64u8,
80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 80u8, 105u8, 112u8, 69u8, 120u8, 112u8, 105u8,
114u8, 121u8, 1u8, 0u8, 53u8, 1u8, 4u8, 1u8, 8u8, 244u8, 32u8, 72u8, 111u8, 119u8, 32u8, 109u8,
97u8, 110u8, 121u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 115u8, 32u8, 119u8, 105u8, 108u8,
108u8, 32u8, 105u8, 116u8, 32u8, 116u8, 97u8, 107u8, 101u8, 44u8, 32u8, 97u8, 102u8, 116u8,
101u8, 114u8, 32u8, 97u8, 32u8, 96u8, 80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 96u8, 32u8,
80u8, 73u8, 80u8, 32u8, 101u8, 120u8, 112u8, 105u8, 114u8, 101u8, 115u8, 44u8, 244u8, 32u8, 97u8,
115u8, 115u8, 117u8, 109u8, 105u8, 110u8, 103u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8,
32u8, 110u8, 111u8, 116u8, 32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 105u8, 116u8, 105u8, 111u8,
110u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 110u8, 111u8, 116u8, 104u8, 101u8, 114u8,
32u8, 96u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 83u8, 116u8, 97u8, 116u8,
101u8, 96u8, 63u8, 60u8, 77u8, 97u8, 120u8, 80u8, 105u8, 112u8, 83u8, 107u8, 105u8, 112u8, 67u8,
111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 8u8, 4u8, 0u8, 4u8, 137u8, 1u8, 32u8, 77u8, 97u8, 120u8,
105u8, 109u8, 117u8, 109u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 32u8, 97u8, 32u8, 80u8,
73u8, 80u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8,
101u8, 100u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 116u8, 114u8, 105u8, 103u8,
103u8, 101u8, 114u8, 105u8, 110u8, 103u8, 32u8, 96u8, 67u8, 97u8, 110u8, 110u8, 111u8, 116u8,
83u8, 107u8, 105u8, 112u8, 80u8, 105u8, 112u8, 96u8, 32u8, 105u8, 110u8, 32u8, 96u8, 101u8,
110u8, 97u8, 99u8, 116u8, 95u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 95u8,
114u8, 101u8, 115u8, 117u8, 108u8, 116u8, 115u8, 96u8, 46u8, 56u8, 65u8, 99u8, 116u8, 105u8,
118u8, 101u8, 80u8, 105u8, 112u8, 76u8, 105u8, 109u8, 105u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8,
0u8, 0u8, 0u8, 8u8, 196u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8,
117u8, 109u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 110u8, 117u8, 109u8,
98u8, 101u8, 114u8, 32u8, 102u8, 111u8, 114u8, 32u8, 96u8, 65u8, 99u8, 116u8, 105u8, 118u8,
101u8, 80u8, 105u8, 112u8, 67u8, 111u8, 117u8, 110u8, 116u8, 96u8, 46u8, 1u8, 1u8, 32u8, 79u8,
110u8, 99u8, 101u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 44u8, 32u8, 110u8,
101u8, 119u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8,
98u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 99u8, 111u8, 109u8, 109u8, 117u8, 110u8, 105u8, 116u8, 121u8, 32u8, 109u8, 101u8, 109u8,
98u8, 101u8, 114u8, 115u8, 46u8, 52u8, 80u8, 105u8, 112u8, 73u8, 100u8, 83u8, 101u8, 113u8,
117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 0u8, 73u8, 3u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 9u8, 1u8,
32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 32u8, 115u8, 111u8, 32u8,
102u8, 97u8, 114u8, 46u8, 32u8, 105u8, 100u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8,
117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 116u8,
114u8, 97u8, 99u8, 107u8, 32u8, 111u8, 102u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 111u8, 102u8,
102u8, 45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 72u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 73u8, 100u8, 83u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 0u8, 93u8,
3u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 29u8, 1u8, 32u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8,
111u8, 116u8, 115u8, 32u8, 115u8, 111u8, 32u8, 102u8, 97u8, 114u8, 46u8, 32u8, 105u8, 100u8,
32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 116u8, 111u8,
32u8, 107u8, 101u8, 101u8, 112u8, 32u8, 116u8, 114u8, 97u8, 99u8, 107u8, 32u8, 111u8, 102u8,
32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 115u8, 32u8, 111u8, 102u8, 102u8,
45u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 56u8, 65u8, 99u8, 116u8, 105u8, 118u8, 101u8, 80u8,
105u8, 112u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 0u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8,
200u8, 32u8, 84u8, 111u8, 116u8, 97u8, 108u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8,
111u8, 102u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 112u8, 101u8, 110u8,
100u8, 105u8, 110u8, 103u8, 32u8, 111u8, 114u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 100u8, 32u8, 80u8, 73u8, 80u8, 115u8, 46u8, 64u8, 80u8, 114u8, 111u8, 112u8, 111u8,
115u8, 97u8, 108u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 0u8, 1u8, 4u8, 5u8, 73u8,
3u8, 201u8, 9u8, 4u8, 0u8, 4u8, 152u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8,
105u8, 118u8, 101u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 46u8,
32u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8, 205u8, 9u8,
209u8, 9u8, 192u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 132u8, 32u8, 84u8,
104u8, 111u8, 115u8, 101u8, 32u8, 119u8, 104u8, 111u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8,
108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 97u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8,
105u8, 116u8, 46u8, 140u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8,
40u8, 105u8, 100u8, 44u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 41u8,
32u8, 45u8, 62u8, 32u8, 100u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8, 36u8, 80u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 0u8, 1u8, 4u8, 5u8, 73u8, 3u8, 213u8, 9u8, 4u8,
0u8, 8u8, 196u8, 32u8, 65u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 112u8, 114u8, 111u8, 112u8,
111u8, 115u8, 97u8, 108u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8,
101u8, 110u8, 32u8, 105u8, 100u8, 44u8, 32u8, 105u8, 102u8, 32u8, 105u8, 116u8, 39u8, 115u8,
32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 46u8, 96u8, 32u8, 112u8, 114u8, 111u8,
112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 32u8, 45u8, 62u8, 32u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 56u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8,
108u8, 82u8, 101u8, 115u8, 117u8, 108u8, 116u8, 1u8, 1u8, 4u8, 5u8, 73u8, 3u8, 217u8, 9u8, 160u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 8u8, 212u8, 32u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8, 104u8, 86u8, 111u8,
116u8, 101u8, 115u8, 32u8, 111u8, 110u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8,
32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 44u8, 32u8, 105u8, 102u8, 32u8,
105u8, 116u8, 32u8, 105u8, 115u8, 32u8, 111u8, 110u8, 103u8, 111u8, 105u8, 110u8, 103u8, 46u8,
104u8, 32u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 32u8, 105u8, 100u8, 32u8,
45u8, 62u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 99u8, 111u8, 117u8, 110u8, 116u8, 52u8, 80u8,
114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 86u8, 111u8, 116u8, 101u8, 115u8, 0u8, 1u8, 8u8,
5u8, 5u8, 205u8, 9u8, 221u8, 9u8, 4u8, 0u8, 8u8, 5u8, 1u8, 32u8, 86u8, 111u8, 116u8, 101u8,
115u8, 32u8, 112u8, 101u8, 114u8, 32u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 46u8, 32u8, 85u8,
115u8, 101u8, 100u8, 32u8, 116u8, 111u8, 32u8, 97u8, 118u8, 111u8, 105u8, 100u8, 32u8, 100u8,
111u8, 117u8, 98u8, 108u8, 101u8, 32u8, 118u8, 111u8, 116u8, 101u8, 32u8, 105u8, 115u8, 115u8,
117u8, 101u8, 46u8, 124u8, 32u8, 40u8, 112u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8,
32u8, 105u8, 100u8, 44u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 41u8, 32u8, 45u8,
62u8, 32u8, 86u8, 111u8, 116u8, 101u8, 52u8, 80u8, 105u8, 112u8, 84u8, 111u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 0u8, 1u8, 4u8, 5u8, 73u8, 3u8, 16u8, 4u8, 0u8, 4u8, 252u8,
32u8, 77u8, 97u8, 112u8, 115u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8,
104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 97u8, 116u8, 32u8, 119u8, 104u8,
105u8, 99u8, 104u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8,
98u8, 101u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 44u8, 32u8, 105u8,
102u8, 32u8, 97u8, 110u8, 121u8, 46u8, 36u8, 76u8, 105u8, 118u8, 101u8, 81u8, 117u8, 101u8,
117u8, 101u8, 1u8, 0u8, 97u8, 3u8, 4u8, 0u8, 24u8, 204u8, 32u8, 65u8, 32u8, 108u8, 105u8, 118u8,
101u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 32u8, 40u8, 108u8, 111u8, 119u8, 101u8, 115u8, 116u8, 32u8, 112u8, 114u8, 105u8,
111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 97u8, 116u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
32u8, 48u8, 41u8, 160u8, 32u8, 111u8, 102u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8,
103u8, 32u8, 80u8, 73u8, 80u8, 115u8, 32u8, 117u8, 112u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
46u8, 244u8, 32u8, 80u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 105u8, 115u8,
32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8,
101u8, 32u8, 96u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 96u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 116u8,
101u8, 100u8, 80u8, 105u8, 112u8, 96u8, 46u8, 0u8, 69u8, 1u8, 32u8, 85u8, 110u8, 108u8, 105u8,
107u8, 101u8, 32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8,
101u8, 117u8, 101u8, 96u8, 44u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 32u8, 105u8, 115u8, 32u8, 108u8, 105u8, 118u8, 101u8, 44u8, 32u8, 103u8, 101u8,
116u8, 116u8, 105u8, 110u8, 103u8, 32u8, 117u8, 112u8, 100u8, 97u8, 116u8, 101u8, 100u8, 32u8,
119u8, 105u8, 116u8, 104u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 118u8, 111u8, 116u8, 101u8,
32u8, 99u8, 97u8, 115u8, 116u8, 46u8, 45u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 110u8,
97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 32u8, 105u8, 115u8, 32u8, 116u8, 104u8, 101u8, 114u8,
101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 101u8, 115u8, 115u8, 101u8, 110u8, 116u8, 105u8, 97u8,
108u8, 108u8, 121u8, 32u8, 97u8, 32u8, 112u8, 111u8, 105u8, 110u8, 116u8, 45u8, 105u8, 110u8,
45u8, 116u8, 105u8, 109u8, 101u8, 32u8, 99u8, 108u8, 111u8, 110u8, 101u8, 32u8, 111u8, 102u8,
32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 46u8, 52u8, 83u8,
110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 81u8, 117u8, 101u8, 117u8, 101u8, 1u8, 0u8, 97u8,
3u8, 4u8, 0u8, 20u8, 89u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 112u8, 114u8, 105u8, 111u8,
114u8, 105u8, 116u8, 121u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 40u8, 108u8, 111u8,
119u8, 101u8, 115u8, 116u8, 32u8, 112u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8, 121u8, 32u8,
97u8, 116u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 48u8, 41u8, 32u8, 111u8, 102u8, 32u8,
80u8, 73u8, 80u8, 115u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 105u8,
110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 115u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8,
116u8, 105u8, 110u8, 103u8, 46u8, 244u8, 32u8, 80u8, 114u8, 105u8, 111u8, 114u8, 105u8, 116u8,
121u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8, 100u8, 32u8, 98u8,
121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 96u8,
32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 83u8, 110u8, 97u8, 112u8, 115u8,
104u8, 111u8, 116u8, 116u8, 101u8, 100u8, 80u8, 105u8, 112u8, 96u8, 46u8, 0u8, 9u8, 1u8, 32u8,
65u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 100u8, 32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 97u8,
110u8, 32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 46u8, 32u8,
68u8, 111u8, 105u8, 110u8, 103u8, 32u8, 115u8, 111u8, 32u8, 98u8, 117u8, 109u8, 112u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 96u8, 112u8, 105u8, 112u8, 95u8, 115u8, 107u8, 105u8, 112u8,
95u8, 99u8, 111u8, 117u8, 110u8, 116u8, 96u8, 46u8, 53u8, 1u8, 32u8, 79u8, 110u8, 99u8, 101u8,
32u8, 97u8, 32u8, 40u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8, 117u8, 114u8, 97u8, 98u8, 108u8,
101u8, 41u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8, 104u8, 111u8, 108u8, 100u8, 32u8,
105u8, 115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8, 101u8, 100u8, 44u8, 32u8, 97u8,
32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8,
115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 97u8, 103u8, 97u8, 105u8, 110u8, 46u8,
48u8, 83u8, 110u8, 97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 77u8, 101u8, 116u8, 97u8, 0u8, 0u8,
225u8, 9u8, 4u8, 0u8, 4u8, 188u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 101u8, 116u8, 97u8,
100u8, 97u8, 116u8, 97u8, 32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 110u8,
97u8, 112u8, 115u8, 104u8, 111u8, 116u8, 44u8, 32u8, 105u8, 102u8, 32u8, 116u8, 104u8, 101u8,
114u8, 101u8, 32u8, 105u8, 115u8, 32u8, 111u8, 110u8, 101u8, 46u8, 48u8, 80u8, 105u8, 112u8,
83u8, 107u8, 105u8, 112u8, 67u8, 111u8, 117u8, 110u8, 116u8, 1u8, 1u8, 4u8, 5u8, 73u8, 3u8, 8u8,
4u8, 0u8, 8u8, 208u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 116u8, 105u8, 109u8, 101u8, 115u8, 32u8, 97u8, 32u8, 99u8, 101u8,
114u8, 116u8, 97u8, 105u8, 110u8, 32u8, 80u8, 73u8, 80u8, 32u8, 104u8, 97u8, 115u8, 32u8, 98u8,
101u8, 101u8, 110u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 46u8, 53u8, 1u8,
32u8, 79u8, 110u8, 99u8, 101u8, 32u8, 97u8, 32u8, 40u8, 99u8, 111u8, 110u8, 102u8, 105u8, 103u8,
117u8, 114u8, 97u8, 98u8, 108u8, 101u8, 41u8, 32u8, 116u8, 104u8, 114u8, 101u8, 115u8, 104u8,
104u8, 111u8, 108u8, 100u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 99u8, 101u8, 101u8, 100u8,
101u8, 100u8, 44u8, 32u8, 97u8, 32u8, 80u8, 73u8, 80u8, 32u8, 99u8, 97u8, 110u8, 110u8, 111u8,
116u8, 32u8, 98u8, 101u8, 32u8, 115u8, 107u8, 105u8, 112u8, 112u8, 101u8, 100u8, 32u8, 97u8,
103u8, 97u8, 105u8, 110u8, 46u8, 52u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8,
101u8, 80u8, 105u8, 112u8, 115u8, 1u8, 0u8, 121u8, 3u8, 4u8, 0u8, 8u8, 212u8, 32u8, 65u8, 108u8,
108u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 80u8, 73u8, 80u8,
115u8, 32u8, 119u8, 104u8, 101u8, 114u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 112u8, 114u8,
111u8, 112u8, 111u8, 115u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 99u8, 111u8,
109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 46u8, 57u8, 1u8, 32u8, 84u8, 104u8, 105u8,
115u8, 32u8, 108u8, 105u8, 115u8, 116u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 99u8, 97u8, 99u8,
104u8, 101u8, 32u8, 111u8, 102u8, 32u8, 97u8, 108u8, 108u8, 32u8, 105u8, 100u8, 115u8, 32u8,
105u8, 110u8, 32u8, 96u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 97u8, 108u8, 115u8, 96u8,
32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 96u8, 80u8, 114u8, 111u8, 112u8, 111u8, 115u8, 101u8,
114u8, 58u8, 58u8, 67u8, 111u8, 109u8, 109u8, 105u8, 116u8, 116u8, 101u8, 101u8, 40u8, 95u8,
41u8, 96u8, 46u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8,
105u8, 111u8, 110u8, 1u8, 0u8, 229u8, 9u8, 4u8, 0u8, 0u8, 1u8, 153u8, 7u8, 1u8, 61u8, 3u8, 0u8,
1u8, 233u8, 9u8, 33u8, 36u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 1u8,
36u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 36u8, 76u8, 78u8, 101u8,
120u8, 116u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 78u8, 117u8, 109u8,
98u8, 101u8, 114u8, 1u8, 1u8, 4u8, 6u8, 120u8, 220u8, 32u8, 1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 4u8, 204u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8,
99u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8,
110u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 40u8, 80u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 1u8, 1u8, 8u8, 6u8, 5u8, 237u8, 9u8,
129u8, 3u8, 4u8, 0u8, 12u8, 65u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 115u8, 101u8, 116u8, 32u8,
111u8, 102u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 112u8, 111u8,
114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
116u8, 104u8, 101u8, 105u8, 114u8, 32u8, 110u8, 97u8, 109u8, 101u8, 115u8, 46u8, 32u8, 73u8,
102u8, 32u8, 97u8, 32u8, 99u8, 101u8, 114u8, 116u8, 97u8, 105u8, 110u8, 32u8, 112u8, 97u8, 105u8,
114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 68u8, 73u8, 68u8, 32u8, 97u8, 110u8, 100u8, 89u8,
1u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 110u8, 117u8,
109u8, 98u8, 101u8, 114u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8, 116u8, 111u8, 32u8, 96u8, 78u8,
111u8, 110u8, 101u8, 96u8, 32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 115u8, 117u8, 99u8, 104u8,
32u8, 97u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 100u8,
111u8, 101u8, 115u8, 110u8, 39u8, 116u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 46u8, 32u8,
67u8, 111u8, 110u8, 118u8, 101u8, 114u8, 115u8, 101u8, 108u8, 121u8, 44u8, 32u8, 105u8, 102u8,
32u8, 97u8, 53u8, 1u8, 32u8, 112u8, 97u8, 105u8, 114u8, 32u8, 109u8, 97u8, 112u8, 115u8, 32u8,
116u8, 111u8, 32u8, 96u8, 83u8, 111u8, 109u8, 101u8, 40u8, 110u8, 97u8, 109u8, 101u8, 41u8, 96u8,
32u8, 116u8, 104u8, 101u8, 110u8, 32u8, 115u8, 117u8, 99u8, 104u8, 32u8, 97u8, 32u8, 112u8,
111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8,
115u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8,
100u8, 32u8, 96u8, 110u8, 97u8, 109u8, 101u8, 96u8, 46u8, 48u8, 78u8, 97u8, 109u8, 101u8, 84u8,
111u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 1u8, 1u8, 8u8, 6u8, 2u8, 241u8, 9u8, 220u8, 32u8,
1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 228u8, 32u8, 73u8, 110u8, 118u8, 101u8, 114u8,
115u8, 101u8, 32u8, 109u8, 97u8, 112u8, 32u8, 111u8, 102u8, 32u8, 96u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8,
116u8, 111u8, 32u8, 101u8, 110u8, 115u8, 117u8, 114u8, 101u8, 32u8, 98u8, 105u8, 106u8, 101u8,
99u8, 116u8, 105u8, 118u8, 105u8, 116u8, 105u8, 121u8, 44u8, 164u8, 32u8, 97u8, 110u8, 100u8,
32u8, 117u8, 110u8, 105u8, 113u8, 117u8, 101u8, 110u8, 101u8, 115u8, 115u8, 32u8, 111u8, 102u8,
32u8, 110u8, 97u8, 109u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 96u8, 80u8, 111u8, 114u8,
116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 96u8, 46u8, 76u8, 80u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 65u8, 115u8, 115u8, 101u8, 116u8, 67u8, 111u8, 117u8, 110u8,
116u8, 1u8, 1u8, 4u8, 5u8, 212u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 252u8,
32u8, 72u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 32u8, 97u8, 115u8, 115u8, 101u8,
116u8, 115u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8, 110u8, 111u8, 110u8, 45u8, 122u8, 101u8,
114u8, 111u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 116u8, 104u8, 105u8,
115u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 99u8, 111u8,
110u8, 116u8, 97u8, 105u8, 110u8, 115u8, 46u8, 88u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8,
108u8, 105u8, 111u8, 65u8, 115u8, 115u8, 101u8, 116u8, 66u8, 97u8, 108u8, 97u8, 110u8, 99u8,
101u8, 115u8, 1u8, 1u8, 8u8, 5u8, 2u8, 245u8, 9u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 136u8, 32u8, 84u8, 104u8, 101u8, 32u8, 97u8,
115u8, 115u8, 101u8, 116u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 115u8, 32u8,
111u8, 102u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 46u8,
84u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 76u8, 111u8, 99u8, 107u8,
101u8, 100u8, 65u8, 115u8, 115u8, 101u8, 116u8, 115u8, 1u8, 1u8, 8u8, 5u8, 2u8, 245u8, 9u8, 24u8,
64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 160u8,
32u8, 65u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 97u8, 115u8, 115u8,
101u8, 116u8, 115u8, 32u8, 108u8, 111u8, 99u8, 107u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
97u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8, 45u8, 1u8, 32u8,
84u8, 104u8, 101u8, 115u8, 101u8, 32u8, 97u8, 115u8, 115u8, 101u8, 116u8, 115u8, 32u8, 115u8,
104u8, 111u8, 119u8, 32u8, 117u8, 112u8, 32u8, 105u8, 110u8, 32u8, 112u8, 111u8, 114u8, 116u8,
102u8, 111u8, 108u8, 105u8, 111u8, 32u8, 98u8, 97u8, 108u8, 97u8, 110u8, 99u8, 101u8, 32u8, 98u8,
117u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 110u8, 111u8, 116u8, 32u8, 98u8, 101u8, 32u8, 116u8,
114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 114u8, 101u8, 100u8, 32u8, 97u8, 119u8, 97u8,
121u8, 46u8, 72u8, 80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 67u8, 117u8,
115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 0u8, 1u8, 4u8, 5u8, 212u8, 120u8, 4u8, 0u8, 4u8,
129u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8,
110u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 117u8,
108u8, 97u8, 114u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 46u8,
32u8, 78u8, 111u8, 110u8, 101u8, 32u8, 105u8, 109u8, 112u8, 108u8, 105u8, 101u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 105u8, 100u8, 101u8, 110u8, 116u8,
105u8, 116u8, 121u8, 32u8, 111u8, 119u8, 110u8, 101u8, 114u8, 32u8, 105u8, 115u8, 32u8, 116u8,
104u8, 101u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 105u8, 97u8, 110u8, 46u8, 76u8,
80u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8, 73u8, 110u8, 67u8, 117u8,
115u8, 116u8, 111u8, 100u8, 121u8, 1u8, 1u8, 8u8, 6u8, 5u8, 249u8, 9u8, 21u8, 1u8, 4u8, 0u8,
12u8, 85u8, 1u8, 32u8, 84u8, 114u8, 97u8, 99u8, 107u8, 115u8, 32u8, 97u8, 108u8, 108u8, 32u8,
116u8, 104u8, 101u8, 32u8, 112u8, 111u8, 114u8, 116u8, 102u8, 111u8, 108u8, 105u8, 111u8, 115u8,
32u8, 105u8, 110u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 121u8, 32u8, 111u8, 102u8,
32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8, 99u8, 117u8, 108u8, 97u8, 114u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8,
117u8, 115u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 85u8, 73u8,
115u8, 46u8, 165u8, 1u8, 32u8, 87u8, 104u8, 101u8, 110u8, 32u8, 96u8, 116u8, 114u8, 117u8, 101u8,
96u8, 32u8, 105u8, 115u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 97u8, 115u8,
32u8, 116u8, 104u8, 101u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 96u8, 40u8, 100u8, 105u8, 100u8, 44u8,
32u8, 112u8, 105u8, 100u8, 41u8, 96u8, 44u8, 32u8, 105u8, 116u8, 32u8, 109u8, 101u8, 97u8, 110u8,
115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 96u8, 112u8, 105u8, 100u8, 96u8, 32u8, 105u8,
115u8, 32u8, 105u8, 110u8, 32u8, 99u8, 117u8, 115u8, 116u8, 111u8, 100u8, 121u8, 32u8, 111u8,
102u8, 32u8, 96u8, 100u8, 105u8, 100u8, 96u8, 46u8, 165u8, 1u8, 32u8, 96u8, 102u8, 97u8, 108u8,
115u8, 101u8, 96u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 115u8, 32u8, 97u8, 114u8, 101u8,
32u8, 110u8, 101u8, 118u8, 101u8, 114u8, 32u8, 101u8, 120u8, 112u8, 108u8, 105u8, 99u8, 105u8,
116u8, 108u8, 121u8, 32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 109u8, 97u8, 112u8, 44u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 114u8,
101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 101u8, 97u8, 100u8, 32u8, 105u8, 110u8, 102u8, 101u8,
114u8, 114u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 98u8,
115u8, 101u8, 110u8, 99u8, 101u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 107u8, 101u8, 121u8,
46u8, 56u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8,
111u8, 110u8, 1u8, 0u8, 253u8, 9u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8,
103u8, 101u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 169u8, 7u8, 1u8,
125u8, 3u8, 0u8, 1u8, 1u8, 10u8, 34u8, 44u8, 80u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8,
108u8, 70u8, 101u8, 101u8, 1u8, 44u8, 80u8, 114u8, 111u8, 116u8, 111u8, 99u8, 111u8, 108u8, 70u8,
101u8, 101u8, 8u8, 32u8, 66u8, 97u8, 115u8, 101u8, 70u8, 101u8, 101u8, 115u8, 1u8, 1u8, 4u8, 5u8,
185u8, 7u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 4u8, 21u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8,
110u8, 103u8, 32u8, 111u8, 102u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 32u8, 110u8, 97u8, 109u8, 101u8, 115u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8,
32u8, 98u8, 97u8, 115u8, 101u8, 32u8, 102u8, 101u8, 101u8, 115u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 111u8, 115u8, 101u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 46u8, 44u8, 67u8, 111u8, 101u8, 102u8, 102u8, 105u8, 99u8, 105u8, 101u8, 110u8,
116u8, 1u8, 0u8, 145u8, 3u8, 32u8, 1u8, 0u8, 0u8, 0u8, 1u8, 0u8, 0u8, 0u8, 4u8, 21u8, 1u8, 32u8,
84u8, 104u8, 101u8, 32u8, 102u8, 101u8, 101u8, 32u8, 99u8, 111u8, 101u8, 102u8, 102u8, 105u8,
99u8, 105u8, 101u8, 110u8, 116u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 112u8, 111u8, 115u8,
105u8, 116u8, 105u8, 118u8, 101u8, 32u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 97u8, 108u8,
32u8, 40u8, 110u8, 117u8, 109u8, 101u8, 114u8, 97u8, 116u8, 111u8, 114u8, 44u8, 32u8, 100u8,
101u8, 110u8, 111u8, 109u8, 105u8, 110u8, 97u8, 116u8, 111u8, 114u8, 41u8, 46u8, 1u8, 181u8, 7u8,
1u8, 141u8, 3u8, 0u8, 1u8, 5u8, 10u8, 35u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8,
101u8, 114u8, 1u8, 36u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 114u8, 8u8, 24u8,
65u8, 103u8, 101u8, 110u8, 100u8, 97u8, 1u8, 1u8, 4u8, 5u8, 16u8, 9u8, 10u8, 4u8, 0u8, 4u8, 77u8,
1u8, 32u8, 73u8, 116u8, 101u8, 109u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 101u8,
120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 44u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8,
101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8,
107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
116u8, 104u8, 101u8, 121u8, 32u8, 115u8, 104u8, 111u8, 117u8, 108u8, 100u8, 32u8, 98u8, 101u8,
32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 46u8, 24u8,
76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 0u8, 1u8, 4u8, 5u8, 40u8, 153u8, 3u8, 4u8, 0u8, 4u8,
1u8, 1u8, 32u8, 76u8, 111u8, 111u8, 107u8, 117u8, 112u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8,
105u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 110u8, 100u8, 101u8, 120u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 116u8, 97u8, 115u8, 107u8, 46u8, 1u8, 189u8, 7u8, 1u8, 149u8, 3u8,
8u8, 52u8, 77u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 87u8, 101u8, 105u8, 103u8, 104u8,
116u8, 32u8, 32u8, 0u8, 128u8, 110u8, 135u8, 116u8, 1u8, 0u8, 0u8, 8u8, 69u8, 1u8, 32u8, 84u8,
104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 119u8, 101u8, 105u8,
103u8, 104u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 109u8, 97u8, 121u8, 32u8, 98u8,
101u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 112u8, 101u8,
114u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8,
121u8, 32u8, 100u8, 105u8, 115u8, 112u8, 97u8, 116u8, 99u8, 104u8, 97u8, 98u8, 108u8, 101u8,
115u8, 32u8, 111u8, 102u8, 32u8, 108u8, 101u8, 115u8, 115u8, 164u8, 32u8, 112u8, 114u8, 105u8,
111u8, 114u8, 105u8, 116u8, 121u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 96u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 58u8, 58u8, 72u8, 65u8, 82u8, 68u8, 95u8, 68u8, 69u8,
65u8, 68u8, 76u8, 73u8, 78u8, 69u8, 96u8, 46u8, 80u8, 77u8, 97u8, 120u8, 83u8, 99u8, 104u8,
101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 80u8, 101u8, 114u8, 66u8, 108u8, 111u8, 99u8, 107u8,
16u8, 16u8, 50u8, 0u8, 0u8, 0u8, 8u8, 29u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8,
120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8,
102u8, 32u8, 115u8, 99u8, 104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 100u8, 32u8, 99u8, 97u8,
108u8, 108u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 115u8, 105u8, 110u8, 103u8, 108u8,
101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 220u8, 32u8, 78u8, 111u8, 116u8, 32u8, 115u8,
116u8, 114u8, 105u8, 99u8, 116u8, 108u8, 121u8, 32u8, 101u8, 110u8, 102u8, 111u8, 114u8, 99u8,
101u8, 100u8, 44u8, 32u8, 98u8, 117u8, 116u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 102u8,
111u8, 114u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 101u8, 115u8, 116u8, 105u8,
109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 1u8, 45u8, 10u8, 36u8, 40u8, 83u8, 101u8, 116u8,
116u8, 108u8, 101u8, 109u8, 101u8, 110u8, 116u8, 1u8, 40u8, 83u8, 101u8, 116u8, 116u8, 108u8,
101u8, 109u8, 101u8, 110u8, 116u8, 68u8, 36u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8, 110u8,
102u8, 111u8, 0u8, 1u8, 4u8, 5u8, 165u8, 3u8, 49u8, 10u8, 4u8, 0u8, 4u8, 152u8, 32u8, 73u8,
110u8, 102u8, 111u8, 32u8, 97u8, 98u8, 111u8, 117u8, 116u8, 32u8, 97u8, 32u8, 118u8, 101u8,
110u8, 117u8, 101u8, 46u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 32u8,
45u8, 62u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 28u8, 68u8, 101u8, 116u8, 97u8, 105u8,
108u8, 115u8, 1u8, 1u8, 4u8, 5u8, 165u8, 3u8, 169u8, 3u8, 4u8, 0u8, 8u8, 228u8, 32u8, 70u8,
114u8, 101u8, 101u8, 45u8, 102u8, 111u8, 114u8, 109u8, 32u8, 116u8, 101u8, 120u8, 116u8, 32u8,
97u8, 98u8, 111u8, 117u8, 116u8, 32u8, 97u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 32u8,
118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 32u8, 45u8, 62u8, 32u8, 96u8, 86u8, 101u8,
110u8, 117u8, 101u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 96u8, 96u8, 32u8, 79u8,
110u8, 108u8, 121u8, 32u8, 110u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8,
32u8, 116u8, 104u8, 101u8, 32u8, 85u8, 73u8, 46u8, 68u8, 86u8, 101u8, 110u8, 117u8, 101u8, 73u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 1u8, 1u8, 8u8, 5u8,
5u8, 53u8, 10u8, 49u8, 1u8, 0u8, 16u8, 112u8, 32u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8,
99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8,
32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 96u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8,
110u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 85u8, 73u8, 46u8, 0u8, 132u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8,
32u8, 45u8, 62u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 95u8, 105u8, 100u8, 32u8, 45u8, 62u8, 32u8, 40u8, 41u8, 48u8, 86u8, 101u8, 110u8, 117u8,
101u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8, 57u8, 10u8, 21u8,
1u8, 4u8, 0u8, 4u8, 228u8, 32u8, 83u8, 105u8, 103u8, 110u8, 101u8, 114u8, 115u8, 32u8, 97u8,
108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8,
118u8, 101u8, 110u8, 117u8, 101u8, 46u8, 32u8, 40u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8,
105u8, 100u8, 44u8, 32u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 41u8, 32u8, 45u8, 62u8, 32u8,
98u8, 111u8, 111u8, 108u8, 40u8, 85u8, 115u8, 101u8, 114u8, 86u8, 101u8, 110u8, 117u8, 101u8,
115u8, 1u8, 1u8, 4u8, 5u8, 120u8, 201u8, 3u8, 4u8, 0u8, 4u8, 113u8, 1u8, 32u8, 65u8, 114u8,
114u8, 97u8, 121u8, 32u8, 111u8, 102u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8,
99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 97u8, 110u8, 32u8, 105u8,
100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 46u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8,
110u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8,
32u8, 85u8, 73u8, 46u8, 32u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8,
32u8, 45u8, 62u8, 32u8, 86u8, 101u8, 99u8, 60u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8,
100u8, 62u8, 72u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8,
68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 1u8, 1u8, 4u8, 5u8, 177u8, 3u8, 61u8, 10u8, 84u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 4u8, 17u8, 1u8, 32u8, 68u8, 101u8, 116u8, 97u8, 105u8, 108u8, 115u8, 32u8, 97u8, 98u8,
111u8, 117u8, 116u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8,
116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8,
105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 32u8, 45u8, 62u8, 32u8, 105u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 100u8, 101u8, 116u8, 97u8, 105u8, 108u8,
115u8, 60u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 76u8,
101u8, 103u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8, 69u8, 10u8, 189u8, 3u8, 121u8, 1u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 236u8, 32u8,
76u8, 101u8, 103u8, 115u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8, 110u8, 32u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 40u8,
105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8,
44u8, 32u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8, 76u8, 101u8,
103u8, 80u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 76u8,
101u8, 103u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8, 69u8, 10u8, 73u8,
10u8, 4u8, 0u8, 4u8, 49u8, 1u8, 32u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 32u8, 111u8, 102u8,
32u8, 97u8, 32u8, 108u8, 101u8, 103u8, 32u8, 117u8, 110u8, 100u8, 101u8, 114u8, 32u8, 97u8,
110u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8,
32u8, 40u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8,
105u8, 100u8, 44u8, 32u8, 108u8, 101u8, 103u8, 95u8, 105u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8,
76u8, 101u8, 103u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 100u8, 73u8, 110u8, 115u8, 116u8,
114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 115u8,
80u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 1u8, 1u8, 4u8, 5u8, 177u8, 3u8, 32u8, 32u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 129u8, 1u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 98u8, 101u8, 102u8,
111u8, 114u8, 101u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 32u8, 105u8, 115u8, 32u8, 101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 101u8, 100u8, 46u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8,
100u8, 32u8, 45u8, 62u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 95u8, 112u8, 101u8,
110u8, 100u8, 105u8, 110u8, 103u8, 60u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 115u8, 82u8,
101u8, 99u8, 101u8, 105u8, 118u8, 101u8, 100u8, 1u8, 1u8, 8u8, 5u8, 5u8, 77u8, 10u8, 81u8, 10u8,
4u8, 0u8, 4u8, 153u8, 1u8, 32u8, 84u8, 114u8, 97u8, 99u8, 107u8, 115u8, 32u8, 97u8, 102u8, 102u8,
105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 114u8, 101u8, 99u8, 101u8,
105u8, 118u8, 101u8, 100u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 46u8, 32u8, 40u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 44u8, 32u8,
99u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 95u8, 112u8, 97u8, 114u8, 116u8, 121u8, 41u8,
32u8, 45u8, 62u8, 32u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8,
110u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 64u8, 85u8, 115u8, 101u8, 114u8, 65u8, 102u8,
102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8, 1u8, 1u8, 8u8, 5u8, 5u8,
85u8, 10u8, 81u8, 10u8, 4u8, 0u8, 8u8, 85u8, 1u8, 32u8, 72u8, 101u8, 108u8, 112u8, 115u8, 32u8,
97u8, 32u8, 117u8, 115u8, 101u8, 114u8, 32u8, 116u8, 114u8, 97u8, 99u8, 107u8, 32u8, 116u8,
104u8, 101u8, 105u8, 114u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 105u8,
110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 110u8,
100u8, 32u8, 97u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 115u8,
32u8, 40u8, 111u8, 110u8, 108u8, 121u8, 32u8, 110u8, 101u8, 101u8, 100u8, 101u8, 100u8, 32u8,
102u8, 111u8, 114u8, 32u8, 85u8, 73u8, 41u8, 46u8, 212u8, 32u8, 40u8, 99u8, 111u8, 117u8, 110u8,
116u8, 101u8, 114u8, 95u8, 112u8, 97u8, 114u8, 116u8, 121u8, 44u8, 32u8, 105u8, 110u8, 115u8,
116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 95u8, 105u8, 100u8, 41u8, 32u8, 45u8,
62u8, 32u8, 65u8, 102u8, 102u8, 105u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 83u8,
116u8, 97u8, 116u8, 117u8, 115u8, 48u8, 82u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 115u8,
85u8, 115u8, 101u8, 100u8, 1u8, 1u8, 8u8, 5u8, 2u8, 101u8, 8u8, 21u8, 1u8, 4u8, 0u8, 4u8, 21u8,
1u8, 32u8, 84u8, 114u8, 97u8, 99u8, 107u8, 115u8, 32u8, 114u8, 101u8, 100u8, 101u8, 109u8, 112u8,
116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 114u8, 101u8, 99u8, 101u8, 105u8, 112u8,
116u8, 115u8, 46u8, 32u8, 40u8, 115u8, 105u8, 103u8, 110u8, 101u8, 114u8, 44u8, 32u8, 114u8,
101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 105u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8,
114u8, 101u8, 99u8, 101u8, 105u8, 112u8, 116u8, 95u8, 117u8, 115u8, 101u8, 100u8, 56u8, 86u8,
101u8, 110u8, 117u8, 101u8, 70u8, 105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 1u8,
1u8, 4u8, 2u8, 156u8, 21u8, 1u8, 4u8, 0u8, 4u8, 253u8, 1u8, 32u8, 84u8, 114u8, 97u8, 99u8, 107u8,
115u8, 32u8, 105u8, 102u8, 32u8, 97u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 32u8, 104u8,
97u8, 115u8, 32u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 32u8, 102u8, 105u8, 108u8,
116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8,
32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8,
105u8, 110u8, 118u8, 111u8, 108u8, 118u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 101u8, 105u8,
114u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 32u8, 84u8, 105u8, 99u8, 107u8, 101u8,
114u8, 32u8, 45u8, 62u8, 32u8, 102u8, 105u8, 108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8,
95u8, 101u8, 110u8, 97u8, 98u8, 108u8, 101u8, 100u8, 56u8, 86u8, 101u8, 110u8, 117u8, 101u8,
65u8, 108u8, 108u8, 111u8, 119u8, 76u8, 105u8, 115u8, 116u8, 1u8, 1u8, 8u8, 2u8, 5u8, 89u8, 10u8,
21u8, 1u8, 4u8, 0u8, 8u8, 197u8, 1u8, 32u8, 86u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 116u8,
104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 97u8, 108u8, 108u8, 111u8, 119u8, 101u8,
100u8, 32u8, 116u8, 111u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 105u8, 110u8,
115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 32u8, 105u8, 110u8, 118u8,
111u8, 108u8, 118u8, 105u8, 110u8, 103u8, 32u8, 97u8, 32u8, 112u8, 97u8, 114u8, 116u8, 105u8,
99u8, 117u8, 108u8, 97u8, 114u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 46u8, 32u8, 79u8,
110u8, 108u8, 121u8, 32u8, 117u8, 115u8, 101u8, 100u8, 32u8, 105u8, 102u8, 32u8, 102u8, 105u8,
108u8, 116u8, 101u8, 114u8, 105u8, 110u8, 103u8, 32u8, 105u8, 115u8, 32u8, 101u8, 110u8, 97u8,
98u8, 108u8, 101u8, 100u8, 46u8, 120u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8,
44u8, 32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 95u8, 105u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8,
97u8, 108u8, 108u8, 111u8, 119u8, 101u8, 100u8, 48u8, 86u8, 101u8, 110u8, 117u8, 101u8, 67u8,
111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 1u8, 0u8, 165u8, 3u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 4u8, 25u8, 1u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 118u8, 101u8, 110u8, 117u8, 101u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8,
32u8, 115u8, 121u8, 115u8, 116u8, 101u8, 109u8, 32u8, 40u8, 73u8, 116u8, 39u8, 115u8, 32u8,
111u8, 110u8, 101u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8,
116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8,
98u8, 101u8, 114u8, 41u8, 72u8, 73u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8,
111u8, 110u8, 67u8, 111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 1u8, 0u8, 177u8, 3u8, 32u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8, 49u8, 1u8, 32u8, 78u8, 117u8, 109u8, 98u8, 101u8, 114u8,
32u8, 111u8, 102u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8, 99u8, 116u8, 105u8, 111u8,
110u8, 115u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 121u8, 115u8, 116u8,
101u8, 109u8, 32u8, 40u8, 73u8, 116u8, 39u8, 115u8, 32u8, 111u8, 110u8, 101u8, 32u8, 109u8,
111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8,
99u8, 116u8, 117u8, 97u8, 108u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 41u8, 56u8, 83u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8,
0u8, 93u8, 10u8, 4u8, 0u8, 4u8, 68u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8,
118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 46u8, 1u8, 201u8, 7u8, 1u8, 161u8, 3u8, 0u8,
1u8, 97u8, 10u8, 37u8, 40u8, 83u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8,
1u8, 40u8, 83u8, 116u8, 97u8, 116u8, 105u8, 115u8, 116u8, 105u8, 99u8, 115u8, 20u8, 64u8, 65u8,
99u8, 116u8, 105u8, 118u8, 101u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 116u8, 97u8, 116u8,
115u8, 1u8, 1u8, 4u8, 2u8, 209u8, 3u8, 225u8, 7u8, 4u8, 0u8, 4u8, 209u8, 1u8, 32u8, 65u8, 99u8,
116u8, 105u8, 118u8, 101u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 47u8, 99u8, 111u8, 109u8, 112u8, 97u8,
110u8, 121u8, 46u8, 32u8, 32u8, 84u8, 104u8, 101u8, 114u8, 101u8, 32u8, 115u8, 104u8, 111u8,
117u8, 108u8, 100u8, 32u8, 98u8, 101u8, 32u8, 97u8, 32u8, 109u8, 97u8, 120u8, 32u8, 108u8, 105u8,
109u8, 105u8, 116u8, 32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8,
98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 97u8, 99u8, 116u8, 105u8, 118u8, 101u8, 32u8,
115u8, 116u8, 97u8, 116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8, 105u8,
99u8, 107u8, 101u8, 114u8, 47u8, 99u8, 111u8, 109u8, 112u8, 97u8, 110u8, 121u8, 46u8, 40u8, 65u8,
115u8, 115u8, 101u8, 116u8, 83u8, 116u8, 97u8, 116u8, 115u8, 1u8, 1u8, 8u8, 2u8, 2u8, 101u8,
10u8, 24u8, 64u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
4u8, 52u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 32u8, 115u8, 116u8, 97u8, 116u8, 115u8, 46u8,
96u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8,
67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 115u8, 1u8, 1u8, 4u8, 2u8,
209u8, 3u8, 109u8, 10u8, 8u8, 0u8, 0u8, 4u8, 61u8, 1u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8,
32u8, 116u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 99u8, 111u8, 109u8, 112u8,
108u8, 105u8, 97u8, 110u8, 99u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8,
105u8, 99u8, 107u8, 101u8, 114u8, 32u8, 40u8, 65u8, 115u8, 115u8, 101u8, 116u8, 83u8, 99u8,
111u8, 112u8, 101u8, 32u8, 45u8, 62u8, 32u8, 65u8, 115u8, 115u8, 101u8, 116u8, 84u8, 114u8, 97u8,
110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8, 110u8, 99u8,
101u8, 41u8, 124u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8, 110u8,
100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 69u8, 120u8, 101u8, 109u8, 112u8, 116u8, 69u8, 110u8,
116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 1u8, 1u8, 8u8, 2u8, 2u8, 113u8, 10u8, 21u8, 1u8, 4u8,
0u8, 4u8, 196u8, 32u8, 69u8, 110u8, 116u8, 105u8, 116u8, 105u8, 101u8, 115u8, 32u8, 101u8, 120u8,
101u8, 109u8, 112u8, 116u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 32u8, 84u8, 114u8,
97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 32u8, 67u8, 111u8, 109u8, 112u8, 108u8, 105u8, 97u8,
110u8, 99u8, 101u8, 32u8, 114u8, 117u8, 108u8, 101u8, 46u8, 56u8, 83u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 1u8, 0u8, 117u8, 10u8, 4u8,
0u8, 4u8, 108u8, 32u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 105u8, 103u8,
114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 118u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
46u8, 1u8, 221u8, 7u8, 1u8, 205u8, 3u8, 8u8, 64u8, 77u8, 97u8, 120u8, 83u8, 116u8, 97u8, 116u8,
115u8, 80u8, 101u8, 114u8, 65u8, 115u8, 115u8, 101u8, 116u8, 16u8, 16u8, 10u8, 0u8, 0u8, 0u8,
0u8, 116u8, 77u8, 97u8, 120u8, 84u8, 114u8, 97u8, 110u8, 115u8, 102u8, 101u8, 114u8, 67u8, 111u8,
110u8, 100u8, 105u8, 116u8, 105u8, 111u8, 110u8, 115u8, 80u8, 101u8, 114u8, 65u8, 115u8, 115u8,
101u8, 116u8, 16u8, 16u8, 4u8, 0u8, 0u8, 0u8, 0u8, 1u8, 121u8, 10u8, 38u8, 12u8, 83u8, 116u8,
111u8, 1u8, 12u8, 83u8, 116u8, 111u8, 12u8, 44u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8,
115u8, 101u8, 114u8, 115u8, 0u8, 1u8, 8u8, 2u8, 5u8, 125u8, 10u8, 29u8, 4u8, 4u8, 0u8, 8u8,
176u8, 32u8, 65u8, 108u8, 108u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8,
101u8, 114u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 97u8, 114u8, 101u8, 32u8, 99u8,
117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 108u8, 121u8, 32u8, 114u8, 117u8, 110u8, 110u8, 105u8,
110u8, 103u8, 46u8, 152u8, 32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8,
102u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 95u8, 105u8, 100u8, 41u8,
32u8, 45u8, 62u8, 32u8, 70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 60u8,
70u8, 117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 67u8, 111u8, 117u8, 110u8,
116u8, 1u8, 1u8, 4u8, 2u8, 156u8, 21u8, 4u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 4u8,
156u8, 32u8, 84u8, 111u8, 116u8, 97u8, 108u8, 32u8, 102u8, 117u8, 110u8, 100u8, 114u8, 97u8,
105u8, 115u8, 101u8, 114u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 32u8,
102u8, 111u8, 114u8, 32u8, 97u8, 32u8, 116u8, 111u8, 107u8, 101u8, 110u8, 46u8, 60u8, 70u8,
117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 78u8, 97u8, 109u8, 101u8, 115u8,
1u8, 1u8, 8u8, 2u8, 5u8, 125u8, 10u8, 25u8, 4u8, 4u8, 0u8, 8u8, 180u8, 32u8, 78u8, 97u8, 109u8,
101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 104u8, 101u8, 32u8, 70u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 46u8, 32u8, 79u8, 110u8, 108u8, 121u8, 32u8, 117u8,
115u8, 101u8, 100u8, 32u8, 111u8, 102u8, 102u8, 99u8, 104u8, 97u8, 105u8, 110u8, 46u8, 172u8,
32u8, 40u8, 116u8, 105u8, 99u8, 107u8, 101u8, 114u8, 44u8, 32u8, 102u8, 117u8, 110u8, 100u8,
114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 95u8, 105u8, 100u8, 41u8, 32u8, 45u8, 62u8, 32u8, 70u8,
117u8, 110u8, 100u8, 114u8, 97u8, 105u8, 115u8, 101u8, 114u8, 32u8, 110u8, 97u8, 109u8, 101u8,
1u8, 241u8, 7u8, 1u8, 17u8, 4u8, 0u8, 1u8, 129u8, 10u8, 39u8, 32u8, 84u8, 114u8, 101u8, 97u8,
115u8, 117u8, 114u8, 121u8, 0u8, 1u8, 1u8, 8u8, 1u8, 45u8, 4u8, 0u8, 1u8, 133u8, 10u8, 40u8,
28u8, 85u8, 116u8, 105u8, 108u8, 105u8, 116u8, 121u8, 1u8, 28u8, 85u8, 116u8, 105u8, 108u8,
105u8, 116u8, 121u8, 4u8, 24u8, 78u8, 111u8, 110u8, 99u8, 101u8, 115u8, 1u8, 1u8, 4u8, 5u8, 0u8,
32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 1u8, 13u8, 8u8, 1u8, 49u8, 4u8, 0u8,
1u8, 137u8, 10u8, 41u8, 16u8, 66u8, 97u8, 115u8, 101u8, 0u8, 1u8, 25u8, 8u8, 1u8, 65u8, 4u8, 4u8,
24u8, 77u8, 97u8, 120u8, 76u8, 101u8, 110u8, 16u8, 16u8, 0u8, 8u8, 0u8, 0u8, 0u8, 1u8, 141u8,
10u8, 42u8, 56u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 65u8, 103u8, 101u8,
110u8, 116u8, 115u8, 1u8, 56u8, 69u8, 120u8, 116u8, 101u8, 114u8, 110u8, 97u8, 108u8, 65u8,
103u8, 101u8, 110u8, 116u8, 115u8, 20u8, 48u8, 65u8, 71u8, 73u8, 100u8, 83u8, 101u8, 113u8,
117u8, 101u8, 110u8, 99u8, 101u8, 1u8, 1u8, 4u8, 2u8, 156u8, 17u8, 1u8, 16u8, 0u8, 0u8, 0u8, 0u8,
16u8, 180u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 101u8, 120u8, 116u8, 32u8, 112u8, 101u8,
114u8, 45u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 65u8, 71u8, 32u8, 73u8,
68u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8,
110u8, 99u8, 101u8, 46u8, 0u8, 77u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 102u8, 117u8, 108u8,
108u8, 32u8, 73u8, 68u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8, 101u8,
100u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 99u8, 111u8, 109u8, 98u8, 105u8, 110u8, 97u8, 116u8,
105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8,
96u8, 32u8, 97u8, 110u8, 100u8, 32u8, 97u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8,
99u8, 101u8, 44u8, 144u8, 32u8, 119u8, 104u8, 105u8, 99u8, 104u8, 32u8, 115u8, 116u8, 97u8,
114u8, 116u8, 115u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 49u8, 44u8, 32u8, 114u8, 97u8,
116u8, 104u8, 101u8, 114u8, 32u8, 116u8, 104u8, 97u8, 110u8, 32u8, 48u8, 46u8, 28u8, 65u8, 103u8,
101u8, 110u8, 116u8, 79u8, 102u8, 1u8, 1u8, 8u8, 2u8, 2u8, 85u8, 9u8, 49u8, 1u8, 0u8, 4u8, 41u8,
1u8, 32u8, 77u8, 97u8, 112u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8,
32u8, 40u8, 96u8, 73u8, 100u8, 101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 96u8, 41u8,
32u8, 116u8, 111u8, 32u8, 97u8, 108u8, 108u8, 32u8, 97u8, 108u8, 108u8, 32u8, 96u8, 84u8, 105u8,
99u8, 107u8, 101u8, 114u8, 96u8, 115u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 98u8, 101u8,
108u8, 111u8, 110u8, 103u8, 32u8, 116u8, 111u8, 44u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8,
121u8, 46u8, 48u8, 71u8, 114u8, 111u8, 117u8, 112u8, 79u8, 102u8, 65u8, 103u8, 101u8, 110u8,
116u8, 0u8, 1u8, 8u8, 2u8, 5u8, 77u8, 9u8, 13u8, 1u8, 4u8, 0u8, 4u8, 53u8, 1u8, 32u8, 77u8, 97u8,
112u8, 115u8, 32u8, 97u8, 103u8, 101u8, 110u8, 116u8, 115u8, 32u8, 40u8, 96u8, 73u8, 100u8,
101u8, 110u8, 116u8, 105u8, 116u8, 121u8, 73u8, 100u8, 96u8, 41u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8, 116u8, 111u8, 32u8,
119u8, 104u8, 97u8, 116u8, 32u8, 65u8, 71u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 98u8, 101u8,
108u8, 111u8, 110u8, 103u8, 32u8, 116u8, 111u8, 44u8, 32u8, 105u8, 102u8, 32u8, 97u8, 110u8,
121u8, 46u8, 52u8, 78u8, 117u8, 109u8, 70u8, 117u8, 108u8, 108u8, 65u8, 103u8, 101u8, 110u8,
116u8, 115u8, 1u8, 1u8, 4u8, 2u8, 156u8, 16u8, 16u8, 0u8, 0u8, 0u8, 0u8, 4u8, 220u8, 32u8, 77u8,
97u8, 112u8, 115u8, 32u8, 97u8, 32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 32u8,
116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8,
111u8, 102u8, 32u8, 96u8, 70u8, 117u8, 108u8, 108u8, 96u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 115u8, 32u8, 102u8, 111u8, 114u8, 32u8, 105u8, 116u8, 46u8, 64u8, 71u8, 114u8, 111u8,
117u8, 112u8, 80u8, 101u8, 114u8, 109u8, 105u8, 115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 0u8,
1u8, 8u8, 2u8, 5u8, 145u8, 10u8, 172u8, 4u8, 0u8, 4u8, 93u8, 1u8, 32u8, 70u8, 111u8, 114u8, 32u8,
99u8, 117u8, 115u8, 116u8, 111u8, 109u8, 32u8, 65u8, 71u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8,
32u8, 96u8, 84u8, 105u8, 99u8, 107u8, 101u8, 114u8, 96u8, 44u8, 32u8, 109u8, 97u8, 112u8, 115u8,
32u8, 116u8, 111u8, 32u8, 119u8, 104u8, 97u8, 116u8, 32u8, 112u8, 101u8, 114u8, 109u8, 105u8,
115u8, 115u8, 105u8, 111u8, 110u8, 115u8, 32u8, 97u8, 110u8, 32u8, 97u8, 103u8, 101u8, 110u8,
116u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 65u8, 71u8, 32u8, 119u8, 111u8,
117u8, 108u8, 100u8, 32u8, 104u8, 97u8, 118u8, 101u8, 46u8, 1u8, 29u8, 8u8, 1u8, 73u8, 4u8, 0u8,
1u8, 149u8, 10u8, 43u8, 28u8, 82u8, 101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 1u8, 28u8, 82u8,
101u8, 108u8, 97u8, 121u8, 101u8, 114u8, 4u8, 36u8, 83u8, 117u8, 98u8, 115u8, 105u8, 100u8,
105u8, 101u8, 115u8, 0u8, 1u8, 4u8, 2u8, 0u8, 153u8, 10u8, 4u8, 0u8, 24u8, 236u8, 32u8, 84u8,
104u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 102u8, 111u8, 114u8,
32u8, 97u8, 32u8, 96u8, 117u8, 115u8, 101u8, 114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 105u8,
102u8, 32u8, 116u8, 104u8, 101u8, 121u8, 32u8, 97u8, 114u8, 101u8, 32u8, 98u8, 101u8, 105u8,
110u8, 103u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8, 101u8, 100u8, 44u8,
136u8, 32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 109u8, 97u8, 112u8, 32u8, 96u8, 117u8, 115u8, 101u8,
114u8, 95u8, 107u8, 101u8, 121u8, 96u8, 32u8, 61u8, 62u8, 32u8, 96u8, 83u8, 117u8, 98u8, 115u8,
105u8, 100u8, 121u8, 96u8, 46u8, 0u8, 9u8, 1u8, 32u8, 65u8, 32u8, 107u8, 101u8, 121u8, 32u8,
99u8, 97u8, 110u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 104u8, 97u8, 118u8, 101u8, 32u8,
111u8, 110u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 121u8, 32u8, 97u8, 116u8,
32u8, 97u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8, 32u8, 32u8, 84u8, 111u8, 32u8, 99u8, 104u8,
97u8, 110u8, 103u8, 101u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8, 101u8,
114u8, 115u8, 29u8, 1u8, 32u8, 97u8, 32u8, 107u8, 101u8, 121u8, 32u8, 110u8, 101u8, 101u8, 100u8,
115u8, 32u8, 116u8, 111u8, 32u8, 99u8, 97u8, 108u8, 108u8, 32u8, 96u8, 114u8, 101u8, 109u8,
111u8, 118u8, 101u8, 95u8, 112u8, 97u8, 121u8, 105u8, 110u8, 103u8, 95u8, 107u8, 101u8, 121u8,
96u8, 32u8, 116u8, 111u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 117u8, 114u8, 114u8, 101u8, 110u8, 116u8, 32u8, 115u8, 117u8, 98u8, 115u8,
105u8, 100u8, 121u8, 44u8, 164u8, 32u8, 98u8, 101u8, 102u8, 111u8, 114u8, 101u8, 32u8, 116u8,
104u8, 101u8, 121u8, 32u8, 99u8, 97u8, 110u8, 32u8, 97u8, 99u8, 99u8, 101u8, 112u8, 116u8, 32u8,
97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 115u8, 117u8, 98u8, 115u8, 105u8, 100u8, 105u8, 115u8,
101u8, 114u8, 46u8, 1u8, 33u8, 8u8, 1u8, 77u8, 4u8, 0u8, 1u8, 157u8, 10u8, 44u8, 28u8, 82u8,
101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 1u8, 28u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8,
115u8, 4u8, 40u8, 73u8, 116u8, 110u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 115u8, 0u8, 1u8,
4u8, 2u8, 0u8, 41u8, 8u8, 4u8, 0u8, 4u8, 1u8, 1u8, 32u8, 77u8, 97u8, 112u8, 32u8, 111u8, 102u8,
32u8, 40u8, 73u8, 116u8, 110u8, 32u8, 65u8, 100u8, 100u8, 114u8, 101u8, 115u8, 115u8, 32u8, 96u8,
65u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 41u8, 32u8, 45u8, 62u8, 32u8,
40u8, 82u8, 101u8, 119u8, 97u8, 114u8, 100u8, 32u8, 96u8, 73u8, 116u8, 110u8, 82u8, 101u8, 119u8,
97u8, 114u8, 100u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 96u8, 41u8, 46u8, 1u8, 37u8, 8u8,
1u8, 81u8, 4u8, 0u8, 1u8, 161u8, 10u8, 45u8, 36u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 115u8, 1u8, 36u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 24u8, 48u8,
80u8, 114u8, 105u8, 115u8, 116u8, 105u8, 110u8, 101u8, 67u8, 111u8, 100u8, 101u8, 0u8, 1u8, 4u8,
6u8, 36u8, 40u8, 4u8, 0u8, 4u8, 101u8, 1u8, 32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8,
110u8, 103u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 97u8, 108u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8, 97u8, 115u8,
104u8, 32u8, 116u8, 111u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 114u8, 105u8, 103u8, 105u8,
110u8, 97u8, 108u8, 32u8, 99u8, 111u8, 100u8, 101u8, 44u8, 32u8, 117u8, 110u8, 116u8, 111u8,
117u8, 99u8, 104u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8,
117u8, 109u8, 101u8, 110u8, 116u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 44u8, 67u8, 111u8,
100u8, 101u8, 83u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 0u8, 1u8, 4u8, 6u8, 36u8, 165u8,
10u8, 4u8, 0u8, 4u8, 101u8, 1u8, 32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8,
103u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8, 32u8, 97u8, 110u8, 32u8, 111u8,
114u8, 105u8, 103u8, 105u8, 110u8, 97u8, 108u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8,
97u8, 115u8, 104u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 110u8, 115u8, 116u8, 114u8, 117u8,
109u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 119u8, 97u8, 115u8, 109u8, 32u8, 99u8, 111u8,
100u8, 101u8, 44u8, 32u8, 114u8, 101u8, 97u8, 100u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8,
101u8, 120u8, 101u8, 99u8, 117u8, 116u8, 105u8, 111u8, 110u8, 46u8, 44u8, 79u8, 119u8, 110u8,
101u8, 114u8, 73u8, 110u8, 102u8, 111u8, 79u8, 102u8, 0u8, 1u8, 4u8, 6u8, 36u8, 169u8, 10u8, 4u8,
0u8, 4u8, 13u8, 1u8, 32u8, 65u8, 32u8, 109u8, 97u8, 112u8, 112u8, 105u8, 110u8, 103u8, 32u8,
98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8, 32u8, 97u8, 110u8, 32u8, 111u8, 114u8, 105u8,
103u8, 105u8, 110u8, 97u8, 108u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 104u8, 97u8, 115u8,
104u8, 32u8, 97u8, 110u8, 100u8, 32u8, 105u8, 116u8, 115u8, 32u8, 111u8, 119u8, 110u8, 101u8,
114u8, 32u8, 105u8, 110u8, 102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 46u8,
20u8, 78u8, 111u8, 110u8, 99u8, 101u8, 1u8, 0u8, 32u8, 32u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 88u8, 29u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8,
42u8, 42u8, 109u8, 111u8, 110u8, 111u8, 116u8, 111u8, 110u8, 105u8, 99u8, 42u8, 42u8, 32u8, 99u8,
111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 32u8, 105u8, 110u8, 99u8, 114u8, 101u8, 109u8, 101u8,
110u8, 116u8, 101u8, 100u8, 32u8, 111u8, 110u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 32u8, 105u8, 110u8, 115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 0u8, 5u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 105u8, 115u8, 32u8,
117u8, 115u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8, 32u8,
116u8, 111u8, 32u8, 103u8, 101u8, 110u8, 101u8, 114u8, 97u8, 116u8, 101u8, 32u8, 117u8, 110u8,
105u8, 113u8, 117u8, 101u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 105u8, 100u8, 115u8, 32u8,
102u8, 111u8, 114u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 46u8,
41u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 105u8, 100u8, 32u8,
111u8, 102u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 99u8, 97u8, 108u8, 99u8, 117u8, 108u8, 97u8, 116u8,
101u8, 100u8, 32u8, 102u8, 114u8, 111u8, 109u8, 32u8, 104u8, 97u8, 115u8, 104u8, 40u8, 97u8,
99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 95u8, 105u8, 100u8, 44u8, 32u8, 110u8, 111u8, 110u8,
99u8, 101u8, 41u8, 46u8, 53u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 110u8, 111u8, 110u8, 99u8,
101u8, 32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 113u8, 117u8, 105u8, 114u8, 101u8, 100u8, 32u8,
98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8, 32u8, 111u8, 116u8, 104u8, 101u8, 114u8, 119u8,
105u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 102u8, 111u8, 108u8, 108u8, 111u8, 119u8,
105u8, 110u8, 103u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8, 99u8, 101u8, 32u8, 119u8,
111u8, 117u8, 108u8, 100u8, 32u8, 108u8, 101u8, 97u8, 100u8, 32u8, 116u8, 111u8, 132u8, 32u8,
97u8, 32u8, 112u8, 111u8, 115u8, 115u8, 105u8, 98u8, 108u8, 101u8, 32u8, 99u8, 111u8, 108u8,
108u8, 105u8, 115u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 58u8, 0u8, 104u8, 32u8, 49u8, 46u8, 32u8, 67u8, 114u8, 101u8, 97u8, 116u8,
101u8, 32u8, 97u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8,
116u8, 46u8, 108u8, 32u8, 50u8, 46u8, 32u8, 84u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8,
101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
46u8, 252u8, 32u8, 51u8, 46u8, 32u8, 73u8, 109u8, 109u8, 101u8, 100u8, 105u8, 97u8, 116u8, 101u8,
108u8, 121u8, 32u8, 114u8, 101u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 32u8, 116u8, 104u8,
101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 119u8, 105u8, 116u8,
104u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8,
117u8, 110u8, 116u8, 95u8, 105u8, 100u8, 46u8, 0u8, 69u8, 1u8, 32u8, 84u8, 104u8, 105u8, 115u8,
32u8, 105u8, 115u8, 32u8, 98u8, 97u8, 100u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8, 115u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 101u8, 110u8, 116u8, 115u8, 32u8,
111u8, 102u8, 32u8, 97u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 97u8, 114u8, 101u8, 32u8,
100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 108u8, 97u8, 122u8, 105u8, 108u8, 121u8,
32u8, 97u8, 110u8, 100u8, 32u8, 116u8, 104u8, 101u8, 114u8, 101u8, 32u8, 109u8, 105u8, 103u8,
104u8, 116u8, 32u8, 98u8, 101u8, 89u8, 1u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8,
32u8, 111u8, 102u8, 32u8, 116u8, 104u8, 101u8, 32u8, 111u8, 108u8, 100u8, 32u8, 105u8, 110u8,
115u8, 116u8, 97u8, 110u8, 116u8, 105u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 115u8, 116u8,
105u8, 108u8, 108u8, 32u8, 105u8, 110u8, 32u8, 105u8, 116u8, 32u8, 119u8, 104u8, 101u8, 110u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 101u8, 119u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8,
97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 99u8, 114u8, 101u8, 97u8, 116u8, 101u8, 100u8, 46u8,
32u8, 80u8, 108u8, 101u8, 97u8, 115u8, 101u8, 89u8, 1u8, 32u8, 110u8, 111u8, 116u8, 101u8, 32u8,
116u8, 104u8, 97u8, 116u8, 32u8, 119u8, 101u8, 32u8, 99u8, 97u8, 110u8, 39u8, 116u8, 32u8, 114u8,
101u8, 112u8, 108u8, 97u8, 99u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 99u8, 111u8, 117u8,
110u8, 116u8, 101u8, 114u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 101u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 98u8, 101u8, 99u8, 97u8,
117u8, 115u8, 101u8, 32u8, 116u8, 104u8, 101u8, 32u8, 115u8, 101u8, 113u8, 117u8, 101u8, 110u8,
99u8, 101u8, 32u8, 97u8, 98u8, 111u8, 118u8, 101u8, 81u8, 1u8, 32u8, 99u8, 97u8, 110u8, 32u8,
104u8, 97u8, 112u8, 112u8, 101u8, 110u8, 32u8, 105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8,
115u8, 97u8, 109u8, 101u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 32u8, 87u8, 101u8, 32u8,
97u8, 108u8, 115u8, 111u8, 32u8, 99u8, 97u8, 110u8, 39u8, 116u8, 32u8, 107u8, 101u8, 101u8,
112u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8, 116u8, 32u8, 99u8,
111u8, 117u8, 110u8, 116u8, 101u8, 114u8, 32u8, 105u8, 110u8, 32u8, 109u8, 101u8, 109u8, 111u8,
114u8, 121u8, 32u8, 111u8, 110u8, 108u8, 121u8, 73u8, 1u8, 32u8, 98u8, 101u8, 99u8, 97u8, 117u8,
115u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 115u8, 32u8,
116u8, 104u8, 101u8, 32u8, 111u8, 110u8, 108u8, 121u8, 32u8, 119u8, 97u8, 121u8, 32u8, 116u8,
111u8, 32u8, 99u8, 111u8, 109u8, 109u8, 117u8, 110u8, 105u8, 99u8, 97u8, 116u8, 101u8, 32u8,
97u8, 99u8, 114u8, 111u8, 115u8, 115u8, 32u8, 100u8, 105u8, 102u8, 102u8, 101u8, 114u8, 101u8,
110u8, 116u8, 32u8, 101u8, 120u8, 116u8, 114u8, 105u8, 110u8, 115u8, 105u8, 99u8, 115u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 101u8, 48u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 98u8,
108u8, 111u8, 99u8, 107u8, 46u8, 0u8, 28u8, 32u8, 35u8, 32u8, 78u8, 111u8, 116u8, 101u8, 0u8,
61u8, 1u8, 32u8, 68u8, 111u8, 32u8, 110u8, 111u8, 116u8, 32u8, 117u8, 115u8, 101u8, 32u8, 105u8,
116u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8,
32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 46u8, 32u8, 73u8, 116u8, 32u8,
119u8, 111u8, 110u8, 39u8, 116u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 99u8, 114u8, 101u8,
109u8, 101u8, 110u8, 116u8, 101u8, 100u8, 32u8, 105u8, 102u8, 100u8, 32u8, 97u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 115u8,
116u8, 114u8, 111u8, 121u8, 101u8, 100u8, 46u8, 56u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8,
99u8, 116u8, 73u8, 110u8, 102u8, 111u8, 79u8, 102u8, 0u8, 1u8, 4u8, 5u8, 0u8, 173u8, 10u8, 4u8,
0u8, 12u8, 168u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 100u8, 101u8, 32u8, 97u8, 115u8,
115u8, 111u8, 99u8, 105u8, 97u8, 116u8, 101u8, 100u8, 32u8, 119u8, 105u8, 116u8, 104u8, 32u8,
97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8, 97u8, 99u8, 99u8, 111u8, 117u8, 110u8,
116u8, 46u8, 0u8, 208u8, 32u8, 84u8, 87u8, 79u8, 88u8, 45u8, 78u8, 79u8, 84u8, 69u8, 58u8, 32u8,
83u8, 65u8, 70u8, 69u8, 32u8, 115u8, 105u8, 110u8, 99u8, 101u8, 32u8, 96u8, 65u8, 99u8, 99u8,
111u8, 117u8, 110u8, 116u8, 73u8, 100u8, 96u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 115u8,
101u8, 99u8, 117u8, 114u8, 101u8, 32u8, 104u8, 97u8, 115u8, 104u8, 46u8, 52u8, 68u8, 101u8,
108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 81u8, 117u8, 101u8, 117u8, 101u8, 1u8, 0u8, 177u8,
10u8, 4u8, 0u8, 16u8, 200u8, 32u8, 69u8, 118u8, 105u8, 99u8, 116u8, 101u8, 100u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
97u8, 119u8, 97u8, 105u8, 116u8, 32u8, 99u8, 104u8, 105u8, 108u8, 100u8, 32u8, 116u8, 114u8,
105u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 73u8, 1u8,
32u8, 67u8, 104u8, 105u8, 108u8, 100u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 100u8, 101u8,
108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 97u8, 32u8, 104u8, 101u8,
97u8, 118u8, 121u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8,
100u8, 101u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 111u8, 110u8, 32u8, 116u8,
104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 89u8, 1u8,
32u8, 115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 115u8, 97u8, 105u8,
100u8, 32u8, 116u8, 114u8, 105u8, 101u8, 46u8, 32u8, 84u8, 104u8, 101u8, 114u8, 101u8, 102u8,
111u8, 114u8, 101u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8, 111u8, 112u8, 101u8, 114u8, 97u8,
116u8, 105u8, 111u8, 110u8, 32u8, 105u8, 115u8, 32u8, 112u8, 101u8, 114u8, 102u8, 111u8, 114u8,
109u8, 101u8, 100u8, 32u8, 108u8, 97u8, 122u8, 105u8, 108u8, 121u8, 32u8, 105u8, 110u8, 32u8,
96u8, 111u8, 110u8, 95u8, 105u8, 110u8, 105u8, 116u8, 105u8, 97u8, 108u8, 105u8, 122u8, 101u8,
96u8, 46u8, 1u8, 45u8, 8u8, 1u8, 85u8, 4u8, 20u8, 32u8, 83u8, 99u8, 104u8, 101u8, 100u8, 117u8,
108u8, 101u8, 185u8, 10u8, 165u8, 10u8, 4u8, 0u8, 0u8, 0u8, 0u8, 0u8, 1u8, 0u8, 0u8, 128u8, 0u8,
0u8, 0u8, 16u8, 0u8, 0u8, 0u8, 0u8, 16u8, 0u8, 0u8, 0u8, 1u8, 0u8, 0u8, 32u8, 0u8, 0u8, 0u8,
32u8, 0u8, 0u8, 0u8, 0u8, 64u8, 0u8, 0u8, 0u8, 0u8, 2u8, 0u8, 2u8, 0u8, 0u8, 0u8, 144u8, 11u8,
0u8, 0u8, 112u8, 28u8, 0u8, 0u8, 168u8, 32u8, 0u8, 0u8, 92u8, 23u8, 0u8, 0u8, 6u8, 39u8, 0u8,
0u8, 244u8, 11u8, 0u8, 0u8, 138u8, 22u8, 0u8, 0u8, 2u8, 28u8, 0u8, 0u8, 40u8, 0u8, 0u8, 0u8,
188u8, 11u8, 1u8, 0u8, 188u8, 76u8, 1u8, 0u8, 224u8, 6u8, 0u8, 0u8, 234u8, 11u8, 0u8, 0u8, 60u8,
15u8, 0u8, 0u8, 214u8, 11u8, 0u8, 0u8, 90u8, 35u8, 0u8, 0u8, 132u8, 43u8, 0u8, 0u8, 56u8, 14u8,
0u8, 0u8, 145u8, 24u8, 176u8, 0u8, 68u8, 12u8, 0u8, 0u8, 224u8, 11u8, 0u8, 0u8, 154u8, 11u8, 0u8,
0u8, 88u8, 12u8, 0u8, 0u8, 74u8, 11u8, 0u8, 0u8, 14u8, 11u8, 0u8, 0u8, 68u8, 12u8, 0u8, 0u8,
132u8, 18u8, 0u8, 0u8, 112u8, 18u8, 0u8, 0u8, 72u8, 18u8, 0u8, 0u8, 82u8, 18u8, 0u8, 0u8, 112u8,
18u8, 0u8, 0u8, 232u8, 18u8, 0u8, 0u8, 122u8, 18u8, 0u8, 0u8, 102u8, 18u8, 0u8, 0u8, 52u8, 18u8,
0u8, 0u8, 82u8, 18u8, 0u8, 0u8, 98u8, 17u8, 0u8, 0u8, 168u8, 17u8, 0u8, 0u8, 168u8, 17u8, 0u8,
0u8, 62u8, 43u8, 0u8, 0u8, 100u8, 45u8, 0u8, 0u8, 82u8, 43u8, 0u8, 0u8, 210u8, 45u8, 0u8, 0u8,
148u8, 17u8, 0u8, 0u8, 128u8, 17u8, 0u8, 0u8, 218u8, 17u8, 0u8, 0u8, 132u8, 18u8, 0u8, 0u8, 72u8,
18u8, 0u8, 0u8, 92u8, 18u8, 0u8, 0u8, 82u8, 18u8, 0u8, 0u8, 92u8, 18u8, 0u8, 0u8, 150u8, 78u8,
7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 140u8, 151u8, 51u8, 3u8, 0u8, 0u8, 0u8, 0u8, 62u8, 222u8, 63u8,
3u8, 0u8, 0u8, 0u8, 0u8, 46u8, 16u8, 8u8, 0u8, 0u8, 0u8, 0u8, 0u8, 54u8, 53u8, 3u8, 0u8, 0u8,
0u8, 0u8, 0u8, 48u8, 85u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 162u8, 56u8, 7u8, 0u8, 0u8, 0u8, 0u8,
0u8, 188u8, 191u8, 21u8, 0u8, 0u8, 0u8, 0u8, 0u8, 80u8, 98u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8,
154u8, 84u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 158u8, 85u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 214u8,
74u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 40u8, 157u8, 18u8, 0u8, 0u8, 0u8, 0u8, 0u8, 32u8, 170u8, 3u8,
0u8, 0u8, 0u8, 0u8, 0u8, 160u8, 38u8, 7u8, 0u8, 0u8, 0u8, 0u8, 0u8, 116u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 196u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
136u8, 109u8, 166u8, 74u8, 0u8, 0u8, 0u8, 0u8, 82u8, 9u8, 24u8, 0u8, 0u8, 0u8, 0u8, 0u8, 130u8,
80u8, 45u8, 0u8, 0u8, 0u8, 0u8, 0u8, 120u8, 156u8, 19u8, 15u8, 0u8, 0u8, 0u8, 0u8, 33u8, 3u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 22u8, 253u8, 5u8, 0u8, 0u8, 0u8, 0u8, 0u8, 42u8, 67u8, 36u8, 15u8,
0u8, 0u8, 0u8, 0u8, 20u8, 1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 110u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 190u8, 78u8, 77u8, 15u8, 0u8, 0u8, 0u8, 0u8, 134u8, 239u8, 32u8, 15u8, 0u8, 0u8, 0u8, 0u8,
100u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 134u8, 84u8, 39u8, 3u8, 0u8, 0u8, 0u8, 0u8, 99u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 240u8, 128u8, 44u8, 3u8, 0u8, 0u8, 0u8, 0u8, 111u8, 2u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 108u8, 84u8, 38u8, 15u8, 0u8, 0u8, 0u8, 0u8, 128u8, 2u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 170u8, 216u8, 249u8, 15u8, 0u8, 0u8, 0u8, 0u8, 250u8, 10u8, 199u8, 26u8, 0u8, 0u8, 0u8,
0u8, 194u8, 193u8, 219u8, 14u8, 0u8, 0u8, 0u8, 0u8, 148u8, 100u8, 6u8, 16u8, 0u8, 0u8, 0u8, 0u8,
2u8, 212u8, 1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 36u8, 131u8, 57u8, 76u8, 0u8, 0u8, 0u8, 0u8, 33u8,
43u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 245u8, 5u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 8u8, 241u8, 11u8,
0u8, 0u8, 0u8, 0u8, 0u8, 203u8, 17u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 206u8, 201u8, 13u8, 0u8, 0u8,
0u8, 0u8, 0u8, 182u8, 11u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 138u8, 128u8, 9u8, 0u8, 0u8, 0u8, 0u8,
0u8, 143u8, 4u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 66u8, 125u8, 9u8, 0u8, 0u8, 0u8, 0u8, 0u8, 144u8,
4u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 60u8, 162u8, 71u8, 2u8, 0u8, 0u8, 0u8, 0u8, 130u8, 209u8,
47u8, 9u8, 0u8, 0u8, 0u8, 0u8, 4u8, 104u8, 32u8, 67u8, 111u8, 115u8, 116u8, 32u8, 115u8, 99u8,
104u8, 101u8, 100u8, 117u8, 108u8, 101u8, 32u8, 97u8, 110u8, 100u8, 32u8, 108u8, 105u8, 109u8,
105u8, 116u8, 115u8, 46u8, 72u8, 68u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 81u8,
117u8, 101u8, 117u8, 101u8, 68u8, 101u8, 112u8, 116u8, 104u8, 16u8, 16u8, 0u8, 4u8, 0u8, 0u8,
60u8, 9u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8,
32u8, 110u8, 117u8, 109u8, 98u8, 101u8, 114u8, 32u8, 111u8, 102u8, 32u8, 99u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8,
32u8, 98u8, 101u8, 32u8, 112u8, 101u8, 110u8, 100u8, 105u8, 110u8, 103u8, 32u8, 102u8, 111u8,
114u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 46u8, 0u8, 61u8, 1u8, 32u8,
87u8, 104u8, 101u8, 110u8, 32u8, 97u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8,
32u8, 105u8, 115u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8, 98u8, 121u8,
32u8, 99u8, 97u8, 108u8, 108u8, 105u8, 110u8, 103u8, 32u8, 96u8, 115u8, 101u8, 97u8, 108u8, 95u8,
116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 96u8, 32u8, 105u8, 116u8, 32u8,
98u8, 101u8, 99u8, 111u8, 109u8, 101u8, 115u8, 32u8, 105u8, 110u8, 97u8, 99u8, 99u8, 101u8,
115u8, 115u8, 105u8, 98u8, 108u8, 101u8, 77u8, 1u8, 32u8, 105u8, 109u8, 109u8, 101u8, 100u8,
105u8, 97u8, 116u8, 101u8, 108u8, 121u8, 44u8, 32u8, 98u8, 117u8, 116u8, 32u8, 116u8, 104u8,
101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8, 111u8, 102u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8,
101u8, 109u8, 115u8, 32u8, 105u8, 116u8, 32u8, 104u8, 97u8, 115u8, 32u8, 97u8, 99u8, 99u8, 117u8,
109u8, 117u8, 108u8, 97u8, 116u8, 101u8, 100u8, 32u8, 105u8, 115u8, 32u8, 112u8, 101u8, 114u8,
102u8, 111u8, 114u8, 109u8, 101u8, 100u8, 41u8, 1u8, 32u8, 108u8, 97u8, 116u8, 101u8, 114u8,
46u8, 32u8, 84u8, 104u8, 101u8, 32u8, 99u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 32u8,
105u8, 115u8, 32u8, 112u8, 117u8, 116u8, 32u8, 105u8, 110u8, 116u8, 111u8, 32u8, 116u8, 104u8,
101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8, 32u8, 113u8, 117u8, 101u8,
117u8, 101u8, 46u8, 32u8, 84u8, 104u8, 105u8, 115u8, 32u8, 100u8, 101u8, 102u8, 105u8, 110u8,
101u8, 115u8, 32u8, 104u8, 111u8, 119u8, 32u8, 109u8, 97u8, 110u8, 121u8, 93u8, 1u8, 32u8, 99u8,
111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8,
32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 100u8, 32u8, 117u8, 112u8, 32u8, 97u8, 116u8, 32u8,
116u8, 104u8, 101u8, 32u8, 115u8, 97u8, 109u8, 101u8, 32u8, 116u8, 105u8, 109u8, 101u8, 46u8,
32u8, 73u8, 102u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8,
32u8, 105u8, 115u8, 32u8, 114u8, 101u8, 97u8, 99u8, 104u8, 101u8, 100u8, 32u8, 96u8, 115u8,
101u8, 97u8, 108u8, 95u8, 116u8, 101u8, 114u8, 109u8, 105u8, 110u8, 97u8, 116u8, 101u8, 96u8,
21u8, 1u8, 32u8, 119u8, 105u8, 108u8, 108u8, 32u8, 102u8, 97u8, 105u8, 108u8, 46u8, 32u8, 84u8,
104u8, 101u8, 32u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 32u8, 109u8, 117u8, 115u8, 116u8,
32u8, 98u8, 101u8, 32u8, 114u8, 101u8, 116u8, 114u8, 105u8, 101u8, 100u8, 32u8, 105u8, 110u8,
32u8, 97u8, 32u8, 108u8, 97u8, 116u8, 101u8, 114u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8,
105u8, 110u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 115u8, 101u8, 46u8, 0u8, 184u8,
32u8, 84u8, 104u8, 101u8, 32u8, 114u8, 101u8, 97u8, 115u8, 111u8, 110u8, 115u8, 32u8, 102u8,
111u8, 114u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
101u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 100u8, 101u8, 112u8, 116u8, 104u8, 32u8,
97u8, 114u8, 101u8, 58u8, 0u8, 89u8, 1u8, 32u8, 49u8, 46u8, 32u8, 84u8, 104u8, 101u8, 32u8,
113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8, 105u8, 110u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 110u8, 32u8, 111u8, 114u8, 100u8, 101u8, 114u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 112u8, 101u8, 114u8, 115u8, 105u8, 115u8, 116u8,
101u8, 110u8, 116u8, 32u8, 98u8, 101u8, 116u8, 119u8, 101u8, 101u8, 110u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 115u8, 46u8, 32u8, 87u8, 101u8, 32u8, 119u8, 97u8, 110u8, 116u8, 32u8, 116u8,
111u8, 32u8, 108u8, 105u8, 109u8, 105u8, 116u8, 180u8, 32u8, 9u8, 116u8, 104u8, 101u8, 32u8,
97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8, 111u8, 114u8,
97u8, 103u8, 101u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8,
32u8, 99u8, 111u8, 110u8, 115u8, 117u8, 109u8, 101u8, 100u8, 46u8, 77u8, 1u8, 32u8, 50u8, 46u8,
32u8, 84u8, 104u8, 101u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 32u8, 105u8, 115u8, 32u8,
115u8, 116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 97u8, 32u8, 118u8, 101u8,
99u8, 116u8, 111u8, 114u8, 32u8, 97u8, 110u8, 100u8, 32u8, 110u8, 101u8, 101u8, 100u8, 115u8,
32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8, 101u8, 100u8,
32u8, 97u8, 115u8, 32u8, 97u8, 32u8, 119u8, 104u8, 111u8, 108u8, 101u8, 32u8, 119u8, 104u8,
101u8, 110u8, 32u8, 114u8, 101u8, 97u8, 100u8, 105u8, 110u8, 103u8, 69u8, 1u8, 9u8, 9u8, 105u8,
116u8, 32u8, 97u8, 116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 101u8, 110u8, 100u8, 32u8, 111u8,
102u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 32u8, 76u8,
111u8, 110u8, 103u8, 101u8, 114u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 115u8, 32u8, 116u8,
97u8, 107u8, 101u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8,
116u8, 32u8, 116u8, 111u8, 32u8, 100u8, 101u8, 99u8, 111u8, 100u8, 101u8, 32u8, 97u8, 110u8,
100u8, 32u8, 104u8, 101u8, 110u8, 99u8, 101u8, 232u8, 9u8, 9u8, 108u8, 105u8, 109u8, 105u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8,
102u8, 32u8, 105u8, 116u8, 101u8, 109u8, 115u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8,
97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 101u8, 100u8, 32u8,
112u8, 101u8, 114u8, 32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 46u8, 76u8, 68u8, 101u8, 108u8,
101u8, 116u8, 105u8, 111u8, 110u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 76u8, 105u8, 109u8,
105u8, 116u8, 32u8, 32u8, 0u8, 136u8, 82u8, 106u8, 116u8, 0u8, 0u8, 0u8, 24u8, 77u8, 1u8, 32u8,
84u8, 104u8, 101u8, 32u8, 109u8, 97u8, 120u8, 105u8, 109u8, 117u8, 109u8, 32u8, 97u8, 109u8,
111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8,
32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 99u8, 97u8, 110u8, 32u8, 98u8, 101u8, 32u8, 99u8, 111u8,
110u8, 115u8, 117u8, 109u8, 101u8, 100u8, 32u8, 112u8, 101u8, 114u8, 32u8, 98u8, 108u8, 111u8,
99u8, 107u8, 32u8, 102u8, 111u8, 114u8, 32u8, 108u8, 97u8, 122u8, 121u8, 32u8, 116u8, 114u8,
105u8, 101u8, 32u8, 114u8, 101u8, 109u8, 111u8, 118u8, 97u8, 108u8, 46u8, 0u8, 93u8, 1u8, 32u8,
84u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8,
119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8, 105u8, 115u8,
32u8, 100u8, 101u8, 100u8, 105u8, 99u8, 97u8, 116u8, 101u8, 100u8, 32u8, 112u8, 101u8, 114u8,
32u8, 98u8, 108u8, 111u8, 99u8, 107u8, 32u8, 116u8, 111u8, 32u8, 119u8, 111u8, 114u8, 107u8,
32u8, 111u8, 110u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8,
111u8, 110u8, 32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 46u8, 32u8, 76u8, 97u8, 114u8, 103u8,
101u8, 114u8, 69u8, 1u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 115u8, 32u8, 97u8, 108u8, 108u8,
111u8, 119u8, 32u8, 109u8, 111u8, 114u8, 101u8, 32u8, 116u8, 114u8, 105u8, 101u8, 32u8, 107u8,
101u8, 121u8, 115u8, 32u8, 116u8, 111u8, 32u8, 98u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8,
116u8, 101u8, 100u8, 32u8, 105u8, 110u8, 32u8, 101u8, 97u8, 99u8, 104u8, 32u8, 98u8, 108u8,
111u8, 99u8, 107u8, 32u8, 98u8, 117u8, 116u8, 32u8, 114u8, 101u8, 100u8, 117u8, 99u8, 101u8,
32u8, 116u8, 104u8, 101u8, 32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8,
65u8, 1u8, 32u8, 119u8, 101u8, 105u8, 103u8, 104u8, 116u8, 32u8, 116u8, 104u8, 97u8, 116u8, 32u8,
105u8, 115u8, 32u8, 108u8, 101u8, 102u8, 116u8, 32u8, 102u8, 111u8, 114u8, 32u8, 116u8, 114u8,
97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8, 115u8, 46u8, 32u8, 83u8, 101u8,
101u8, 32u8, 91u8, 96u8, 83u8, 101u8, 108u8, 102u8, 58u8, 58u8, 68u8, 101u8, 108u8, 101u8, 116u8,
105u8, 111u8, 110u8, 81u8, 117u8, 101u8, 117u8, 101u8, 68u8, 101u8, 112u8, 116u8, 104u8, 96u8,
93u8, 32u8, 102u8, 111u8, 114u8, 32u8, 109u8, 111u8, 114u8, 101u8, 152u8, 32u8, 105u8, 110u8,
102u8, 111u8, 114u8, 109u8, 97u8, 116u8, 105u8, 111u8, 110u8, 32u8, 97u8, 98u8, 111u8, 117u8,
116u8, 32u8, 116u8, 104u8, 101u8, 32u8, 100u8, 101u8, 108u8, 101u8, 116u8, 105u8, 111u8, 110u8,
32u8, 113u8, 117u8, 101u8, 117u8, 101u8, 46u8, 56u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8,
116u8, 80u8, 101u8, 114u8, 66u8, 121u8, 116u8, 101u8, 24u8, 64u8, 96u8, 234u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 20u8, 17u8, 1u8, 32u8, 84u8, 104u8, 101u8,
32u8, 97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
97u8, 99u8, 104u8, 32u8, 98u8, 121u8, 116u8, 101u8, 32u8, 111u8, 102u8, 32u8, 115u8, 116u8,
111u8, 114u8, 97u8, 103u8, 101u8, 46u8, 0u8, 28u8, 32u8, 35u8, 32u8, 78u8, 111u8, 116u8, 101u8,
0u8, 41u8, 1u8, 32u8, 67u8, 104u8, 97u8, 110u8, 103u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8,
105u8, 115u8, 32u8, 118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8,
110u8, 32u8, 101u8, 120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 99u8, 104u8, 97u8,
105u8, 110u8, 32u8, 109u8, 105u8, 103u8, 104u8, 116u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8,
97u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 105u8, 103u8, 114u8,
97u8, 116u8, 105u8, 111u8, 110u8, 46u8, 56u8, 68u8, 101u8, 112u8, 111u8, 115u8, 105u8, 116u8,
80u8, 101u8, 114u8, 73u8, 116u8, 101u8, 109u8, 24u8, 64u8, 240u8, 73u8, 2u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 20u8, 5u8, 1u8, 32u8, 84u8, 104u8, 101u8, 32u8,
97u8, 109u8, 111u8, 117u8, 110u8, 116u8, 32u8, 111u8, 102u8, 32u8, 98u8, 97u8, 108u8, 97u8,
110u8, 99u8, 101u8, 32u8, 97u8, 32u8, 99u8, 97u8, 108u8, 108u8, 101u8, 114u8, 32u8, 104u8, 97u8,
115u8, 32u8, 116u8, 111u8, 32u8, 112u8, 97u8, 121u8, 32u8, 102u8, 111u8, 114u8, 32u8, 101u8,
97u8, 99u8, 104u8, 32u8, 115u8, 116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 105u8, 116u8,
101u8, 109u8, 46u8, 0u8, 28u8, 32u8, 35u8, 32u8, 78u8, 111u8, 116u8, 101u8, 0u8, 41u8, 1u8, 32u8,
67u8, 104u8, 97u8, 110u8, 103u8, 105u8, 110u8, 103u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
118u8, 97u8, 108u8, 117u8, 101u8, 32u8, 102u8, 111u8, 114u8, 32u8, 97u8, 110u8, 32u8, 101u8,
120u8, 105u8, 115u8, 116u8, 105u8, 110u8, 103u8, 32u8, 99u8, 104u8, 97u8, 105u8, 110u8, 32u8,
109u8, 105u8, 103u8, 104u8, 116u8, 32u8, 110u8, 101u8, 101u8, 100u8, 32u8, 97u8, 32u8, 115u8,
116u8, 111u8, 114u8, 97u8, 103u8, 101u8, 32u8, 109u8, 105u8, 103u8, 114u8, 97u8, 116u8, 105u8,
111u8, 110u8, 46u8, 1u8, 201u8, 10u8, 46u8, 68u8, 80u8, 111u8, 108u8, 121u8, 109u8, 101u8, 115u8,
104u8, 67u8, 111u8, 110u8, 116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 1u8, 36u8, 67u8, 111u8, 110u8,
116u8, 114u8, 97u8, 99u8, 116u8, 115u8, 0u8, 1u8, 53u8, 8u8, 1u8, 89u8, 4u8, 0u8, 1u8, 205u8,
10u8, 47u8, 32u8, 80u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 1u8, 32u8, 80u8, 114u8,
101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 8u8, 36u8, 83u8, 116u8, 97u8, 116u8, 117u8, 115u8, 70u8,
111u8, 114u8, 0u8, 1u8, 4u8, 6u8, 36u8, 209u8, 10u8, 4u8, 0u8, 4u8, 144u8, 32u8, 84u8, 104u8,
101u8, 32u8, 114u8, 101u8, 113u8, 117u8, 101u8, 115u8, 116u8, 32u8, 115u8, 116u8, 97u8, 116u8,
117u8, 115u8, 32u8, 111u8, 102u8, 32u8, 97u8, 32u8, 103u8, 105u8, 118u8, 101u8, 110u8, 32u8,
104u8, 97u8, 115u8, 104u8, 46u8, 44u8, 80u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8,
70u8, 111u8, 114u8, 0u8, 1u8, 4u8, 6u8, 36u8, 217u8, 10u8, 4u8, 0u8, 4u8, 148u8, 32u8, 84u8,
104u8, 101u8, 32u8, 112u8, 114u8, 101u8, 105u8, 109u8, 97u8, 103u8, 101u8, 115u8, 32u8, 115u8,
116u8, 111u8, 114u8, 101u8, 100u8, 32u8, 98u8, 121u8, 32u8, 116u8, 104u8, 105u8, 115u8, 32u8,
112u8, 97u8, 108u8, 108u8, 101u8, 116u8, 46u8, 1u8, 57u8, 8u8, 1u8, 93u8, 4u8, 0u8, 1u8, 221u8,
10u8, 48u8, 36u8, 84u8, 101u8, 115u8, 116u8, 85u8, 116u8, 105u8, 108u8, 115u8, 1u8, 36u8, 84u8,
101u8, 115u8, 116u8, 85u8, 116u8, 105u8, 108u8, 115u8, 0u8, 1u8, 61u8, 8u8, 1u8, 97u8, 4u8, 0u8,
1u8, 225u8, 10u8, 50u8, 229u8, 10u8, 4u8, 32u8, 64u8, 67u8, 104u8, 101u8, 99u8, 107u8, 83u8,
112u8, 101u8, 99u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8, 237u8, 10u8, 16u8, 56u8,
67u8, 104u8, 101u8, 99u8, 107u8, 84u8, 120u8, 86u8, 101u8, 114u8, 115u8, 105u8, 111u8, 110u8,
241u8, 10u8, 16u8, 48u8, 67u8, 104u8, 101u8, 99u8, 107u8, 71u8, 101u8, 110u8, 101u8, 115u8,
105u8, 115u8, 245u8, 10u8, 36u8, 56u8, 67u8, 104u8, 101u8, 99u8, 107u8, 77u8, 111u8, 114u8,
116u8, 97u8, 108u8, 105u8, 116u8, 121u8, 249u8, 10u8, 36u8, 40u8, 67u8, 104u8, 101u8, 99u8,
107u8, 78u8, 111u8, 110u8, 99u8, 101u8, 1u8, 11u8, 49u8, 1u8, 44u8, 67u8, 104u8, 101u8, 99u8,
107u8, 87u8, 101u8, 105u8, 103u8, 104u8, 116u8, 5u8, 11u8, 49u8, 1u8, 96u8, 67u8, 104u8, 97u8,
114u8, 103u8, 101u8, 84u8, 114u8, 97u8, 110u8, 115u8, 97u8, 99u8, 116u8, 105u8, 111u8, 110u8,
80u8, 97u8, 121u8, 109u8, 101u8, 110u8, 116u8, 13u8, 11u8, 49u8, 1u8, 68u8, 83u8, 116u8, 111u8,
114u8, 101u8, 67u8, 97u8, 108u8, 108u8, 77u8, 101u8, 116u8, 97u8, 100u8, 97u8, 116u8, 97u8, 17u8,
11u8, 49u8, 1u8, 21u8, 11u8,
];
::lazy_static::lazy_static! { pub static ref API_METADATA : :: polymesh_api_client :: frame_metadata :: v14 :: RuntimeMetadataV14 = :: polymesh_api_client :: frame_metadata :: v14 :: RuntimeMetadataV14 :: decode (& mut & API_METADATA_BYTES [..]) . expect ("Shouldn't be able to fail") ; }
#[allow(dead_code, unused_imports, non_camel_case_types)]
pub mod types {
use super::WrappedCall;
pub mod pallet_statistics {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Set the active asset stat_types."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `stat_types` - the new stat types to replace any existing types."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `StatTypeLimitReached` - too many stat types enabled for the `asset`."]
#[doc = "- `CannotRemoveStatTypeInUse` - can not remove a stat type that is in use by transfer conditions."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
#[codec(index = 0u8)]
set_active_asset_stats {
asset: polymesh_primitives::statistics::AssetScope,
stat_types: std::collections::BTreeSet<polymesh_primitives::statistics::StatType>,
},
#[doc = "Allow a trusted issuer to init/resync ticker/company stats."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `stat_type` - stat type to update."]
#[doc = "- `values` - Updated values for `stat_type`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `StatTypeMissing` - `stat_type` is not enabled for the `asset`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
#[codec(index = 1u8)]
batch_update_asset_stats {
asset: polymesh_primitives::statistics::AssetScope,
stat_type: polymesh_primitives::statistics::StatType,
values: std::collections::BTreeSet<polymesh_primitives::statistics::StatUpdate>,
},
#[doc = "Set asset transfer compliance rules."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `transfer_conditions` - the new transfer condition to replace any existing conditions."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `TransferConditionLimitReached` - too many transfer condititon enabled for `asset`."]
#[doc = "- `StatTypeMissing` - a transfer condition requires a stat type that is not enabled for the `asset`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
#[codec(index = 2u8)]
set_asset_transfer_compliance {
asset: polymesh_primitives::statistics::AssetScope,
transfer_conditions:
std::collections::BTreeSet<polymesh_primitives::transfer_compliance::TransferCondition>,
},
#[doc = "Set/unset entities exempt from an asset's transfer compliance rules."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `exempt_key.asset`."]
#[doc = "- `is_exempt` - enable/disable exemption for `entities`."]
#[doc = "- `exempt_key` - the asset and stat type to exempt the `entities` from."]
#[doc = "- `entities` - the entities to set/unset the exemption for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
#[codec(index = 3u8)]
set_entities_exempt {
is_exempt: bool,
exempt_key: polymesh_primitives::transfer_compliance::TransferConditionExemptKey,
entities: std::collections::BTreeSet<polymesh_primitives::identity_id::IdentityId>,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Statistics module errors."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Transfer not allowed."]
#[codec(index = 0u8)]
InvalidTransfer,
#[doc = "StatType is not enabled."]
#[codec(index = 1u8)]
StatTypeMissing,
#[doc = "StatType is needed by TransferCondition."]
#[codec(index = 2u8)]
StatTypeNeededByTransferCondition,
#[doc = "A Stattype is in use and can't be removed."]
#[codec(index = 3u8)]
CannotRemoveStatTypeInUse,
#[doc = "The limit of StatTypes allowed for an asset has been reached."]
#[codec(index = 4u8)]
StatTypeLimitReached,
#[doc = "The limit of TransferConditions allowed for an asset has been reached."]
#[codec(index = 5u8)]
TransferConditionLimitReached,
}
}
pub mod sp_core {
use super::*;
pub mod offchain {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct OpaqueMultiaddr(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct OpaqueNetworkState {
pub peer_id: sp_core::OpaquePeerId,
pub external_addresses: Vec<sp_core::offchain::OpaqueMultiaddr>,
}
}
pub mod ed25519 {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))]
pub [u8; 64usize],
);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub [u8; 32usize]);
}
pub mod crypto {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct KeyTypeId(pub [u8; 4usize]);
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AccountId32(pub [u8; 32usize]);
}
pub mod ecdsa {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))]
pub [u8; 65usize],
);
}
pub mod sr25519 {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub [u8; 32usize]);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))]
pub [u8; 64usize],
);
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct OpaquePeerId(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Void {}
}
pub mod pallet_bridge {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum BridgeTxStatus {
#[codec(index = 0u8)]
Absent,
#[codec(index = 1u8)]
Pending(u8),
#[codec(index = 2u8)]
Frozen,
#[codec(index = 3u8)]
Timelocked,
#[codec(index = 4u8)]
Handled,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Changes the controller account as admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 0u8)]
change_controller {
controller: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Changes the bridge admin key."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 1u8)]
change_admin {
admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Changes the timelock period."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 2u8)]
change_timelock { timelock: u32 },
#[doc = "Freezes transaction handling in the bridge module if it is not already frozen. When the"]
#[doc = "bridge is frozen, attempted transactions get postponed instead of getting handled."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 3u8)]
freeze,
#[doc = "Unfreezes transaction handling in the bridge module if it is frozen."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 4u8)]
unfreeze,
#[doc = "Changes the bridge limits."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `DivisionByZero` if `duration` is zero."]
#[codec(index = 5u8)]
change_bridge_limit { amount: u128, duration: u32 },
#[doc = "Changes the bridge limit exempted list."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 6u8)]
change_bridge_exempted {
exempted: Vec<(polymesh_primitives::identity_id::IdentityId, bool)>,
},
#[doc = "Forces handling a transaction by bypassing the bridge limit and timelock."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `NoValidCdd` if `bridge_tx.recipient` does not have a valid CDD claim."]
#[codec(index = 7u8)]
force_handle_bridge_tx {
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Proposes a vector of bridge transactions. The vector is processed until the first"]
#[doc = "proposal which causes an error, in which case the error is returned and the rest of"]
#[doc = "proposals are not processed."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `ControllerNotSet` if `Controllers` was not set."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`500_000_000 + 7_000_000 * bridge_txs.len()`"]
#[codec(index = 8u8)]
batch_propose_bridge_tx {
bridge_txs:
Vec<pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>>,
},
#[doc = "Proposes a bridge transaction, which amounts to making a multisig proposal for the"]
#[doc = "bridge transaction if the transaction is new or approving an existing proposal if the"]
#[doc = "transaction has already been proposed."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `ControllerNotSet` if `Controllers` was not set."]
#[codec(index = 9u8)]
propose_bridge_tx {
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Handles an approved bridge transaction proposal."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadCaller` if `origin` is not `Self::controller` or `Self::admin`."]
#[doc = "- `TimelockedTx` if the transaction status is `Timelocked`."]
#[doc = "- `ProposalAlreadyHandled` if the transaction status is `Handled`."]
#[codec(index = 10u8)]
handle_bridge_tx {
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Freezes given bridge transactions."]
#[doc = "If any bridge txn is already handled then this function will just ignore it and process next one."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`400_000_000 + 2_000_000 * bridge_txs.len()`"]
#[codec(index = 11u8)]
freeze_txs {
bridge_txs:
Vec<pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>>,
},
#[doc = "Unfreezes given bridge transactions."]
#[doc = "If any bridge txn is already handled then this function will just ignore it and process next one."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`400_000_000 + 7_000_000 * bridge_txs.len()`"]
#[codec(index = 12u8)]
unfreeze_txs {
bridge_txs:
Vec<pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>>,
},
#[doc = "Root callable extrinsic, used as an internal call to handle a scheduled timelocked bridge transaction."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `BadOrigin` if `origin` is not root."]
#[doc = "- `ProposalAlreadyHandled` if transaction status is `Handled`."]
#[doc = "- `FrozenTx` if transaction status is `Frozen`."]
#[codec(index = 13u8)]
handle_scheduled_bridge_tx {
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Add a freeze admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 14u8)]
add_freeze_admin {
freeze_admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Remove a freeze admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[codec(index = 15u8)]
remove_freeze_admin {
freeze_admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Remove given bridge transactions."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `NotFrozen` if a tx in `bridge_txs` is not frozen."]
#[codec(index = 16u8)]
remove_txs {
bridge_txs:
Vec<pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>>,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BridgeTxDetail<BlockNumber> {
pub amount: u128,
pub status: pallet_bridge::BridgeTxStatus,
pub execution_block: BlockNumber,
pub tx_hash: primitive_types::H256,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId, BlockNumber> {
#[doc = "Confirmation of a signer set change."]
#[codec(index = 0u8)]
ControllerChanged(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "Confirmation of Admin change."]
#[codec(index = 1u8)]
AdminChanged(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "Confirmation of default timelock change."]
#[codec(index = 2u8)]
TimelockChanged(polymesh_primitives::identity_id::IdentityId, BlockNumber),
#[doc = "Confirmation of POLYX upgrade on Polymesh from POLY tokens on Ethereum."]
#[codec(index = 3u8)]
Bridged(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
),
#[doc = "Notification of freezing the bridge."]
#[codec(index = 4u8)]
Frozen(polymesh_primitives::identity_id::IdentityId),
#[doc = "Notification of unfreezing the bridge."]
#[codec(index = 5u8)]
Unfrozen(polymesh_primitives::identity_id::IdentityId),
#[doc = "Notification of freezing a transaction."]
#[codec(index = 6u8)]
FrozenTx(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
),
#[doc = "Notification of unfreezing a transaction."]
#[codec(index = 7u8)]
UnfrozenTx(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
),
#[doc = "Exemption status of an identity has been updated."]
#[codec(index = 8u8)]
ExemptedUpdated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
bool,
),
#[doc = "Bridge limit has been updated."]
#[codec(index = 9u8)]
BridgeLimitUpdated(
polymesh_primitives::identity_id::IdentityId,
u128,
BlockNumber,
),
#[doc = "An event emitted after a vector of transactions is handled. The parameter is a vector of"]
#[doc = "tuples of recipient account, its nonce, and the status of the processed transaction."]
#[codec(index = 10u8)]
TxsHandled(Vec<(AccountId, BlockNumber, pallet_bridge::HandledTxStatus)>),
#[doc = "Bridge Tx Scheduled."]
#[codec(index = 11u8)]
BridgeTxScheduled(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
BlockNumber,
),
#[doc = "Failed to schedule Bridge Tx."]
#[codec(index = 12u8)]
BridgeTxScheduleFailed(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
Vec<u8>,
),
#[doc = "A new freeze admin has been added."]
#[codec(index = 13u8)]
FreezeAdminAdded(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "A freeze admin has been removed."]
#[codec(index = 14u8)]
FreezeAdminRemoved(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "Notification of removing a transaction."]
#[codec(index = 15u8)]
TxRemoved(
polymesh_primitives::identity_id::IdentityId,
pallet_bridge::BridgeTx<AccountId>,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BridgeTx<Account> {
pub nonce: u32,
pub recipient: Account,
pub amount: u128,
pub tx_hash: primitive_types::H256,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The bridge controller address is not set."]
#[codec(index = 0u8)]
ControllerNotSet,
#[doc = "The origin is not the controller or the admin address."]
#[codec(index = 1u8)]
BadCaller,
#[doc = "The origin is not the admin address."]
#[codec(index = 2u8)]
BadAdmin,
#[doc = "The recipient DID has no valid CDD."]
#[codec(index = 3u8)]
NoValidCdd,
#[doc = "The bridge transaction proposal has already been handled and the funds minted."]
#[codec(index = 4u8)]
ProposalAlreadyHandled,
#[doc = "Unauthorized to perform an operation."]
#[codec(index = 5u8)]
Unauthorized,
#[doc = "The bridge is already frozen."]
#[codec(index = 6u8)]
Frozen,
#[doc = "The bridge is not frozen."]
#[codec(index = 7u8)]
NotFrozen,
#[doc = "The transaction is frozen."]
#[codec(index = 8u8)]
FrozenTx,
#[doc = "The identity's minted total has reached the bridge limit."]
#[codec(index = 9u8)]
BridgeLimitReached,
#[doc = "The identity's minted total has overflowed."]
#[codec(index = 10u8)]
Overflow,
#[doc = "The block interval duration is zero. Cannot divide."]
#[codec(index = 11u8)]
DivisionByZero,
#[doc = "The transaction is timelocked."]
#[codec(index = 12u8)]
TimelockedTx,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum HandledTxStatus {
#[codec(index = 0u8)]
Success,
#[codec(index = 1u8)]
Error(Vec<u8>),
}
}
pub mod pallet_compliance_manager {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Adds a compliance requirement to an asset's compliance by ticker."]
#[doc = "If the compliance requirement is a duplicate, it does nothing."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = "* sender_conditions - Sender transfer conditions."]
#[doc = "* receiver_conditions - Receiver transfer conditions."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 0u8)]
add_compliance_requirement {
ticker: polymesh_primitives::ticker::Ticker,
sender_conditions: Vec<polymesh_primitives::condition::Condition>,
receiver_conditions: Vec<polymesh_primitives::condition::Condition>,
},
#[doc = "Removes a compliance requirement from an asset's compliance."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = "* id - Compliance requirement id which is need to be removed"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 1u8)]
remove_compliance_requirement {
ticker: polymesh_primitives::ticker::Ticker,
id: u32,
},
#[doc = "Replaces an asset's compliance by ticker with a new compliance."]
#[doc = ""]
#[doc = "Compliance requirements will be sorted (ascending by id) before"]
#[doc = "replacing the current requirements."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `ticker` - the asset ticker,"]
#[doc = "* `asset_compliance - the new asset compliance."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `Unauthorized` if `origin` is not the owner of the ticker."]
#[doc = "* `DuplicateAssetCompliance` if `asset_compliance` contains multiple entries with the same `requirement_id`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 2u8)]
replace_asset_compliance {
ticker: polymesh_primitives::ticker::Ticker,
asset_compliance: Vec<polymesh_primitives::compliance_manager::ComplianceRequirement>,
},
#[doc = "Removes an asset's compliance"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 3u8)]
reset_asset_compliance {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Pauses the verification of conditions for `ticker` during transfers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 4u8)]
pause_asset_compliance {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Resumes the verification of conditions for `ticker` during transfers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 5u8)]
resume_asset_compliance {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Adds another default trusted claim issuer at the ticker level."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* issuer - IdentityId of the trusted claim issuer."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 6u8)]
add_default_trusted_claim_issuer {
ticker: polymesh_primitives::ticker::Ticker,
issuer: polymesh_primitives::condition::TrustedIssuer,
},
#[doc = "Removes the given `issuer` from the set of default trusted claim issuers at the ticker level."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* issuer - IdentityId of the trusted claim issuer."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 7u8)]
remove_default_trusted_claim_issuer {
ticker: polymesh_primitives::ticker::Ticker,
issuer: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Modify an existing compliance requirement of a given ticker."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* new_req - Compliance requirement."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 8u8)]
change_compliance_requirement {
ticker: polymesh_primitives::ticker::Ticker,
new_req: polymesh_primitives::compliance_manager::ComplianceRequirement,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "User is not authorized."]
#[codec(index = 0u8)]
Unauthorized,
#[doc = "Did not exist"]
#[codec(index = 1u8)]
DidNotExist,
#[doc = "Compliance requirement id doesn't exist"]
#[codec(index = 2u8)]
InvalidComplianceRequirementId,
#[doc = "Issuer exist but trying to add it again"]
#[codec(index = 3u8)]
IncorrectOperationOnTrustedIssuer,
#[doc = "There are duplicate compliance requirements."]
#[codec(index = 4u8)]
DuplicateComplianceRequirements,
#[doc = "The worst case scenario of the compliance requirement is too complex"]
#[codec(index = 5u8)]
ComplianceRequirementTooComplex,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "Emitted when new compliance requirement is created."]
#[doc = "(caller DID, Ticker, ComplianceRequirement)."]
#[codec(index = 0u8)]
ComplianceRequirementCreated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::compliance_manager::ComplianceRequirement,
),
#[doc = "Emitted when a compliance requirement is removed."]
#[doc = "(caller DID, Ticker, requirement_id)."]
#[codec(index = 1u8)]
ComplianceRequirementRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
u32,
),
#[doc = "Emitted when an asset compliance is replaced."]
#[doc = "Parameters: caller DID, ticker, new asset compliance."]
#[codec(index = 2u8)]
AssetComplianceReplaced(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
Vec<polymesh_primitives::compliance_manager::ComplianceRequirement>,
),
#[doc = "Emitted when an asset compliance of a ticker is reset."]
#[doc = "(caller DID, Ticker)."]
#[codec(index = 3u8)]
AssetComplianceReset(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "Emitted when an asset compliance for a given ticker gets resume."]
#[doc = "(caller DID, Ticker)."]
#[codec(index = 4u8)]
AssetComplianceResumed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "Emitted when an asset compliance for a given ticker gets paused."]
#[doc = "(caller DID, Ticker)."]
#[codec(index = 5u8)]
AssetCompliancePaused(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "Emitted when compliance requirement get modified/change."]
#[doc = "(caller DID, Ticker, ComplianceRequirement)."]
#[codec(index = 6u8)]
ComplianceRequirementChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::compliance_manager::ComplianceRequirement,
),
#[doc = "Emitted when default claim issuer list for a given ticker gets added."]
#[doc = "(caller DID, Ticker, Added TrustedIssuer)."]
#[codec(index = 7u8)]
TrustedDefaultClaimIssuerAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::condition::TrustedIssuer,
),
#[doc = "Emitted when default claim issuer list for a given ticker get removed."]
#[doc = "(caller DID, Ticker, Removed TrustedIssuer)."]
#[codec(index = 8u8)]
TrustedDefaultClaimIssuerRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
),
}
}
pub mod sp_runtime {
use super::*;
pub mod multiaddress {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum MultiAddress<AccountId, AccountIndex> {
#[codec(index = 0u8)]
Id(AccountId),
#[codec(index = 1u8)]
Index(#[codec(compact)] AccountIndex),
#[codec(index = 2u8)]
Raw(Vec<u8>),
#[codec(index = 3u8)]
Address32([u8; 32usize]),
#[codec(index = 4u8)]
Address20([u8; 20usize]),
}
}
pub mod traits {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BlakeTwo256();
}
pub mod generic {
use super::*;
pub mod era {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Era {
#[codec(index = 0u8)]
Immortal,
#[codec(index = 1u8)]
Mortal1(u8),
#[codec(index = 2u8)]
Mortal2(u8),
#[codec(index = 3u8)]
Mortal3(u8),
#[codec(index = 4u8)]
Mortal4(u8),
#[codec(index = 5u8)]
Mortal5(u8),
#[codec(index = 6u8)]
Mortal6(u8),
#[codec(index = 7u8)]
Mortal7(u8),
#[codec(index = 8u8)]
Mortal8(u8),
#[codec(index = 9u8)]
Mortal9(u8),
#[codec(index = 10u8)]
Mortal10(u8),
#[codec(index = 11u8)]
Mortal11(u8),
#[codec(index = 12u8)]
Mortal12(u8),
#[codec(index = 13u8)]
Mortal13(u8),
#[codec(index = 14u8)]
Mortal14(u8),
#[codec(index = 15u8)]
Mortal15(u8),
#[codec(index = 16u8)]
Mortal16(u8),
#[codec(index = 17u8)]
Mortal17(u8),
#[codec(index = 18u8)]
Mortal18(u8),
#[codec(index = 19u8)]
Mortal19(u8),
#[codec(index = 20u8)]
Mortal20(u8),
#[codec(index = 21u8)]
Mortal21(u8),
#[codec(index = 22u8)]
Mortal22(u8),
#[codec(index = 23u8)]
Mortal23(u8),
#[codec(index = 24u8)]
Mortal24(u8),
#[codec(index = 25u8)]
Mortal25(u8),
#[codec(index = 26u8)]
Mortal26(u8),
#[codec(index = 27u8)]
Mortal27(u8),
#[codec(index = 28u8)]
Mortal28(u8),
#[codec(index = 29u8)]
Mortal29(u8),
#[codec(index = 30u8)]
Mortal30(u8),
#[codec(index = 31u8)]
Mortal31(u8),
#[codec(index = 32u8)]
Mortal32(u8),
#[codec(index = 33u8)]
Mortal33(u8),
#[codec(index = 34u8)]
Mortal34(u8),
#[codec(index = 35u8)]
Mortal35(u8),
#[codec(index = 36u8)]
Mortal36(u8),
#[codec(index = 37u8)]
Mortal37(u8),
#[codec(index = 38u8)]
Mortal38(u8),
#[codec(index = 39u8)]
Mortal39(u8),
#[codec(index = 40u8)]
Mortal40(u8),
#[codec(index = 41u8)]
Mortal41(u8),
#[codec(index = 42u8)]
Mortal42(u8),
#[codec(index = 43u8)]
Mortal43(u8),
#[codec(index = 44u8)]
Mortal44(u8),
#[codec(index = 45u8)]
Mortal45(u8),
#[codec(index = 46u8)]
Mortal46(u8),
#[codec(index = 47u8)]
Mortal47(u8),
#[codec(index = 48u8)]
Mortal48(u8),
#[codec(index = 49u8)]
Mortal49(u8),
#[codec(index = 50u8)]
Mortal50(u8),
#[codec(index = 51u8)]
Mortal51(u8),
#[codec(index = 52u8)]
Mortal52(u8),
#[codec(index = 53u8)]
Mortal53(u8),
#[codec(index = 54u8)]
Mortal54(u8),
#[codec(index = 55u8)]
Mortal55(u8),
#[codec(index = 56u8)]
Mortal56(u8),
#[codec(index = 57u8)]
Mortal57(u8),
#[codec(index = 58u8)]
Mortal58(u8),
#[codec(index = 59u8)]
Mortal59(u8),
#[codec(index = 60u8)]
Mortal60(u8),
#[codec(index = 61u8)]
Mortal61(u8),
#[codec(index = 62u8)]
Mortal62(u8),
#[codec(index = 63u8)]
Mortal63(u8),
#[codec(index = 64u8)]
Mortal64(u8),
#[codec(index = 65u8)]
Mortal65(u8),
#[codec(index = 66u8)]
Mortal66(u8),
#[codec(index = 67u8)]
Mortal67(u8),
#[codec(index = 68u8)]
Mortal68(u8),
#[codec(index = 69u8)]
Mortal69(u8),
#[codec(index = 70u8)]
Mortal70(u8),
#[codec(index = 71u8)]
Mortal71(u8),
#[codec(index = 72u8)]
Mortal72(u8),
#[codec(index = 73u8)]
Mortal73(u8),
#[codec(index = 74u8)]
Mortal74(u8),
#[codec(index = 75u8)]
Mortal75(u8),
#[codec(index = 76u8)]
Mortal76(u8),
#[codec(index = 77u8)]
Mortal77(u8),
#[codec(index = 78u8)]
Mortal78(u8),
#[codec(index = 79u8)]
Mortal79(u8),
#[codec(index = 80u8)]
Mortal80(u8),
#[codec(index = 81u8)]
Mortal81(u8),
#[codec(index = 82u8)]
Mortal82(u8),
#[codec(index = 83u8)]
Mortal83(u8),
#[codec(index = 84u8)]
Mortal84(u8),
#[codec(index = 85u8)]
Mortal85(u8),
#[codec(index = 86u8)]
Mortal86(u8),
#[codec(index = 87u8)]
Mortal87(u8),
#[codec(index = 88u8)]
Mortal88(u8),
#[codec(index = 89u8)]
Mortal89(u8),
#[codec(index = 90u8)]
Mortal90(u8),
#[codec(index = 91u8)]
Mortal91(u8),
#[codec(index = 92u8)]
Mortal92(u8),
#[codec(index = 93u8)]
Mortal93(u8),
#[codec(index = 94u8)]
Mortal94(u8),
#[codec(index = 95u8)]
Mortal95(u8),
#[codec(index = 96u8)]
Mortal96(u8),
#[codec(index = 97u8)]
Mortal97(u8),
#[codec(index = 98u8)]
Mortal98(u8),
#[codec(index = 99u8)]
Mortal99(u8),
#[codec(index = 100u8)]
Mortal100(u8),
#[codec(index = 101u8)]
Mortal101(u8),
#[codec(index = 102u8)]
Mortal102(u8),
#[codec(index = 103u8)]
Mortal103(u8),
#[codec(index = 104u8)]
Mortal104(u8),
#[codec(index = 105u8)]
Mortal105(u8),
#[codec(index = 106u8)]
Mortal106(u8),
#[codec(index = 107u8)]
Mortal107(u8),
#[codec(index = 108u8)]
Mortal108(u8),
#[codec(index = 109u8)]
Mortal109(u8),
#[codec(index = 110u8)]
Mortal110(u8),
#[codec(index = 111u8)]
Mortal111(u8),
#[codec(index = 112u8)]
Mortal112(u8),
#[codec(index = 113u8)]
Mortal113(u8),
#[codec(index = 114u8)]
Mortal114(u8),
#[codec(index = 115u8)]
Mortal115(u8),
#[codec(index = 116u8)]
Mortal116(u8),
#[codec(index = 117u8)]
Mortal117(u8),
#[codec(index = 118u8)]
Mortal118(u8),
#[codec(index = 119u8)]
Mortal119(u8),
#[codec(index = 120u8)]
Mortal120(u8),
#[codec(index = 121u8)]
Mortal121(u8),
#[codec(index = 122u8)]
Mortal122(u8),
#[codec(index = 123u8)]
Mortal123(u8),
#[codec(index = 124u8)]
Mortal124(u8),
#[codec(index = 125u8)]
Mortal125(u8),
#[codec(index = 126u8)]
Mortal126(u8),
#[codec(index = 127u8)]
Mortal127(u8),
#[codec(index = 128u8)]
Mortal128(u8),
#[codec(index = 129u8)]
Mortal129(u8),
#[codec(index = 130u8)]
Mortal130(u8),
#[codec(index = 131u8)]
Mortal131(u8),
#[codec(index = 132u8)]
Mortal132(u8),
#[codec(index = 133u8)]
Mortal133(u8),
#[codec(index = 134u8)]
Mortal134(u8),
#[codec(index = 135u8)]
Mortal135(u8),
#[codec(index = 136u8)]
Mortal136(u8),
#[codec(index = 137u8)]
Mortal137(u8),
#[codec(index = 138u8)]
Mortal138(u8),
#[codec(index = 139u8)]
Mortal139(u8),
#[codec(index = 140u8)]
Mortal140(u8),
#[codec(index = 141u8)]
Mortal141(u8),
#[codec(index = 142u8)]
Mortal142(u8),
#[codec(index = 143u8)]
Mortal143(u8),
#[codec(index = 144u8)]
Mortal144(u8),
#[codec(index = 145u8)]
Mortal145(u8),
#[codec(index = 146u8)]
Mortal146(u8),
#[codec(index = 147u8)]
Mortal147(u8),
#[codec(index = 148u8)]
Mortal148(u8),
#[codec(index = 149u8)]
Mortal149(u8),
#[codec(index = 150u8)]
Mortal150(u8),
#[codec(index = 151u8)]
Mortal151(u8),
#[codec(index = 152u8)]
Mortal152(u8),
#[codec(index = 153u8)]
Mortal153(u8),
#[codec(index = 154u8)]
Mortal154(u8),
#[codec(index = 155u8)]
Mortal155(u8),
#[codec(index = 156u8)]
Mortal156(u8),
#[codec(index = 157u8)]
Mortal157(u8),
#[codec(index = 158u8)]
Mortal158(u8),
#[codec(index = 159u8)]
Mortal159(u8),
#[codec(index = 160u8)]
Mortal160(u8),
#[codec(index = 161u8)]
Mortal161(u8),
#[codec(index = 162u8)]
Mortal162(u8),
#[codec(index = 163u8)]
Mortal163(u8),
#[codec(index = 164u8)]
Mortal164(u8),
#[codec(index = 165u8)]
Mortal165(u8),
#[codec(index = 166u8)]
Mortal166(u8),
#[codec(index = 167u8)]
Mortal167(u8),
#[codec(index = 168u8)]
Mortal168(u8),
#[codec(index = 169u8)]
Mortal169(u8),
#[codec(index = 170u8)]
Mortal170(u8),
#[codec(index = 171u8)]
Mortal171(u8),
#[codec(index = 172u8)]
Mortal172(u8),
#[codec(index = 173u8)]
Mortal173(u8),
#[codec(index = 174u8)]
Mortal174(u8),
#[codec(index = 175u8)]
Mortal175(u8),
#[codec(index = 176u8)]
Mortal176(u8),
#[codec(index = 177u8)]
Mortal177(u8),
#[codec(index = 178u8)]
Mortal178(u8),
#[codec(index = 179u8)]
Mortal179(u8),
#[codec(index = 180u8)]
Mortal180(u8),
#[codec(index = 181u8)]
Mortal181(u8),
#[codec(index = 182u8)]
Mortal182(u8),
#[codec(index = 183u8)]
Mortal183(u8),
#[codec(index = 184u8)]
Mortal184(u8),
#[codec(index = 185u8)]
Mortal185(u8),
#[codec(index = 186u8)]
Mortal186(u8),
#[codec(index = 187u8)]
Mortal187(u8),
#[codec(index = 188u8)]
Mortal188(u8),
#[codec(index = 189u8)]
Mortal189(u8),
#[codec(index = 190u8)]
Mortal190(u8),
#[codec(index = 191u8)]
Mortal191(u8),
#[codec(index = 192u8)]
Mortal192(u8),
#[codec(index = 193u8)]
Mortal193(u8),
#[codec(index = 194u8)]
Mortal194(u8),
#[codec(index = 195u8)]
Mortal195(u8),
#[codec(index = 196u8)]
Mortal196(u8),
#[codec(index = 197u8)]
Mortal197(u8),
#[codec(index = 198u8)]
Mortal198(u8),
#[codec(index = 199u8)]
Mortal199(u8),
#[codec(index = 200u8)]
Mortal200(u8),
#[codec(index = 201u8)]
Mortal201(u8),
#[codec(index = 202u8)]
Mortal202(u8),
#[codec(index = 203u8)]
Mortal203(u8),
#[codec(index = 204u8)]
Mortal204(u8),
#[codec(index = 205u8)]
Mortal205(u8),
#[codec(index = 206u8)]
Mortal206(u8),
#[codec(index = 207u8)]
Mortal207(u8),
#[codec(index = 208u8)]
Mortal208(u8),
#[codec(index = 209u8)]
Mortal209(u8),
#[codec(index = 210u8)]
Mortal210(u8),
#[codec(index = 211u8)]
Mortal211(u8),
#[codec(index = 212u8)]
Mortal212(u8),
#[codec(index = 213u8)]
Mortal213(u8),
#[codec(index = 214u8)]
Mortal214(u8),
#[codec(index = 215u8)]
Mortal215(u8),
#[codec(index = 216u8)]
Mortal216(u8),
#[codec(index = 217u8)]
Mortal217(u8),
#[codec(index = 218u8)]
Mortal218(u8),
#[codec(index = 219u8)]
Mortal219(u8),
#[codec(index = 220u8)]
Mortal220(u8),
#[codec(index = 221u8)]
Mortal221(u8),
#[codec(index = 222u8)]
Mortal222(u8),
#[codec(index = 223u8)]
Mortal223(u8),
#[codec(index = 224u8)]
Mortal224(u8),
#[codec(index = 225u8)]
Mortal225(u8),
#[codec(index = 226u8)]
Mortal226(u8),
#[codec(index = 227u8)]
Mortal227(u8),
#[codec(index = 228u8)]
Mortal228(u8),
#[codec(index = 229u8)]
Mortal229(u8),
#[codec(index = 230u8)]
Mortal230(u8),
#[codec(index = 231u8)]
Mortal231(u8),
#[codec(index = 232u8)]
Mortal232(u8),
#[codec(index = 233u8)]
Mortal233(u8),
#[codec(index = 234u8)]
Mortal234(u8),
#[codec(index = 235u8)]
Mortal235(u8),
#[codec(index = 236u8)]
Mortal236(u8),
#[codec(index = 237u8)]
Mortal237(u8),
#[codec(index = 238u8)]
Mortal238(u8),
#[codec(index = 239u8)]
Mortal239(u8),
#[codec(index = 240u8)]
Mortal240(u8),
#[codec(index = 241u8)]
Mortal241(u8),
#[codec(index = 242u8)]
Mortal242(u8),
#[codec(index = 243u8)]
Mortal243(u8),
#[codec(index = 244u8)]
Mortal244(u8),
#[codec(index = 245u8)]
Mortal245(u8),
#[codec(index = 246u8)]
Mortal246(u8),
#[codec(index = 247u8)]
Mortal247(u8),
#[codec(index = 248u8)]
Mortal248(u8),
#[codec(index = 249u8)]
Mortal249(u8),
#[codec(index = 250u8)]
Mortal250(u8),
#[codec(index = 251u8)]
Mortal251(u8),
#[codec(index = 252u8)]
Mortal252(u8),
#[codec(index = 253u8)]
Mortal253(u8),
#[codec(index = 254u8)]
Mortal254(u8),
#[codec(index = 255u8)]
Mortal255(u8),
}
}
pub mod digest {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Digest {
pub logs: Vec<sp_runtime::generic::digest::DigestItem>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum DigestItem {
#[codec(index = 6u8)]
PreRuntime([u8; 4usize], Vec<u8>),
#[codec(index = 4u8)]
Consensus([u8; 4usize], Vec<u8>),
#[codec(index = 5u8)]
Seal([u8; 4usize], Vec<u8>),
#[codec(index = 0u8)]
Other(Vec<u8>),
#[codec(index = 8u8)]
RuntimeEnvironmentUpdated,
}
}
pub mod unchecked_extrinsic {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct UncheckedExtrinsic<Address, Call, Signature, Extra>(
pub Vec<u8>,
core::marker::PhantomData<(Address, Call, Signature, Extra)>,
);
}
pub mod header {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Header<Number, Hash> {
pub parent_hash: primitive_types::H256,
#[codec(compact)]
pub number: Number,
pub state_root: primitive_types::H256,
pub extrinsics_root: primitive_types::H256,
pub digest: sp_runtime::generic::digest::Digest,
_phantom_data: core::marker::PhantomData<Hash>,
}
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TransactionalError {
#[codec(index = 0u8)]
LimitReached,
#[codec(index = 1u8)]
NoLayer,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TokenError {
#[codec(index = 0u8)]
NoFunds,
#[codec(index = 1u8)]
WouldDie,
#[codec(index = 2u8)]
BelowMinimum,
#[codec(index = 3u8)]
CannotCreate,
#[codec(index = 4u8)]
UnknownAsset,
#[codec(index = 5u8)]
Frozen,
#[codec(index = 6u8)]
Unsupported,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ArithmeticError {
#[codec(index = 0u8)]
Underflow,
#[codec(index = 1u8)]
Overflow,
#[codec(index = 2u8)]
DivisionByZero,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ModuleError {
pub index: u8,
pub error: [u8; 4usize],
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum DispatchError {
#[codec(index = 0u8)]
Other,
#[codec(index = 1u8)]
CannotLookup,
#[codec(index = 2u8)]
BadOrigin,
#[codec(index = 3u8)]
Module(sp_runtime::ModuleError),
#[codec(index = 4u8)]
ConsumerRemaining,
#[codec(index = 5u8)]
NoProviders,
#[codec(index = 6u8)]
TooManyConsumers,
#[codec(index = 7u8)]
Token(sp_runtime::TokenError),
#[codec(index = 8u8)]
Arithmetic(sp_runtime::ArithmeticError),
#[codec(index = 9u8)]
Transactional(sp_runtime::TransactionalError),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum MultiSignature {
#[codec(index = 0u8)]
Ed25519(sp_core::ed25519::Signature),
#[codec(index = 1u8)]
Sr25519(sp_core::sr25519::Signature),
#[codec(index = 2u8)]
Ecdsa(sp_core::ecdsa::Signature),
}
}
pub mod pallet_treasury {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "It transfers balances from treasury to each of beneficiaries and the specific amount"]
#[doc = "for each of them."]
#[doc = ""]
#[doc = "# Error"]
#[doc = "* `BadOrigin`: Only root can execute transaction."]
#[doc = "* `InsufficientBalance`: If treasury balances is not enough to cover all beneficiaries."]
#[doc = "* `InvalidIdentity`: If one of the beneficiaries has an invalid identity."]
#[codec(index = 0u8)]
disbursement {
beneficiaries: Vec<polymesh_primitives::Beneficiary<u128>>,
},
#[doc = "It transfers the specific `amount` from `origin` account into treasury."]
#[doc = ""]
#[doc = "Only accounts which are associated to an identity can make a donation to treasury."]
#[codec(index = 1u8)]
reimbursement { amount: u128 },
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Balance, AccountId> {
#[doc = "Disbursement to a target Identity."]
#[doc = ""]
#[doc = "(treasury identity, target identity, target primary key, amount)"]
#[codec(index = 0u8)]
TreasuryDisbursement(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
AccountId,
Balance,
),
#[doc = "Disbursement to a target Identity failed."]
#[doc = ""]
#[doc = "(treasury identity, target identity, target primary key, amount)"]
#[codec(index = 1u8)]
TreasuryDisbursementFailed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
AccountId,
Balance,
),
#[doc = "Treasury reimbursement."]
#[doc = ""]
#[doc = "(source identity, amount)"]
#[codec(index = 2u8)]
TreasuryReimbursement(polymesh_primitives::identity_id::IdentityId, Balance),
}
#[doc = "Error for the treasury module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Proposer's balance is too low."]
#[codec(index = 0u8)]
InsufficientBalance,
#[doc = "Invalid identity for disbursement."]
#[codec(index = 1u8)]
InvalidIdentity,
}
}
pub mod pallet_utility {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[doc = "Events type."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "Batch of dispatches did not complete fully."]
#[doc = "Includes a vector of event counts for each dispatch and"]
#[doc = "the index of the first failing dispatch as well as the error."]
#[codec(index = 0u8)]
BatchInterrupted(Vec<u32>, (u32, sp_runtime::DispatchError)),
#[doc = "Batch of dispatches did not complete fully."]
#[doc = "Includes a vector of event counts for each call and"]
#[doc = "a vector of any failed dispatches with their indices and associated error."]
#[codec(index = 1u8)]
BatchOptimisticFailed(Vec<u32>, Vec<(u32, sp_runtime::DispatchError)>),
#[doc = "Batch of dispatches completed fully with no error."]
#[doc = "Includes a vector of event counts for each dispatch."]
#[codec(index = 2u8)]
BatchCompleted(Vec<u32>),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct UniqueCall<C> {
pub nonce: u64,
pub call: ::std::boxed::Box<C>,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute until the first one fails and then stop."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin. To determine the success of the batch, an"]
#[doc = "event is deposited. If a call failed and the batch was interrupted, then the"]
#[doc = "`BatchInterrupted` event is deposited, along with the number of successful calls made"]
#[doc = "and the error of the failed call. If all were successful, then the `BatchCompleted`"]
#[doc = "event is deposited."]
#[codec(index = 0u8)]
batch {
calls: Vec<polymesh_runtime_develop::runtime::Call>,
},
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute all calls, in order, stopping at the first failure,"]
#[doc = "in which case the state changes are rolled back."]
#[doc = "On failure, an event `BatchInterrupted(failure_idx, error)` is deposited."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin."]
#[doc = "To determine the success of the batch, an event is deposited."]
#[doc = "If any call failed, then `BatchInterrupted` is deposited."]
#[doc = "If all were successful, then the `BatchCompleted` event is deposited."]
#[codec(index = 1u8)]
batch_atomic {
calls: Vec<polymesh_runtime_develop::runtime::Call>,
},
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute all calls, in order, irrespective of failures."]
#[doc = "Any failures will be available in a `BatchOptimisticFailed` event."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin."]
#[doc = "To determine the success of the batch, an event is deposited."]
#[doc = "If any call failed, then `BatchOptimisticFailed` is deposited,"]
#[doc = "with a vector of event counts for each call as well as a vector"]
#[doc = "of errors."]
#[doc = "If all were successful, then the `BatchCompleted` event is deposited."]
#[codec(index = 2u8)]
batch_optimistic {
calls: Vec<polymesh_runtime_develop::runtime::Call>,
},
#[doc = "Relay a call for a target from an origin"]
#[doc = ""]
#[doc = "Relaying in this context refers to the ability of origin to make a call on behalf of"]
#[doc = "target."]
#[doc = ""]
#[doc = "Fees are charged to origin"]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `target`: Account to be relayed"]
#[doc = "- `signature`: Signature from target authorizing the relay"]
#[doc = "- `call`: Call to be relayed on behalf of target"]
#[doc = ""]
#[codec(index = 3u8)]
relay_tx {
target: ::polymesh_api_client::sp_core::crypto::AccountId32,
signature: sp_runtime::MultiSignature,
call: pallet_utility::UniqueCall<polymesh_runtime_develop::runtime::Call>,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Offchain signature is invalid"]
#[codec(index = 0u8)]
InvalidSignature,
#[doc = "Target does not have a valid CDD"]
#[codec(index = 1u8)]
TargetCddMissing,
#[doc = "Provided nonce was invalid"]
#[doc = "If the provided nonce < current nonce, the call was already executed"]
#[doc = "If the provided nonce > current nonce, the call(s) before the current failed to execute"]
#[codec(index = 2u8)]
InvalidNonce,
}
}
pub mod confidential_identity_v2 {
use super::*;
pub mod sign {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature {
pub r: [u8; 32usize],
pub s: [u8; 32usize],
}
}
pub mod claim_proofs {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ScopeClaimProof {
pub proof_scope_id_wellformed: confidential_identity_v2::sign::Signature,
pub proof_scope_id_cdd_id_match: confidential_identity_v2::claim_proofs::ZkProofData,
pub scope_id: [u8; 32usize],
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ZkProofData {
pub challenge_responses: [[u8; 32usize]; 2usize],
pub subtract_expressions_res: [u8; 32usize],
pub blinded_scope_did_hash: [u8; 32usize],
}
}
}
pub mod pallet_external_agents {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "An AG with the given `AGId` did not exist for the `Ticker`."]
#[codec(index = 0u8)]
NoSuchAG,
#[doc = "The agent is not authorized to call the current extrinsic."]
#[codec(index = 1u8)]
UnauthorizedAgent,
#[doc = "The provided `agent` is already an agent for the `Ticker`."]
#[codec(index = 2u8)]
AlreadyAnAgent,
#[doc = "The provided `agent` is not an agent for the `Ticker`."]
#[codec(index = 3u8)]
NotAnAgent,
#[doc = "This agent is the last full one, and it's being removed,"]
#[doc = "making the asset orphaned."]
#[codec(index = 4u8)]
RemovingLastFullAgent,
#[doc = "The caller's secondary key does not have the required asset permission."]
#[codec(index = 5u8)]
SecondaryKeyNotAuthorizedForAsset,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Creates a custom agent group (AG) for the given `ticker`."]
#[doc = ""]
#[doc = "The AG will have the permissions as given by `perms`."]
#[doc = "This new AG is then assigned `id = AGIdSequence::get() + 1` as its `AGId`,"]
#[doc = "which you can use as `AgentGroup::Custom(id)` when adding agents for `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` to add the custom group for."]
#[doc = "- `perms` that the new AG will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `TooLong` if `perms` had some string or list length that was too long."]
#[doc = "- `CounterOverflow` if `AGIdSequence::get() + 1` would exceed `u32::MAX`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 0u8)]
create_group {
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
},
#[doc = "Updates the permissions of the custom AG identified by `id`, for the given `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` the custom AG belongs to."]
#[doc = "- `id` for the custom AG within `ticker`."]
#[doc = "- `perms` to update the custom AG to."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `TooLong` if `perms` had some string or list length that was too long."]
#[doc = "- `NoSuchAG` if `id` does not identify a custom AG."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 1u8)]
set_group_permissions {
ticker: polymesh_primitives::ticker::Ticker,
id: polymesh_primitives::agent::AGId,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
},
#[doc = "Remove the given `agent` from `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` that has the `agent` to remove."]
#[doc = "- `agent` of `ticker` to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `NotAnAgent` if `agent` is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if `agent` is the last full one."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 2u8)]
remove_agent {
ticker: polymesh_primitives::ticker::Ticker,
agent: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Abdicate agentship for `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` of which the caller is an agent."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NotAnAgent` if the caller is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if the caller is the last full agent."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 3u8)]
abdicate {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Change the agent group that `agent` belongs to in `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` that has the `agent`."]
#[doc = "- `agent` of `ticker` to change the group for."]
#[doc = "- `group` that `agent` will belong to in `ticker`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `NoSuchAG` if `id` does not identify a custom AG."]
#[doc = "- `NotAnAgent` if `agent` is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if `agent` was a `Full` one and is being demoted."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 4u8)]
change_group {
ticker: polymesh_primitives::ticker::Ticker,
agent: polymesh_primitives::identity_id::IdentityId,
group: polymesh_primitives::agent::AgentGroup,
},
#[doc = "Accept an authorization by an agent \"Alice\" who issued `auth_id`"]
#[doc = "to also become an agent of the ticker Alice specified."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `auth_id` identifying the authorization to accept."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AuthorizationError::Invalid` if `auth_id` does not exist for the given caller."]
#[doc = "- `AuthorizationError::Expired` if `auth_id` is for an auth that has expired."]
#[doc = "- `AuthorizationError::BadType` if `auth_id` was not for a `BecomeAgent` auth type."]
#[doc = "- `UnauthorizedAgent` if \"Alice\" is not permissioned to provide the auth."]
#[doc = "- `NoSuchAG` if the group referred to a custom that does not exist."]
#[doc = "- `AlreadyAnAgent` if the caller is already an agent of the ticker."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[codec(index = 5u8)]
accept_become_agent { auth_id: u64 },
#[doc = "Utility extrinsic to batch `create_group` and `add_auth`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 6u8)]
create_group_and_add_auth {
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
target: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
},
#[doc = "Utility extrinsic to batch `create_group` and `change_group` for custom groups only."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
#[codec(index = 7u8)]
create_and_change_custom_group {
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
agent: polymesh_primitives::identity_id::IdentityId,
},
}
}
pub mod pallet_protocol_fee {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "The protocol fee of an operation."]
#[codec(index = 0u8)]
FeeSet(polymesh_primitives::identity_id::IdentityId, u128),
#[doc = "The fee coefficient."]
#[codec(index = 1u8)]
CoefficientSet(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::PosRatio,
),
#[doc = "Fee charged."]
#[codec(index = 2u8)]
FeeCharged(AccountId, u128),
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Changes the fee coefficient for the root origin."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - Only root allowed."]
#[codec(index = 0u8)]
change_coefficient {
coefficient: polymesh_primitives::PosRatio,
},
#[doc = "Changes the a base fee for the root origin."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - Only root allowed."]
#[codec(index = 1u8)]
change_base_fee {
op: polymesh_common_utilities::protocol_fee::ProtocolOp,
base_fee: u128,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Insufficient account balance to pay the fee."]
#[codec(index = 0u8)]
InsufficientAccountBalance,
#[doc = "Not able to handled the imbalances"]
#[codec(index = 1u8)]
UnHandledImbalances,
#[doc = "Insufficient subsidy balance to pay the fee."]
#[codec(index = 2u8)]
InsufficientSubsidyBalance,
}
}
pub mod pallet_pips {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId, BlockNumber> {
#[doc = "Pruning Historical PIPs is enabled or disabled (caller DID, old value, new value)"]
#[codec(index = 0u8)]
HistoricalPipsPruned(polymesh_primitives::identity_id::IdentityId, bool, bool),
#[doc = "A PIP was made with a `Balance` stake."]
#[doc = ""]
#[doc = "# Parameters:"]
#[doc = ""]
#[doc = "Caller DID, Proposer, PIP ID, deposit, URL, description, expiry time, proposal data."]
#[codec(index = 1u8)]
ProposalCreated(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::Proposer<AccountId>,
pallet_pips::PipId,
u128,
Option<polymesh_primitives::Url>,
Option<pallet_pips::PipDescription>,
polymesh_common_utilities::MaybeBlock<BlockNumber>,
pallet_pips::ProposalData,
),
#[doc = "Triggered each time the state of a proposal is amended"]
#[codec(index = 2u8)]
ProposalStateUpdated(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
pallet_pips::ProposalState,
),
#[doc = "`AccountId` voted `bool` on the proposal referenced by `PipId`"]
#[codec(index = 3u8)]
Voted(
polymesh_primitives::identity_id::IdentityId,
AccountId,
pallet_pips::PipId,
bool,
u128,
),
#[doc = "Pip has been closed, bool indicates whether data is pruned"]
#[codec(index = 4u8)]
PipClosed(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
bool,
),
#[doc = "Execution of a PIP has been scheduled at specific block."]
#[codec(index = 5u8)]
ExecutionScheduled(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
BlockNumber,
),
#[doc = "Default enactment period (in blocks) has been changed."]
#[doc = "(caller DID, old period, new period)"]
#[codec(index = 6u8)]
DefaultEnactmentPeriodChanged(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
BlockNumber,
),
#[doc = "Minimum deposit amount modified"]
#[doc = "(caller DID, old amount, new amount)"]
#[codec(index = 7u8)]
MinimumProposalDepositChanged(polymesh_primitives::identity_id::IdentityId, u128, u128),
#[doc = "Amount of blocks after which a pending PIP expires."]
#[doc = "(caller DID, old expiry, new expiry)"]
#[codec(index = 8u8)]
PendingPipExpiryChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_common_utilities::MaybeBlock<BlockNumber>,
polymesh_common_utilities::MaybeBlock<BlockNumber>,
),
#[doc = "The maximum times a PIP can be skipped was changed."]
#[doc = "(caller DID, old value, new value)"]
#[codec(index = 9u8)]
MaxPipSkipCountChanged(polymesh_primitives::identity_id::IdentityId, u8, u8),
#[doc = "The maximum number of active PIPs was changed."]
#[doc = "(caller DID, old value, new value)"]
#[codec(index = 10u8)]
ActivePipLimitChanged(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
BlockNumber,
),
#[doc = "Refund proposal"]
#[doc = "(id, total amount)"]
#[codec(index = 11u8)]
ProposalRefund(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
u128,
),
#[doc = "The snapshot was cleared."]
#[codec(index = 12u8)]
SnapshotCleared(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::SnapshotId,
),
#[doc = "A new snapshot was taken."]
#[codec(index = 13u8)]
SnapshotTaken(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::SnapshotId,
Vec<pallet_pips::SnapshottedPip>,
),
#[doc = "A PIP in the snapshot queue was skipped."]
#[doc = "(gc_did, pip_id, new_skip_count)"]
#[codec(index = 14u8)]
PipSkipped(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
u8,
),
#[doc = "Results (e.g., approved, rejected, and skipped), were enacted for some PIPs."]
#[doc = "(gc_did, snapshot_id_opt, skipped_pips_with_new_count, rejected_pips, approved_pips)"]
#[codec(index = 15u8)]
SnapshotResultsEnacted(
polymesh_primitives::identity_id::IdentityId,
Option<pallet_pips::SnapshotId>,
Vec<(pallet_pips::PipId, u8)>,
Vec<pallet_pips::PipId>,
Vec<pallet_pips::PipId>,
),
#[doc = "Scheduling of the PIP for execution failed in the scheduler pallet."]
#[codec(index = 16u8)]
ExecutionSchedulingFailed(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
BlockNumber,
),
#[doc = "The PIP has been scheduled for expiry."]
#[codec(index = 17u8)]
ExpiryScheduled(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
BlockNumber,
),
#[doc = "Scheduling of the PIP for expiry failed in the scheduler pallet."]
#[codec(index = 18u8)]
ExpirySchedulingFailed(
polymesh_primitives::identity_id::IdentityId,
pallet_pips::PipId,
BlockNumber,
),
#[doc = "Cancelling the PIP execution failed in the scheduler pallet."]
#[codec(index = 19u8)]
ExecutionCancellingFailed(pallet_pips::PipId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct VotingResult {
pub ayes_count: u32,
pub ayes_stake: u128,
pub nays_count: u32,
pub nays_stake: u128,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum SnapshotResult {
#[codec(index = 0u8)]
Approve,
#[codec(index = 1u8)]
Reject,
#[codec(index = 2u8)]
Skip,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ProposalData {
#[codec(index = 0u8)]
Hash(primitive_types::H256),
#[codec(index = 1u8)]
Proposal(Vec<u8>),
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Change whether completed PIPs are pruned."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `prune` specifies whether completed PIPs should be pruned."]
#[codec(index = 0u8)]
set_prune_historical_pips { prune: bool },
#[doc = "Change the minimum proposal deposit amount required to start a proposal."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `deposit` the new min deposit required to start a proposal"]
#[codec(index = 1u8)]
set_min_proposal_deposit { deposit: u128 },
#[doc = "Change the default enactment period."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `duration` the new default enactment period it takes for a scheduled PIP to be executed."]
#[codec(index = 2u8)]
set_default_enactment_period { duration: u32 },
#[doc = "Change the amount of blocks after which a pending PIP is expired."]
#[doc = "If `expiry` is `None` then PIPs never expire."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` the block-time it takes for a still-`Pending` PIP to expire."]
#[codec(index = 3u8)]
set_pending_pip_expiry {
expiry: polymesh_common_utilities::MaybeBlock<u32>,
},
#[doc = "Change the maximum skip count (`max_pip_skip_count`)."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `max` skips before a PIP cannot be skipped by GC anymore."]
#[codec(index = 4u8)]
set_max_pip_skip_count { max: u8 },
#[doc = "Change the maximum number of active PIPs before community members cannot propose anything."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` of concurrent active PIPs."]
#[codec(index = 5u8)]
set_active_pip_limit { limit: u32 },
#[doc = "A network member creates a PIP by submitting a dispatchable which"]
#[doc = "changes the network in someway. A minimum deposit is required to open a new proposal."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposer` is either a signing key or committee."]
#[doc = " Used to understand whether this is a committee proposal and verified against `origin`."]
#[doc = "* `proposal` a dispatchable call"]
#[doc = "* `deposit` minimum deposit value, which is ignored if `proposer` is a committee."]
#[doc = "* `url` a link to a website for proposal discussion"]
#[codec(index = 6u8)]
propose {
proposal: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
deposit: u128,
url: Option<polymesh_primitives::Url>,
description: Option<pallet_pips::PipDescription>,
},
#[doc = "Vote either in favor (`aye_or_nay` == true) or against a PIP with `id`."]
#[doc = "The \"convinction\" or strength of the vote is given by `deposit`, which is reserved."]
#[doc = ""]
#[doc = "Note that `vote` is *not* additive."]
#[doc = "That is, `vote(id, true, 50)` followed by `vote(id, true, 40)`"]
#[doc = "will first reserve `50` and then refund `50 - 10`, ending up with `40` in deposit."]
#[doc = "To add atop of existing votes, you'll need `existing_deposit + addition`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id`, proposal id"]
#[doc = "* `aye_or_nay`, a bool representing for or against vote"]
#[doc = "* `deposit`, the \"conviction\" with which the vote is made."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NoSuchProposal` if `id` doesn't reference a valid PIP."]
#[doc = "* `NotFromCommunity` if proposal was made by a committee."]
#[doc = "* `IncorrectProposalState` if PIP isn't pending."]
#[doc = "* `InsufficientDeposit` if `origin` cannot reserve `deposit - old_deposit`."]
#[codec(index = 7u8)]
vote {
id: pallet_pips::PipId,
aye_or_nay: bool,
deposit: u128,
},
#[doc = "Approves the pending committee PIP given by the `id`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal isn't pending."]
#[doc = "* `NotByCommittee` if the proposal isn't by a committee."]
#[codec(index = 8u8)]
approve_committee_proposal { id: pallet_pips::PipId },
#[doc = "Rejects the PIP given by the `id`, refunding any bonded funds,"]
#[doc = "assuming it hasn't been cancelled or executed."]
#[doc = "Note that proposals scheduled-for-execution can also be rejected."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal was cancelled or executed."]
#[codec(index = 9u8)]
reject_proposal { id: pallet_pips::PipId },
#[doc = "Prune the PIP given by the `id`, refunding any funds not already refunded."]
#[doc = "The PIP may not be active"]
#[doc = ""]
#[doc = "This function is intended for storage garbage collection purposes."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal is active."]
#[codec(index = 10u8)]
prune_proposal { id: pallet_pips::PipId },
#[doc = "Updates the execution schedule of the PIP given by `id`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `until` defines the future block where the enactment period will finished."]
#[doc = " `None` value means that enactment period is going to finish in the next block."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `RescheduleNotByReleaseCoordinator` unless triggered by release coordinator."]
#[doc = "* `IncorrectProposalState` unless the proposal was in a scheduled state."]
#[codec(index = 11u8)]
reschedule_execution {
id: pallet_pips::PipId,
until: Option<u32>,
},
#[doc = "Clears the snapshot and emits the event `SnapshotCleared`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotACommitteeMember` - triggered when a non-GC-member executes the function."]
#[codec(index = 12u8)]
clear_snapshot,
#[doc = "Takes a new snapshot of the current list of active && pending PIPs."]
#[doc = "The PIPs are then sorted into a priority queue based on each PIP's weight."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotACommitteeMember` - triggered when a non-GC-member executes the function."]
#[codec(index = 13u8)]
snapshot,
#[doc = "Enacts `results` for the PIPs in the snapshot queue."]
#[doc = "The snapshot will be available for further enactments until it is cleared."]
#[doc = ""]
#[doc = "The `results` are encoded a list of `(id, result)` where `result` is applied to `id`."]
#[doc = "Note that the snapshot priority queue is encoded with the *lowest priority first*."]
#[doc = "so `results = [(id, Approve)]` will approve `SnapshotQueue[SnapshotQueue.len() - 1]`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - unless a GC voting majority executes this function."]
#[doc = "* `CannotSkipPip` - a given PIP has already been skipped too many times."]
#[doc = "* `SnapshotResultTooLarge` - on len(results) > len(snapshot_queue)."]
#[doc = "* `SnapshotIdMismatch` - if:"]
#[doc = " ```text"]
#[doc = " ∃ (i ∈ 0..SnapshotQueue.len())."]
#[doc = " results[i].0 ≠SnapshotQueue[SnapshotQueue.len() - i].id"]
#[doc = " ```"]
#[doc = " This is protects against clearing queue while GC is voting."]
#[codec(index = 14u8)]
enact_snapshot_results {
results: Vec<(pallet_pips::PipId, pallet_pips::SnapshotResult)>,
},
#[doc = "Internal dispatchable that handles execution of a PIP."]
#[codec(index = 15u8)]
execute_scheduled_pip { id: pallet_pips::PipId },
#[doc = "Internal dispatchable that handles expiration of a PIP."]
#[codec(index = 16u8)]
expire_scheduled_pip {
did: polymesh_primitives::identity_id::IdentityId,
id: pallet_pips::PipId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SnapshotMetadata<BlockNumber, AccountId> {
pub created_at: BlockNumber,
pub made_by: AccountId,
pub id: pallet_pips::SnapshotId,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DepositInfo<AccountId> {
pub owner: AccountId,
pub amount: u128,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ProposalState {
#[codec(index = 0u8)]
Pending,
#[codec(index = 1u8)]
Rejected,
#[codec(index = 2u8)]
Scheduled,
#[codec(index = 3u8)]
Failed,
#[codec(index = 4u8)]
Executed,
#[codec(index = 5u8)]
Expired,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Vote(pub bool, pub u128);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PipDescription(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SnapshotId(pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Proposer<AccountId> {
#[codec(index = 0u8)]
Community(AccountId),
#[codec(index = 1u8)]
Committee(pallet_pips::Committee),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PipsMetadata<BlockNumber> {
pub id: pallet_pips::PipId,
pub url: Option<polymesh_primitives::Url>,
pub description: Option<pallet_pips::PipDescription>,
pub created_at: BlockNumber,
pub transaction_version: BlockNumber,
pub expiry: polymesh_common_utilities::MaybeBlock<BlockNumber>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Only the GC release coordinator is allowed to reschedule proposal execution."]
#[codec(index = 0u8)]
RescheduleNotByReleaseCoordinator,
#[doc = "The given dispatchable call is not valid for this proposal."]
#[doc = "The proposal must be from the community, but isn't."]
#[codec(index = 1u8)]
NotFromCommunity,
#[doc = "The given dispatchable call is not valid for this proposal."]
#[doc = "The proposal must be by community, but isn't."]
#[codec(index = 2u8)]
NotByCommittee,
#[doc = "The current number of active (pending | scheduled) PIPs exceed the maximum"]
#[doc = "and the proposal is not by a committee."]
#[codec(index = 3u8)]
TooManyActivePips,
#[doc = "Proposer specifies an incorrect deposit"]
#[codec(index = 4u8)]
IncorrectDeposit,
#[doc = "Proposer can't afford to lock minimum deposit"]
#[codec(index = 5u8)]
InsufficientDeposit,
#[doc = "The proposal does not exist."]
#[codec(index = 6u8)]
NoSuchProposal,
#[doc = "Not part of governance committee."]
#[codec(index = 7u8)]
NotACommitteeMember,
#[doc = "When a block number is less than current block number."]
#[codec(index = 8u8)]
InvalidFutureBlockNumber,
#[doc = "When number of votes overflows."]
#[codec(index = 9u8)]
NumberOfVotesExceeded,
#[doc = "When stake amount of a vote overflows."]
#[codec(index = 10u8)]
StakeAmountOfVotesExceeded,
#[doc = "Missing current DID"]
#[codec(index = 11u8)]
MissingCurrentIdentity,
#[doc = "Proposal is not in the correct state"]
#[codec(index = 12u8)]
IncorrectProposalState,
#[doc = "When enacting snapshot results, an unskippable PIP was skipped."]
#[codec(index = 13u8)]
CannotSkipPip,
#[doc = "Tried to enact results for the snapshot queue overflowing its length."]
#[codec(index = 14u8)]
SnapshotResultTooLarge,
#[doc = "Tried to enact result for PIP with id different from that at the position in the queue."]
#[codec(index = 15u8)]
SnapshotIdMismatch,
#[doc = "Execution of a scheduled proposal failed because it is missing."]
#[codec(index = 16u8)]
ScheduledProposalDoesntExist,
#[doc = "A proposal that is not in a scheduled state cannot be executed."]
#[codec(index = 17u8)]
ProposalNotInScheduledState,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Committee {
#[codec(index = 0u8)]
Technical,
#[codec(index = 1u8)]
Upgrade,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SnapshottedPip {
pub id: pallet_pips::PipId,
pub weight: (bool, u128),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Pip<Proposal, AccountId> {
pub id: pallet_pips::PipId,
pub proposal: Proposal,
pub state: pallet_pips::ProposalState,
pub proposer: pallet_pips::Proposer<AccountId>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PipId(pub u32);
}
pub mod pallet_settlement {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum VenueType {
#[codec(index = 0u8)]
Other,
#[codec(index = 1u8)]
Distribution,
#[codec(index = 2u8)]
Sto,
#[codec(index = 3u8)]
Exchange,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Leg {
pub from: polymesh_primitives::identity_id::PortfolioId,
pub to: polymesh_primitives::identity_id::PortfolioId,
pub asset: polymesh_primitives::ticker::Ticker,
pub amount: u128,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AffirmationStatus {
#[codec(index = 0u8)]
Unknown,
#[codec(index = 1u8)]
Pending,
#[codec(index = 2u8)]
Affirmed,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Venue {
pub creator: polymesh_primitives::identity_id::IdentityId,
pub venue_type: pallet_settlement::VenueType,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum InstructionStatus {
#[codec(index = 0u8)]
Unknown,
#[codec(index = 1u8)]
Pending,
#[codec(index = 2u8)]
Failed,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ReceiptMetadata(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Errors for the Settlement module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Venue does not exist."]
#[codec(index = 0u8)]
InvalidVenue,
#[doc = "Sender does not have required permissions."]
#[codec(index = 1u8)]
Unauthorized,
#[doc = "No pending affirmation for the provided instruction."]
#[codec(index = 2u8)]
NoPendingAffirm,
#[doc = "Instruction has not been affirmed."]
#[codec(index = 3u8)]
InstructionNotAffirmed,
#[doc = "Provided instruction is not pending execution."]
#[codec(index = 4u8)]
InstructionNotPending,
#[doc = "Provided instruction is not failing execution."]
#[codec(index = 5u8)]
InstructionNotFailed,
#[doc = "Provided leg is not pending execution."]
#[codec(index = 6u8)]
LegNotPending,
#[doc = "Signer is not authorized by the venue."]
#[codec(index = 7u8)]
UnauthorizedSigner,
#[doc = "Receipt already used."]
#[codec(index = 8u8)]
ReceiptAlreadyClaimed,
#[doc = "Receipt not used yet."]
#[codec(index = 9u8)]
ReceiptNotClaimed,
#[doc = "Venue does not have required permissions."]
#[codec(index = 10u8)]
UnauthorizedVenue,
#[doc = "While affirming the transfer, system failed to lock the assets involved."]
#[codec(index = 11u8)]
FailedToLockTokens,
#[doc = "Instruction failed to execute."]
#[codec(index = 12u8)]
InstructionFailed,
#[doc = "Instruction has invalid dates"]
#[codec(index = 13u8)]
InstructionDatesInvalid,
#[doc = "Instruction's target settle block reached."]
#[codec(index = 14u8)]
InstructionSettleBlockPassed,
#[doc = "Offchain signature is invalid."]
#[codec(index = 15u8)]
InvalidSignature,
#[doc = "Sender and receiver are the same."]
#[codec(index = 16u8)]
SameSenderReceiver,
#[doc = "Portfolio in receipt does not match with portfolios provided by the user."]
#[codec(index = 17u8)]
PortfolioMismatch,
#[doc = "The provided settlement block number is in the past and cannot be used by the scheduler."]
#[codec(index = 18u8)]
SettleOnPastBlock,
#[doc = "Portfolio based actions require at least one portfolio to be provided as input."]
#[codec(index = 19u8)]
NoPortfolioProvided,
#[doc = "The current instruction affirmation status does not support the requested action."]
#[codec(index = 20u8)]
UnexpectedAffirmationStatus,
#[doc = "Scheduling of an instruction fails."]
#[codec(index = 21u8)]
FailedToSchedule,
#[doc = "Legs count should matches with the total number of legs in which given portfolio act as `from_portfolio`."]
#[codec(index = 22u8)]
LegCountTooSmall,
#[doc = "Instruction status is unknown"]
#[codec(index = 23u8)]
UnknownInstruction,
#[doc = "Maximum legs that can be in a single instruction."]
#[codec(index = 24u8)]
InstructionHasTooManyLegs,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Registers a new venue."]
#[doc = ""]
#[doc = "* `details` - Extra details about a venue"]
#[doc = "* `signers` - Array of signers that are allowed to sign receipts for this venue"]
#[doc = "* `typ` - Type of venue being created"]
#[codec(index = 0u8)]
create_venue {
details: pallet_settlement::VenueDetails,
signers: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
typ: pallet_settlement::VenueType,
},
#[doc = "Edit a venue's details."]
#[doc = ""]
#[doc = "* `id` specifies the ID of the venue to edit."]
#[doc = "* `details` specifies the updated venue details."]
#[codec(index = 1u8)]
update_venue_details {
id: pallet_settlement::VenueId,
details: pallet_settlement::VenueDetails,
},
#[doc = "Edit a venue's type."]
#[doc = ""]
#[doc = "* `id` specifies the ID of the venue to edit."]
#[doc = "* `type` specifies the new type of the venue."]
#[codec(index = 2u8)]
update_venue_type {
id: pallet_settlement::VenueId,
typ: pallet_settlement::VenueType,
},
#[doc = "Adds a new instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `venue_id` - ID of the venue this instruction belongs to."]
#[doc = "* `settlement_type` - Defines if the instruction should be settled"]
#[doc = " in the next block after receiving all affirmations or waiting till a specific block."]
#[doc = "* `trade_date` - Optional date from which people can interact with this instruction."]
#[doc = "* `value_date` - Optional date after which the instruction should be settled (not enforced)"]
#[doc = "* `legs` - Legs included in this instruction."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`950_000_000 + 1_000_000 * legs.len()`"]
#[codec(index = 3u8)]
add_instruction {
venue_id: pallet_settlement::VenueId,
settlement_type: pallet_settlement::SettlementType<u32>,
trade_date: Option<u64>,
value_date: Option<u64>,
legs: Vec<pallet_settlement::Leg>,
},
#[doc = "Adds and affirms a new instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `venue_id` - ID of the venue this instruction belongs to."]
#[doc = "* `settlement_type` - Defines if the instruction should be settled"]
#[doc = " in the next block after receiving all affirmations or waiting till a specific block."]
#[doc = "* `trade_date` - Optional date from which people can interact with this instruction."]
#[doc = "* `value_date` - Optional date after which the instruction should be settled (not enforced)"]
#[doc = "* `legs` - Legs included in this instruction."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to use in this affirmations."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 4u8)]
add_and_affirm_instruction {
venue_id: pallet_settlement::VenueId,
settlement_type: pallet_settlement::SettlementType<u32>,
trade_date: Option<u64>,
value_date: Option<u64>,
legs: Vec<pallet_settlement::Leg>,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
},
#[doc = "Provide affirmation to an existing instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id to affirm."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to affirm this instruction."]
#[doc = "* `max_legs_count` - Number of legs that need to be affirmed."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 5u8)]
affirm_instruction {
id: pallet_settlement::InstructionId,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
},
#[doc = "Withdraw an affirmation for a given instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id for that affirmation get withdrawn."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to withdraw affirmation."]
#[doc = "* `max_legs_count` - Number of legs that need to be un-affirmed."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 6u8)]
withdraw_affirmation {
id: pallet_settlement::InstructionId,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
},
#[doc = "Rejects an existing instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id to reject."]
#[doc = "* `portfolio` - Portfolio to reject the instruction."]
#[doc = "* `num_of_legs` - Number of legs in the instruction."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 7u8)]
reject_instruction {
id: pallet_settlement::InstructionId,
portfolio: polymesh_primitives::identity_id::PortfolioId,
num_of_legs: u32,
},
#[doc = "Accepts an instruction and claims a signed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = "* `receipt_uid` - Receipt ID generated by the signer."]
#[doc = "* `signer` - Signer of the receipt."]
#[doc = "* `signed_data` - Signed receipt."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to accept this instruction with"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 8u8)]
affirm_with_receipts {
id: pallet_settlement::InstructionId,
receipt_details: Vec<
pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
>,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
},
#[doc = "Claims a signed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id for the receipt."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = "* `receipt_uid` - Receipt ID generated by the signer."]
#[doc = "* `signer` - Signer of the receipt."]
#[doc = "* `signed_data` - Signed receipt."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 9u8)]
claim_receipt {
id: pallet_settlement::InstructionId,
receipt_details: pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
},
#[doc = "Unclaims a previously claimed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `instruction_id` - Target instruction id for the receipt."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 10u8)]
unclaim_receipt {
instruction_id: pallet_settlement::InstructionId,
leg_id: pallet_settlement::LegId,
},
#[doc = "Enables or disabled venue filtering for a token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `enabled` - Boolean that decides if the filtering should be enabled."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 11u8)]
set_venue_filtering {
ticker: polymesh_primitives::ticker::Ticker,
enabled: bool,
},
#[doc = "Allows additional venues to create instructions involving an asset."]
#[doc = ""]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `venues` - Array of venues that are allowed to create instructions for the token in question."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 12u8)]
allow_venues {
ticker: polymesh_primitives::ticker::Ticker,
venues: Vec<pallet_settlement::VenueId>,
},
#[doc = "Revokes permission given to venues for creating instructions involving a particular asset."]
#[doc = ""]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `venues` - Array of venues that are no longer allowed to create instructions for the token in question."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 13u8)]
disallow_venues {
ticker: polymesh_primitives::ticker::Ticker,
venues: Vec<pallet_settlement::VenueId>,
},
#[doc = "Marks a receipt issued by the caller as claimed or not claimed."]
#[doc = "This allows the receipt issuer to invalidate an already issued receipt or revalidate an already claimed receipt."]
#[doc = ""]
#[doc = "* `receipt_uid` - Unique ID of the receipt."]
#[doc = "* `validity` - New validity of the receipt."]
#[codec(index = 14u8)]
change_receipt_validity { receipt_uid: u64, validity: bool },
#[doc = "Root callable extrinsic, used as an internal call to execute a scheduled settlement instruction."]
#[codec(index = 15u8)]
execute_scheduled_instruction {
id: pallet_settlement::InstructionId,
_legs_count: u32,
},
#[doc = "Reschedules a failed instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id to reschedule."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `InstructionNotFailed` - Instruction not in a failed state or does not exist."]
#[codec(index = 16u8)]
reschedule_instruction {
id: pallet_settlement::InstructionId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instruction<Moment, BlockNumber> {
pub instruction_id: pallet_settlement::InstructionId,
pub venue_id: pallet_settlement::VenueId,
pub status: pallet_settlement::InstructionStatus,
pub settlement_type: pallet_settlement::SettlementType<BlockNumber>,
pub created_at: Option<Moment>,
pub trade_date: Option<Moment>,
pub value_date: Option<Moment>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct LegId(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct VenueId(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct VenueDetails(pub Vec<u8>);
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Moment, BlockNumber, AccountId> {
#[doc = "A new venue has been created (did, venue_id, details, type)"]
#[codec(index = 0u8)]
VenueCreated(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::VenueId,
pallet_settlement::VenueDetails,
pallet_settlement::VenueType,
),
#[doc = "An existing venue's details has been updated (did, venue_id, details)"]
#[codec(index = 1u8)]
VenueDetailsUpdated(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::VenueId,
pallet_settlement::VenueDetails,
),
#[doc = "An existing venue's type has been updated (did, venue_id, type)"]
#[codec(index = 2u8)]
VenueTypeUpdated(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::VenueId,
pallet_settlement::VenueType,
),
#[doc = "A new instruction has been created"]
#[doc = "(did, venue_id, instruction_id, settlement_type, trade_date, value_date, legs)"]
#[codec(index = 3u8)]
InstructionCreated(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::VenueId,
pallet_settlement::InstructionId,
pallet_settlement::SettlementType<BlockNumber>,
Option<Moment>,
Option<Moment>,
Vec<pallet_settlement::Leg>,
),
#[doc = "An instruction has been affirmed (did, portfolio, instruction_id)"]
#[codec(index = 4u8)]
InstructionAffirmed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioId,
pallet_settlement::InstructionId,
),
#[doc = "An affirmation has been withdrawn (did, portfolio, instruction_id)"]
#[codec(index = 5u8)]
AffirmationWithdrawn(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioId,
pallet_settlement::InstructionId,
),
#[doc = "An instruction has been rejected (did, instruction_id)"]
#[codec(index = 6u8)]
InstructionRejected(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
),
#[doc = "A receipt has been claimed (did, instruction_id, leg_id, receipt_uid, signer, receipt metadata)"]
#[codec(index = 7u8)]
ReceiptClaimed(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
pallet_settlement::LegId,
Moment,
AccountId,
pallet_settlement::ReceiptMetadata,
),
#[doc = "A receipt has been invalidated (did, signer, receipt_uid, validity)"]
#[codec(index = 8u8)]
ReceiptValidityChanged(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Moment,
bool,
),
#[doc = "A receipt has been unclaimed (did, instruction_id, leg_id, receipt_uid, signer)"]
#[codec(index = 9u8)]
ReceiptUnclaimed(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
pallet_settlement::LegId,
Moment,
AccountId,
),
#[doc = "Venue filtering has been enabled or disabled for a ticker (did, ticker, filtering_enabled)"]
#[codec(index = 10u8)]
VenueFiltering(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
bool,
),
#[doc = "Venues added to allow list (did, ticker, vec<venue_id>)"]
#[codec(index = 11u8)]
VenuesAllowed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
Vec<pallet_settlement::VenueId>,
),
#[doc = "Venues added to block list (did, ticker, vec<venue_id>)"]
#[codec(index = 12u8)]
VenuesBlocked(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
Vec<pallet_settlement::VenueId>,
),
#[doc = "Execution of a leg failed (did, instruction_id, leg_id)"]
#[codec(index = 13u8)]
LegFailedExecution(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
pallet_settlement::LegId,
),
#[doc = "Instruction failed execution (did, instruction_id)"]
#[codec(index = 14u8)]
InstructionFailed(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
),
#[doc = "Instruction executed successfully(did, instruction_id)"]
#[codec(index = 15u8)]
InstructionExecuted(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
),
#[doc = "Venue not part of the token's allow list (did, Ticker, venue_id)"]
#[codec(index = 16u8)]
VenueUnauthorized(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
pallet_settlement::VenueId,
),
#[doc = "Scheduling of instruction fails."]
#[codec(index = 17u8)]
SchedulingFailed(sp_runtime::DispatchError),
#[doc = "Instruction is rescheduled."]
#[doc = "(caller DID, instruction_id)"]
#[codec(index = 18u8)]
InstructionRescheduled(
polymesh_primitives::identity_id::IdentityId,
pallet_settlement::InstructionId,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ReceiptDetails<AccountId, OffChainSignature> {
pub receipt_uid: u64,
pub leg_id: pallet_settlement::LegId,
pub signer: AccountId,
pub signature: OffChainSignature,
pub metadata: pallet_settlement::ReceiptMetadata,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct InstructionId(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum SettlementType<BlockNumber> {
#[codec(index = 0u8)]
SettleOnAffirmation,
#[codec(index = 1u8)]
SettleOnBlock(BlockNumber),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum LegStatus<AccountId> {
#[codec(index = 0u8)]
PendingTokenLock,
#[codec(index = 1u8)]
ExecutionPending,
#[codec(index = 2u8)]
ExecutionToBeSkipped(AccountId, u64),
}
}
pub mod pallet_preimage {
use super::*;
pub mod pallet {
use super::*;
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Preimage is too large to store on-chain."]
#[codec(index = 0u8)]
TooLarge,
#[doc = "Preimage has already been noted on-chain."]
#[codec(index = 1u8)]
AlreadyNoted,
#[doc = "The user is not authorized to perform this action."]
#[codec(index = 2u8)]
NotAuthorized,
#[doc = "The preimage cannot be removed since it has not yet been noted."]
#[codec(index = 3u8)]
NotNoted,
#[doc = "A preimage may not be removed when there are outstanding requests."]
#[codec(index = 4u8)]
Requested,
#[doc = "The preimage request cannot be removed since no outstanding requests exist."]
#[codec(index = 5u8)]
NotRequested,
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A preimage has been noted."]
#[codec(index = 0u8)]
Noted { hash: primitive_types::H256 },
#[doc = "A preimage has been requested."]
#[codec(index = 1u8)]
Requested { hash: primitive_types::H256 },
#[doc = "A preimage has ben cleared."]
#[codec(index = 2u8)]
Cleared { hash: primitive_types::H256 },
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Register a preimage on-chain."]
#[doc = ""]
#[doc = "If the preimage was previously requested, no fees or deposits are taken for providing"]
#[doc = "the preimage. Otherwise, a deposit is taken proportional to the size of the preimage."]
#[codec(index = 0u8)]
note_preimage { bytes: Vec<u8> },
#[doc = "Clear an unrequested preimage from the runtime storage."]
#[codec(index = 1u8)]
unnote_preimage { hash: primitive_types::H256 },
#[doc = "Request a preimage be uploaded to the chain without paying any fees or deposits."]
#[doc = ""]
#[doc = "If the preimage requests has already been provided on-chain, we unreserve any deposit"]
#[doc = "a user may have paid, and take the control of the preimage out of their hands."]
#[codec(index = 2u8)]
request_preimage { hash: primitive_types::H256 },
#[doc = "Clear a previously made request for a preimage."]
#[doc = ""]
#[doc = "NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`."]
#[codec(index = 3u8)]
unrequest_preimage { hash: primitive_types::H256 },
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RequestStatus<AccountId, Balance> {
#[codec(index = 0u8)]
Unrequested(Option<(AccountId, Balance)>),
#[codec(index = 1u8)]
Requested(u32),
}
}
pub mod sp_consensus_slots {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Slot(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EquivocationProof<Header, Id> {
pub offender: Id,
pub slot: sp_consensus_slots::Slot,
pub first_header: Header,
pub second_header: Header,
}
}
pub mod pallet_asset {
use super::*;
pub mod checkpoint {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Creates a single checkpoint at the current time."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "- `ticker` to create the checkpoint for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `CounterOverflow` if the total checkpoint counter would overflow."]
#[codec(index = 0u8)]
create_checkpoint {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Sets the max complexity of a schedule set for an arbitrary ticker to `max_complexity`."]
#[doc = "The new maximum is not enforced retroactively,"]
#[doc = "and only applies once new schedules are made."]
#[doc = ""]
#[doc = "Must be called as a PIP (requires \"root\")."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is the root origin."]
#[doc = "- `max_complexity` allowed for an arbitrary ticker's schedule set."]
#[codec(index = 1u8)]
set_schedules_max_complexity { max_complexity: u64 },
#[doc = "Creates a schedule generating checkpoints"]
#[doc = "in the future at either a fixed time or at intervals."]
#[doc = ""]
#[doc = "The schedule starts out with `strong_ref_count(schedule_id) <- 0`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as owner of `ticker`."]
#[doc = "- `ticker` to create the schedule for."]
#[doc = "- `schedule` that will generate checkpoints."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `ScheduleDurationTooShort` if the schedule duration is too short."]
#[doc = "- `InsufficientAccountBalance` if the protocol fee could not be charged."]
#[doc = "- `CounterOverflow` if the schedule ID or total checkpoint counters would overflow."]
#[doc = "- `FailedToComputeNextCheckpoint` if the next checkpoint for `schedule` is in the past."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 2u8)]
create_schedule {
ticker: polymesh_primitives::ticker::Ticker,
schedule: pallet_asset::checkpoint::ScheduleSpec,
},
#[doc = "Removes the checkpoint schedule of an asset identified by `id`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as owner of `ticker`."]
#[doc = "- `ticker` to remove the schedule from."]
#[doc = "- `id` of the schedule, when it was created by `created_schedule`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `NoCheckpointSchedule` if `id` does not identify a schedule for this `ticker`."]
#[doc = "- `ScheduleNotRemovable` if `id` exists but is not removable."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 3u8)]
remove_schedule {
ticker: polymesh_primitives::ticker::Ticker,
id: polymesh_common_utilities::traits::checkpoint::ScheduleId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "A checkpoint schedule does not exist for the asset."]
#[codec(index = 0u8)]
NoSuchSchedule,
#[doc = "A checkpoint schedule is not removable as `ref_count(schedule_id) > 0`."]
#[codec(index = 1u8)]
ScheduleNotRemovable,
#[doc = "Failed to compute the next checkpoint."]
#[doc = "The schedule does not have any upcoming checkpoints."]
#[codec(index = 2u8)]
FailedToComputeNextCheckpoint,
#[doc = "The duration of a schedule period is too short."]
#[codec(index = 3u8)]
ScheduleDurationTooShort,
#[doc = "The set of schedules taken together are too complex."]
#[doc = "For example, they are too many, or they occurs too frequently."]
#[codec(index = 4u8)]
SchedulesTooComplex,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ScheduleSpec {
pub start: Option<u64>,
pub period: polymesh_primitives::calendar::CalendarPeriod,
pub remaining: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetOwnershipRelation {
#[codec(index = 0u8)]
NotOwned,
#[codec(index = 1u8)]
TickerOwned,
#[codec(index = 2u8)]
AssetOwned,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct TickerRegistration<U> {
pub owner: polymesh_primitives::identity_id::IdentityId,
pub expiry: Option<U>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SecurityToken {
pub total_supply: u128,
pub owner_did: polymesh_primitives::identity_id::IdentityId,
pub divisible: bool,
pub asset_type: polymesh_primitives::asset::AssetType,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ClassicTickerRegistration {
pub eth_owner: polymesh_primitives::ethereum::EthereumAddress,
pub is_created: bool,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The user is not authorized."]
#[codec(index = 0u8)]
Unauthorized,
#[doc = "The token has already been created."]
#[codec(index = 1u8)]
AssetAlreadyCreated,
#[doc = "The ticker length is over the limit."]
#[codec(index = 2u8)]
TickerTooLong,
#[doc = "The ticker has non-ascii-encoded parts."]
#[codec(index = 3u8)]
TickerNotAscii,
#[doc = "The ticker is already registered to someone else."]
#[codec(index = 4u8)]
TickerAlreadyRegistered,
#[doc = "The total supply is above the limit."]
#[codec(index = 5u8)]
TotalSupplyAboveLimit,
#[doc = "No such token."]
#[codec(index = 6u8)]
NoSuchAsset,
#[doc = "The token is already frozen."]
#[codec(index = 7u8)]
AlreadyFrozen,
#[doc = "Not an owner of the token on Ethereum."]
#[codec(index = 8u8)]
NotAnOwner,
#[doc = "An overflow while calculating the balance."]
#[codec(index = 9u8)]
BalanceOverflow,
#[doc = "An overflow while calculating the total supply."]
#[codec(index = 10u8)]
TotalSupplyOverflow,
#[doc = "An invalid granularity."]
#[codec(index = 11u8)]
InvalidGranularity,
#[doc = "The asset must be frozen."]
#[codec(index = 12u8)]
NotFrozen,
#[doc = "Transfer validation check failed."]
#[codec(index = 13u8)]
InvalidTransfer,
#[doc = "The sender balance is not sufficient."]
#[codec(index = 14u8)]
InsufficientBalance,
#[doc = "The token is already divisible."]
#[codec(index = 15u8)]
AssetAlreadyDivisible,
#[doc = "An invalid Ethereum `EcdsaSignature`."]
#[codec(index = 16u8)]
InvalidEthereumSignature,
#[doc = "The given ticker is not a classic one."]
#[codec(index = 17u8)]
NoSuchClassicTicker,
#[doc = "Registration of ticker has expired."]
#[codec(index = 18u8)]
TickerRegistrationExpired,
#[doc = "Transfers to self are not allowed"]
#[codec(index = 19u8)]
SenderSameAsReceiver,
#[doc = "The given Document does not exist."]
#[codec(index = 20u8)]
NoSuchDoc,
#[doc = "Maximum length of asset name has been exceeded."]
#[codec(index = 21u8)]
MaxLengthOfAssetNameExceeded,
#[doc = "Maximum length of the funding round name has been exceeded."]
#[codec(index = 22u8)]
FundingRoundNameMaxLengthExceeded,
#[doc = "Some `AssetIdentifier` was invalid."]
#[codec(index = 23u8)]
InvalidAssetIdentifier,
#[doc = "Investor Uniqueness claims are not allowed for this asset."]
#[codec(index = 24u8)]
InvestorUniquenessClaimNotAllowed,
#[doc = "Invalid `CustomAssetTypeId`."]
#[codec(index = 25u8)]
InvalidCustomAssetTypeId,
#[doc = "Maximum length of the asset metadata type name has been exceeded."]
#[codec(index = 26u8)]
AssetMetadataNameMaxLengthExceeded,
#[doc = "Maximum length of the asset metadata value has been exceeded."]
#[codec(index = 27u8)]
AssetMetadataValueMaxLengthExceeded,
#[doc = "Maximum length of the asset metadata type definition has been exceeded."]
#[codec(index = 28u8)]
AssetMetadataTypeDefMaxLengthExceeded,
#[doc = "Asset Metadata key is missing."]
#[codec(index = 29u8)]
AssetMetadataKeyIsMissing,
#[doc = "Asset Metadata value is locked."]
#[codec(index = 30u8)]
AssetMetadataValueIsLocked,
#[doc = "Asset Metadata Local type already exists for asset."]
#[codec(index = 31u8)]
AssetMetadataLocalKeyAlreadyExists,
#[doc = "Asset Metadata Global type already exists."]
#[codec(index = 32u8)]
AssetMetadataGlobalKeyAlreadyExists,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct TickerRegistrationConfig<U> {
pub max_ticker_length: u8,
pub registration_length: Option<U>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ClassicTickerImport {
pub eth_owner: polymesh_primitives::ethereum::EthereumAddress,
pub ticker: polymesh_primitives::ticker::Ticker,
pub is_contract: bool,
pub is_created: bool,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Registers a new ticker or extends validity of an existing ticker."]
#[doc = "NB: Ticker validity does not get carry forward when renewing ticker."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `ticker` ticker to register."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 0u8)]
register_ticker {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Accepts a ticker transfer."]
#[doc = ""]
#[doc = "Consumes the authorization `auth_id` (see `pallet_identity::consume_auth`)."]
#[doc = "NB: To reject the transfer, call remove auth function in identity module."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `auth_id` Authorization ID of ticker transfer authorization."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AuthorizationError::BadType` if `auth_id` is not a valid ticket transfer authorization."]
#[doc = ""]
#[codec(index = 1u8)]
accept_ticker_transfer { auth_id: u64 },
#[doc = "This function is used to accept a token ownership transfer."]
#[doc = "NB: To reject the transfer, call remove auth function in identity module."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `auth_id` Authorization ID of the token ownership transfer authorization."]
#[codec(index = 2u8)]
accept_asset_ownership_transfer { auth_id: u64 },
#[doc = "Initializes a new security token, with the initiating account as its owner."]
#[doc = "The total supply will initially be zero. To mint tokens, use `issue`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `name` - the name of the token."]
#[doc = "* `ticker` - the ticker symbol of the token."]
#[doc = "* `divisible` - a boolean to identify the divisibility status of the token."]
#[doc = "* `asset_type` - the asset type."]
#[doc = "* `identifiers` - a vector of asset identifiers."]
#[doc = "* `funding_round` - name of the funding round."]
#[doc = "* `disable_iu` - whether or not investor uniqueness enforcement should be disabled."]
#[doc = " This cannot be changed after creating the asset."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `InvalidAssetIdentifier` if any of `identifiers` are invalid."]
#[doc = "- `MaxLengthOfAssetNameExceeded` if `name`'s length exceeds `T::AssetNameMaxLength`."]
#[doc = "- `FundingRoundNameMaxLengthExceeded` if the name of the funding round is longer that"]
#[doc = "`T::FundingRoundNameMaxLength`."]
#[doc = "- `AssetAlreadyCreated` if asset was already created."]
#[doc = "- `TickerTooLong` if `ticker`'s length is greater than `config.max_ticker_length` chain"]
#[doc = "parameter."]
#[doc = "- `TickerNotAscii` if `ticker` is not yet registered, and contains non-ascii printable characters (from code 32 to 126) or any character after first occurrence of `\\0`."]
#[doc = ""]
#[doc = "## Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 3u8)]
create_asset {
name: polymesh_primitives::asset::AssetName,
ticker: polymesh_primitives::ticker::Ticker,
divisible: bool,
asset_type: polymesh_primitives::asset::AssetType,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
funding_round: Option<polymesh_primitives::asset::FundingRoundName>,
disable_iu: bool,
},
#[doc = "Freezes transfers and minting of a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AlreadyFrozen` if `ticker` is already frozen."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 4u8)]
freeze {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Unfreezes transfers and minting of a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the frozen token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `NotFrozen` if `ticker` is not frozen yet."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 5u8)]
unfreeze {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Renames a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `name` - the new name of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `MaxLengthOfAssetNameExceeded` if length of `name` is greater than"]
#[doc = "`T::AssetNameMaxLength`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 6u8)]
rename_asset {
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset::AssetName,
},
#[doc = "Issue, or mint, new tokens to the caller,"]
#[doc = "which must be an authorized external agent."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` of the token."]
#[doc = "* `amount` of tokens that get issued."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
#[codec(index = 7u8)]
issue {
ticker: polymesh_primitives::ticker::Ticker,
amount: u128,
},
#[doc = "Redeems existing tokens by reducing the balance of the caller's default portfolio and the total supply of the token"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `value` Amount of tokens to redeem."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `Unauthorized` If called by someone without the appropriate external agent permissions"]
#[doc = "- `InvalidGranularity` If the amount is not divisible by 10^6 for non-divisible tokens"]
#[doc = "- `InsufficientPortfolioBalance` If the caller's default portfolio doesn't have enough free balance"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
#[codec(index = 8u8)]
redeem {
ticker: polymesh_primitives::ticker::Ticker,
value: u128,
},
#[doc = "Makes an indivisible token divisible."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AssetAlreadyDivisible` if `ticker` is already divisible."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 9u8)]
make_divisible {
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Add documents for a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `docs` Documents to be attached to `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 10u8)]
add_documents {
docs: Vec<polymesh_primitives::document::Document>,
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Remove documents for a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `ids` Documents ids to be removed from `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 11u8)]
remove_documents {
ids: Vec<polymesh_primitives::document::DocumentId>,
ticker: polymesh_primitives::ticker::Ticker,
},
#[doc = "Sets the name of the current funding round."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `name` - the desired name of the current funding round."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `FundingRoundNameMaxLengthExceeded` if length of `name` is greater than"]
#[doc = "`T::FundingRoundNameMaxLength`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 12u8)]
set_funding_round {
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset::FundingRoundName,
},
#[doc = "Updates the asset identifiers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `identifiers` - the asset identifiers to be updated in the form of a vector of pairs"]
#[doc = " of `IdentifierType` and `AssetIdentifier` value."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `InvalidAssetIdentifier` if `identifiers` contains any invalid identifier."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 13u8)]
update_identifiers {
ticker: polymesh_primitives::ticker::Ticker,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
},
#[doc = "Claim a systematically reserved Polymath Classic (PMC) `ticker`"]
#[doc = "and transfer it to the `origin`'s identity."]
#[doc = ""]
#[doc = "To verify that the `origin` is in control of the Ethereum account on the books,"]
#[doc = "an `ethereum_signature` containing the `origin`'s DID as the message"]
#[doc = "must be provided by that Ethereum account."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchClassicTicker` if this is not a systematically reserved PMC ticker."]
#[doc = "- `TickerAlreadyRegistered` if the ticker was already registered, e.g., by `origin`."]
#[doc = "- `TickerRegistrationExpired` if the ticker's registration has expired."]
#[doc = "- `BadOrigin` if not signed."]
#[doc = "- `InvalidEthereumSignature` if the `ethereum_signature` is not valid."]
#[doc = "- `NotAnOwner` if the ethereum account is not the owner of the PMC ticker."]
#[codec(index = 14u8)]
claim_classic_ticker {
ticker: polymesh_primitives::ticker::Ticker,
ethereum_signature: polymesh_primitives::ethereum::EcdsaSignature,
},
#[doc = "Reserve a Polymath Classic (PMC) ticker."]
#[doc = "Must be called by root, and assigns the ticker to a systematic DID."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` which must be root."]
#[doc = "* `classic_ticker_import` specification for the PMC ticker."]
#[doc = "* `contract_did` to reserve the ticker to if `classic_ticker_import.is_contract` holds."]
#[doc = "* `config` to use for expiry and ticker length."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetAlreadyCreated` if `classic_ticker_import.ticker` was created as an asset."]
#[doc = "* `TickerTooLong` if the `config` considers the `classic_ticker_import.ticker` too long."]
#[doc = "* `TickerAlreadyRegistered` if `classic_ticker_import.ticker` was already registered."]
#[codec(index = 15u8)]
reserve_classic_ticker {
classic_ticker_import: pallet_asset::ClassicTickerImport,
contract_did: polymesh_primitives::identity_id::IdentityId,
config: pallet_asset::TickerRegistrationConfig<u64>,
},
#[doc = "Forces a transfer of token from `from_portfolio` to the caller's default portfolio."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` Must be an external agent with appropriate permissions for a given ticker."]
#[doc = "* `ticker` Ticker symbol of the asset."]
#[doc = "* `value` Amount of tokens need to force transfer."]
#[doc = "* `from_portfolio` From whom portfolio tokens gets transferred."]
#[codec(index = 16u8)]
controller_transfer {
ticker: polymesh_primitives::ticker::Ticker,
value: u128,
from_portfolio: polymesh_primitives::identity_id::PortfolioId,
},
#[doc = "Registers a custom asset type."]
#[doc = ""]
#[doc = "The provided `ty` will be bound to an ID in storage."]
#[doc = "The ID can then be used in `AssetType::Custom`."]
#[doc = "Should the `ty` already exist in storage, no second ID is assigned to it."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` who called the extrinsic."]
#[doc = "* `ty` contains the string representation of the asset type."]
#[codec(index = 17u8)]
register_custom_asset_type { ty: Vec<u8> },
#[doc = "Utility extrinsic to batch `create_asset` and `register_custom_asset_type`."]
#[codec(index = 18u8)]
create_asset_with_custom_type {
name: polymesh_primitives::asset::AssetName,
ticker: polymesh_primitives::ticker::Ticker,
divisible: bool,
custom_asset_type: Vec<u8>,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
funding_round: Option<polymesh_primitives::asset::FundingRoundName>,
disable_iu: bool,
},
#[doc = "Set asset metadata value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `key` Metadata key."]
#[doc = "* `value` Metadata value."]
#[doc = "* `details` Optional Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataKeyIsMissing` if the metadata type key doesn't exist."]
#[doc = "* `AssetMetadataValueIsLocked` if the metadata value for `key` is locked."]
#[doc = "* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
#[codec(index = 19u8)]
set_asset_metadata {
ticker: polymesh_primitives::ticker::Ticker,
key: polymesh_primitives::asset_metadata::AssetMetadataKey,
value: polymesh_primitives::asset_metadata::AssetMetadataValue,
detail: Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>>,
},
#[doc = "Set asset metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `key` Metadata key."]
#[doc = "* `details` Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataKeyIsMissing` if the metadata type key doesn't exist."]
#[doc = "* `AssetMetadataValueIsLocked` if the metadata value for `key` is locked."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
#[codec(index = 20u8)]
set_asset_metadata_details {
ticker: polymesh_primitives::ticker::Ticker,
key: polymesh_primitives::asset_metadata::AssetMetadataKey,
detail: polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>,
},
#[doc = "Registers and set local asset metadata."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = "* `value` Metadata value."]
#[doc = "* `details` Optional Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
#[doc = "* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
#[codec(index = 21u8)]
register_and_set_local_asset_metadata {
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
value: polymesh_primitives::asset_metadata::AssetMetadataValue,
detail: Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>>,
},
#[doc = "Registers asset metadata local type."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
#[codec(index = 22u8)]
register_asset_metadata_local_type {
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
},
#[doc = "Registers asset metadata global type."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataGlobalKeyAlreadyExists` if a globa metadata type with `name` already exists."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
#[codec(index = 23u8)]
register_asset_metadata_global_type {
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
},
}
}
pub mod pallet_transaction_payment {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Releases {
#[codec(index = 0u8)]
V1Ancient,
#[codec(index = 1u8)]
V2,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ChargeTransactionPayment(#[codec(compact)] pub u128);
}
pub mod pallet_sudo {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB write (event)."]
#[doc = "- Weight of derivative `call` execution + 10,000."]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
sudo {
call: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
},
#[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."]
#[doc = "This function does not check the weight of the call, and instead allows the"]
#[doc = "Sudo user to specify the weight of the call."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- The weight of this call is defined by the caller."]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
sudo_unchecked_weight {
call: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
_weight: u64,
},
#[doc = "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo key."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB change."]
#[doc = "# </weight>"]
#[codec(index = 2u8)]
set_key {
new: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
},
#[doc = "Authenticates the sudo key and dispatches a function call with `Signed` origin from"]
#[doc = "a given account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB write (event)."]
#[doc = "- Weight of derivative `call` execution + 10,000."]
#[doc = "# </weight>"]
#[codec(index = 3u8)]
sudo_as {
who: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
call: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
},
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "A sudo just took place. \\[result\\]"]
#[codec(index = 0u8)]
Sudid(Result<(), sp_runtime::DispatchError>),
#[doc = "The \\[sudoer\\] just switched identity; the old key is supplied."]
#[codec(index = 1u8)]
KeyChanged(AccountId),
#[doc = "A sudo just took place. \\[result\\]"]
#[codec(index = 2u8)]
SudoAsDone(Result<(), sp_runtime::DispatchError>),
}
#[doc = "Error for the Sudo module"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Sender must be the Sudo account"]
#[codec(index = 0u8)]
RequireSudo,
}
}
pub mod pallet_corporate_actions {
use super::*;
pub mod distribution {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Start and attach a capital distribution, to the CA identified by `ca_id`,"]
#[doc = "with `amount` funds in `currency` withdrawn from `portfolio` belonging to `origin`'s DID."]
#[doc = ""]
#[doc = "The distribution will commence at `payment_at` and expire at `expires_at`,"]
#[doc = "if provided, or if `None`, then there's no expiry."]
#[doc = ""]
#[doc = "The funds will be locked in `portfolio` from when `distribute` is called."]
#[doc = "When there's no expiry, some funds may be locked indefinitely in `portfolio`,"]
#[doc = "due to claimants not withdrawing or no benefits being pushed to them."]
#[doc = "For indivisible currencies, unlocked amounts, of less than one whole unit,"]
#[doc = "will not be transferable from `portfolio`."]
#[doc = "However, if we imagine that users `Alice` and `Bob` both are entitled to 1.5 units,"]
#[doc = "and only receive `1` units each, then `0.5 + 0.5 = 1` units are left in `portfolio`,"]
#[doc = "which is now transferrable."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA to start a capital distribution for."]
#[doc = "- `portfolio` specifies the portfolio number of the agent to distribute `amount` from."]
#[doc = "- `currency` to withdraw and distribute from the `portfolio`."]
#[doc = "- `per_share` amount of `currency` to withdraw and distribute."]
#[doc = " Specified as a per-million, i.e. `1 / 10^6`th of one `currency` token."]
#[doc = "- `amount` of `currency` to withdraw and distribute at most."]
#[doc = "- `payment_at` specifies when benefits may first be pushed or claimed."]
#[doc = "- `expires_at` specifies, if provided, when remaining benefits are forfeit"]
#[doc = " and may be reclaimed by `origin`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `ExpiryBeforePayment` if `expires_at.unwrap() <= payment_at`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NoRecordDate` if CA has no record date."]
#[doc = "- `RecordDateAfterStart` if CA's record date > payment_at."]
#[doc = "- `UnauthorizedCustodian` if the caller is not the custodian of `portfolio`."]
#[doc = "- `InsufficientPortfolioBalance` if `portfolio` has less than `amount` of `currency`."]
#[doc = "- `InsufficientBalance` if the protocol fee couldn't be charged."]
#[doc = "- `CANotBenefit` if the CA is not of kind PredictableBenefit/UnpredictableBenefit"]
#[doc = "- `DistributionAmountIsZero` if the `amount` is zero."]
#[doc = "- `DistributionPerShareIsZero` if the `per_share` is zero."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
#[codec(index = 0u8)]
distribute {
ca_id: pallet_corporate_actions::CAId,
portfolio: Option<polymesh_primitives::identity_id::PortfolioNumber>,
currency: polymesh_primitives::ticker::Ticker,
per_share: u128,
amount: u128,
payment_at: u64,
expires_at: Option<u64>,
},
#[doc = "Claim a benefit of the capital distribution attached to `ca_id`."]
#[doc = ""]
#[doc = "Taxes are withheld as specified by the CA."]
#[doc = "Post-tax earnings are then transferred to the default portfolio of the `origin`'s DID."]
#[doc = ""]
#[doc = "All benefits are rounded by truncation, down to first integer below."]
#[doc = "Moreover, before post-tax earnings, in indivisible currencies are transferred,"]
#[doc = "they are rounded down to a whole unit."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be a holder of the asset and eligible for the distribution."]
#[doc = "- `ca_id` identifies the CA to start a capital distribution for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `HolderAlreadyPaid` if `origin`'s DID has already received its benefit."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `CannotClaimBeforeStart` if `now < payment_at`."]
#[doc = "- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `origin`'s DID."]
#[doc = "- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow."]
#[doc = "- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow."]
#[doc = "- Other errors can occur if the compliance manager rejects the transfer."]
#[codec(index = 1u8)]
claim {
ca_id: pallet_corporate_actions::CAId,
},
#[doc = "Push benefit of an ongoing distribution to the given `holder`."]
#[doc = ""]
#[doc = "Taxes are withheld as specified by the CA."]
#[doc = "Post-tax earnings are then transferred to the default portfolio of the `origin`'s DID."]
#[doc = ""]
#[doc = "All benefits are rounded by truncation, down to first integer below."]
#[doc = "Moreover, before post-tax earnings, in indivisible currencies are transferred,"]
#[doc = "they are rounded down to a whole unit."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA with a capital distributions to push benefits for."]
#[doc = "- `holder` to push benefits to."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `CannotClaimBeforeStart` if `now < payment_at`."]
#[doc = "- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `holder`."]
#[doc = "- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow."]
#[doc = "- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow."]
#[doc = "- Other errors can occur if the compliance manager rejects the transfer."]
#[codec(index = 2u8)]
push_benefit {
ca_id: pallet_corporate_actions::CAId,
holder: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Assuming a distribution has expired,"]
#[doc = "unlock the remaining amount in the distributor portfolio."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be the creator of the capital distribution tied to `ca_id`."]
#[doc = "- `ca_id` identifies the CA with a capital distribution to reclaim for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `AlreadyReclaimed` if this function has already been called successfully."]
#[doc = "- `NotExpired` if `now < expiry`."]
#[codec(index = 3u8)]
reclaim {
ca_id: pallet_corporate_actions::CAId,
},
#[doc = "Removes a distribution that hasn't started yet,"]
#[doc = "unlocking the full amount in the distributor portfolio."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA with a not-yet-started capital distribution to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `DistributionStarted` if `payment_at <= now`."]
#[codec(index = 4u8)]
remove_distribution {
ca_id: pallet_corporate_actions::CAId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Distribution {
pub from: polymesh_primitives::identity_id::PortfolioId,
pub currency: polymesh_primitives::ticker::Ticker,
pub per_share: u128,
pub amount: u128,
pub remaining: u128,
pub reclaimed: bool,
pub payment_at: u64,
pub expires_at: Option<u64>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "A capital distribution was made for a non-benefit CA."]
#[codec(index = 0u8)]
CANotBenefit,
#[doc = "A distribution already exists for this CA."]
#[codec(index = 1u8)]
AlreadyExists,
#[doc = "A distributions provided expiry date was strictly before its payment date."]
#[doc = "In other words, everything to distribute would immediately be forfeited."]
#[codec(index = 2u8)]
ExpiryBeforePayment,
#[doc = "The token holder has already been paid their benefit."]
#[codec(index = 3u8)]
HolderAlreadyPaid,
#[doc = "A capital distribution doesn't exist for this CA."]
#[codec(index = 4u8)]
NoSuchDistribution,
#[doc = "Distribution allotment cannot be claimed as the current time is before start-of-payment."]
#[codec(index = 5u8)]
CannotClaimBeforeStart,
#[doc = "Distribution's expiry has passed. DID cannot claim anymore and has forfeited the benefits."]
#[codec(index = 6u8)]
CannotClaimAfterExpiry,
#[doc = "Multiplication of the balance with the per share payout amount overflowed."]
#[codec(index = 7u8)]
BalancePerShareProductOverflowed,
#[doc = "DID is not the one who created the distribution."]
#[codec(index = 8u8)]
NotDistributionCreator,
#[doc = "DID who created the distribution already did reclaim."]
#[codec(index = 9u8)]
AlreadyReclaimed,
#[doc = "Distribution had not expired yet, or there's no expiry date."]
#[codec(index = 10u8)]
NotExpired,
#[doc = "A distribution has been activated, as `payment_at <= now` holds."]
#[codec(index = 11u8)]
DistributionStarted,
#[doc = "A distribution has insufficient remaining amount of currency to distribute."]
#[codec(index = 12u8)]
InsufficientRemainingAmount,
#[doc = "Distribution `amount` cannot be zero."]
#[codec(index = 13u8)]
DistributionAmountIsZero,
#[doc = "Distribution `per_share` cannot be zero."]
#[codec(index = 14u8)]
DistributionPerShareIsZero,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A capital distribution, with details included,"]
#[doc = "was created by the DID (permissioned agent) for the CA identified by `CAId`."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, distribution details)"]
#[codec(index = 0u8)]
Created(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
pallet_corporate_actions::distribution::Distribution,
),
#[doc = "A token holder's benefit of a capital distribution for the given `CAId` was claimed."]
#[doc = ""]
#[doc = "(Caller DID, Holder/Claimant DID, CA's ID, updated distribution details, DID's benefit, DID's tax %)"]
#[codec(index = 1u8)]
BenefitClaimed(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
pallet_corporate_actions::distribution::Distribution,
u128,
sp_arithmetic::per_things::Permill,
),
#[doc = "Stats from `push_benefit` was emitted."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, max requested DIDs, processed DIDs, failed DIDs)"]
#[codec(index = 2u8)]
Reclaimed(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
u128,
),
#[doc = "A capital distribution was removed."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID)"]
#[codec(index = 3u8)]
Removed(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
}
pub mod ballot {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A corporate ballot was created."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, Voting start/end, Ballot metadata, RCV enabled?)"]
#[codec(index = 0u8)]
Created(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
pallet_corporate_actions::ballot::BallotTimeRange,
pallet_corporate_actions::ballot::BallotMeta,
bool,
),
#[doc = "A vote was cast in a corporate ballot."]
#[doc = ""]
#[doc = "(voter DID, CAId, Votes)"]
#[codec(index = 1u8)]
VoteCast(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
Vec<pallet_corporate_actions::ballot::BallotVote>,
),
#[doc = "A corporate ballot changed its start/end date range."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, Voting start/end)"]
#[codec(index = 2u8)]
RangeChanged(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
pallet_corporate_actions::ballot::BallotTimeRange,
),
#[doc = "A corporate ballot changed its metadata."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, New metadata)"]
#[codec(index = 3u8)]
MetaChanged(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
pallet_corporate_actions::ballot::BallotMeta,
),
#[doc = "A corporate ballot changed its RCV support."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID, New support)"]
#[codec(index = 4u8)]
RCVChanged(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
bool,
),
#[doc = "A corporate ballot was removed."]
#[doc = ""]
#[doc = "(Agent DID, CA's ID)"]
#[codec(index = 5u8)]
Removed(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BallotMeta {
pub title: pallet_corporate_actions::ballot::BallotTitle,
pub motions: Vec<pallet_corporate_actions::ballot::Motion>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BallotTitle(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Motion {
pub title: pallet_corporate_actions::ballot::MotionTitle,
pub info_link: pallet_corporate_actions::ballot::MotionInfoLink,
pub choices: Vec<pallet_corporate_actions::ballot::ChoiceTitle>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct MotionTitle(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BallotTimeRange {
pub start: u64,
pub end: u64,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct MotionInfoLink(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "A corporate ballot was made for a non `IssuerNotice` CA."]
#[codec(index = 0u8)]
CANotNotice,
#[doc = "A corporate ballot already exists for this CA."]
#[codec(index = 1u8)]
AlreadyExists,
#[doc = "A corporate ballot doesn't exist for this CA."]
#[codec(index = 2u8)]
NoSuchBallot,
#[doc = "A corporate ballot's start time was strictly after the ballot's end."]
#[codec(index = 3u8)]
StartAfterEnd,
#[doc = "A corporate ballot's end time was strictly before the current time."]
#[codec(index = 4u8)]
NowAfterEnd,
#[doc = "If some motion in a corporate ballot has more choices than would fit in `u16`."]
#[codec(index = 5u8)]
NumberOfChoicesOverflow,
#[doc = "Voting started already. Amending a ballot is no longer possible."]
#[codec(index = 6u8)]
VotingAlreadyStarted,
#[doc = "Voting hasn't started yet."]
#[codec(index = 7u8)]
VotingNotStarted,
#[doc = "Voting ended already."]
#[codec(index = 8u8)]
VotingAlreadyEnded,
#[doc = "Provided list of balances does not match the total number of choices."]
#[codec(index = 9u8)]
WrongVoteCount,
#[doc = "Voting power used by a DID on a motion exceeds that which is available to them."]
#[codec(index = 10u8)]
InsufficientVotes,
#[doc = "The RCV fallback of some choice does not exist."]
#[codec(index = 11u8)]
NoSuchRCVFallback,
#[doc = "The RCV fallback points to the origin choice."]
#[codec(index = 12u8)]
RCVSelfCycle,
#[doc = "RCV is not allowed for this ballot."]
#[codec(index = 13u8)]
RCVNotAllowed,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ChoiceTitle(pub Vec<u8>);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Attach a corporate ballot to the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "The ballot will admit votes within `range`."]
#[doc = "The ballot's metadata is provided by `meta`,"]
#[doc = "which includes the ballot title, the motions, their choices, etc."]
#[doc = "See the `BallotMeta` for more."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA to attach the ballot to."]
#[doc = "- `range` specifies when voting starts and ends."]
#[doc = "- `meta` specifies the ballot's metadata as aforementioned."]
#[doc = "- `rcv` specifies whether RCV is enabled for this ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `CANotNotice` if the CA is not of the `IssuerNotice` kind."]
#[doc = "- `StartAfterEnd` if `range.start > range.end`."]
#[doc = "- `NowAfterEnd` if `now > range.end` where `now` is the current timestamp."]
#[doc = "- `NoRecordDate` if CA has no record date."]
#[doc = "- `RecordDateAfterStart` if `date > range.start` where `date` is the CA's record date."]
#[doc = "- `AlreadyExists` if there's a ballot already."]
#[doc = "- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`."]
#[doc = "- `TooLong` if any of the embedded strings in `meta` are too long."]
#[doc = "- `InsufficientBalance` if the protocol fee couldn't be charged."]
#[codec(index = 0u8)]
attach_ballot {
ca_id: pallet_corporate_actions::CAId,
range: pallet_corporate_actions::ballot::BallotTimeRange,
meta: pallet_corporate_actions::ballot::BallotMeta,
rcv: bool,
},
#[doc = "Cast `votes` in the ballot attached to the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be a permissioned signer targeted by the CA."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `votes` specifies the balances to assign to each choice in the ballot."]
#[doc = " The full voting power of `origin`'s DID may be used for each motion in the ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingNotStarted` if the voting period hasn't commenced yet."]
#[doc = "- `VotingAlreadyEnded` if the voting period has ended."]
#[doc = "- `WrongVoteCount` if the number of choices in the ballot does not match `votes.len()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `origin`'s DID."]
#[doc = "- `InsufficientVotes` if the voting power used for any motion in `votes`"]
#[doc = " exceeds `origin`'s DID's voting power."]
#[codec(index = 1u8)]
vote {
ca_id: pallet_corporate_actions::CAId,
votes: Vec<pallet_corporate_actions::ballot::BallotVote>,
},
#[doc = "Amend the end date of the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `end` specifies the new end date of the ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[doc = "- `StartAfterEnd` if `start > end`."]
#[codec(index = 2u8)]
change_end {
ca_id: pallet_corporate_actions::CAId,
end: u64,
},
#[doc = "Amend the metadata (title, motions, etc.) of the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `meta` specifies the new metadata."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[doc = "- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`."]
#[doc = "- `TooLong` if any of the embedded strings in `meta` are too long."]
#[codec(index = 3u8)]
change_meta {
ca_id: pallet_corporate_actions::CAId,
meta: pallet_corporate_actions::ballot::BallotMeta,
},
#[doc = "Amend RCV support for the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `rcv` specifies if RCV is to be supported or not."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[codec(index = 4u8)]
change_rcv {
ca_id: pallet_corporate_actions::CAId,
rcv: bool,
},
#[doc = "Remove the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[codec(index = 5u8)]
remove_ballot {
ca_id: pallet_corporate_actions::CAId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BallotVote {
pub power: u128,
pub fallback: Option<u16>,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RecordDateSpec {
#[codec(index = 0u8)]
Scheduled(u64),
#[codec(index = 1u8)]
ExistingSchedule(polymesh_common_utilities::traits::checkpoint::ScheduleId),
#[codec(index = 2u8)]
Existing(polymesh_primitives::calendar::CheckpointId),
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "The maximum length of `details` in bytes was changed."]
#[doc = "(GC DID, new length)"]
#[codec(index = 0u8)]
MaxDetailsLengthChanged(polymesh_primitives::identity_id::IdentityId, u32),
#[doc = "The set of default `TargetIdentities` for a ticker changed."]
#[doc = "(Agent DID, Ticker, New TargetIdentities)"]
#[codec(index = 1u8)]
DefaultTargetIdentitiesChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
pallet_corporate_actions::TargetIdentities,
),
#[doc = "The default withholding tax for a ticker changed."]
#[doc = "(Agent DID, Ticker, New Tax)."]
#[codec(index = 2u8)]
DefaultWithholdingTaxChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
sp_arithmetic::per_things::Permill,
),
#[doc = "The withholding tax specific to a DID for a ticker changed."]
#[doc = "(Agent DID, Ticker, Taxed DID, New Tax)."]
#[codec(index = 3u8)]
DidWithholdingTaxChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
Option<sp_arithmetic::per_things::Permill>,
),
#[doc = "A new DID was made the CAA."]
#[doc = "(New CAA DID, Ticker, New CAA DID)."]
#[codec(index = 4u8)]
CAATransferred(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "A CA was initiated."]
#[doc = "(Agent DID, CA id, the CA, the CA details)"]
#[codec(index = 5u8)]
CAInitiated(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
pallet_corporate_actions::CorporateAction,
pallet_corporate_actions::CADetails,
),
#[doc = "A CA was linked to a set of docs."]
#[doc = "(Agent DID, CA Id, List of doc identifiers)"]
#[codec(index = 6u8)]
CALinkedToDoc(
polymesh_primitives::identity_id::IdentityId,
pallet_corporate_actions::CAId,
Vec<polymesh_primitives::document::DocumentId>,
),
#[doc = "A CA was removed."]
#[doc = "(Agent DID, CA Id)"]
#[codec(index = 7u8)]
CARemoved(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
),
#[doc = "A CA's record date changed."]
#[codec(index = 8u8)]
RecordDateChanged(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_corporate_actions::CAId,
pallet_corporate_actions::CorporateAction,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CADetails(pub Vec<u8>);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Set the max `length` of `details` in terms of bytes."]
#[doc = "May only be called via a PIP."]
#[codec(index = 0u8)]
set_max_details_length { length: u32 },
#[doc = "Set the default CA `TargetIdentities` to `targets`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` for which the default identities are changing."]
#[doc = "- `targets` the default target identities for a CA."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `TooManyTargetIds` if `targets.identities.len() > T::MaxTargetIds::get()`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 1u8)]
set_default_targets {
ticker: polymesh_primitives::ticker::Ticker,
targets: pallet_corporate_actions::TargetIdentities,
},
#[doc = "Set the default withholding tax for all DIDs and CAs relevant to this `ticker`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the withholding tax will apply to."]
#[doc = "- `tax` that should be withheld when distributing dividends, etc."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 2u8)]
set_default_withholding_tax {
ticker: polymesh_primitives::ticker::Ticker,
tax: sp_arithmetic::per_things::Permill,
},
#[doc = "Set the withholding tax of `ticker` for `taxed_did` to `tax`."]
#[doc = "If `Some(tax)`, this overrides the default withholding tax of `ticker` to `tax` for `taxed_did`."]
#[doc = "Otherwise, if `None`, the default withholding tax will be used."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the withholding tax will apply to."]
#[doc = "- `taxed_did` that will have its withholding tax updated."]
#[doc = "- `tax` that should be withheld when distributing dividends, etc."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `TooManyDidTaxes` if `Some(tax)` and adding the override would go over the limit `MaxDidWhts`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 3u8)]
set_did_withholding_tax {
ticker: polymesh_primitives::ticker::Ticker,
taxed_did: polymesh_primitives::identity_id::IdentityId,
tax: Option<sp_arithmetic::per_things::Permill>,
},
#[doc = "Initiates a CA for `ticker` of `kind` with `details` and other provided arguments."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the CA is made for."]
#[doc = "- `kind` of CA being initiated."]
#[doc = "- `decl_date` of CA bring initialized."]
#[doc = "- `record_date`, if any, to calculate the impact of this CA."]
#[doc = " If provided, this results in a scheduled balance snapshot (\"checkpoint\") at the date."]
#[doc = "- `details` of the CA in free-text form, up to a certain number of bytes in length."]
#[doc = "- `targets`, if any, which this CA is relevant/irrelevant to."]
#[doc = " Overrides, if provided, the default at the asset level (`set_default_targets`)."]
#[doc = "- `default_withholding_tax`, if any, is the default withholding tax to use for this CA."]
#[doc = " Overrides, if provided, the default at the asset level (`set_default_withholding_tax`)."]
#[doc = "- `withholding_tax`, if any, provides per-DID withholding tax overrides."]
#[doc = " Overrides, if provided, the default at the asset level (`set_did_withholding_tax`)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `DetailsTooLong` if `details.len()` goes beyond `max_details_length`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `CounterOverflow` in the unlikely event that so many CAs were created for this `ticker`,"]
#[doc = " that integer overflow would have occured if instead allowed."]
#[doc = "- `TooManyDidTaxes` if `withholding_tax.unwrap().len()` would go over the limit `MaxDidWhts`."]
#[doc = "- `DuplicateDidTax` if a DID is included more than once in `wt`."]
#[doc = "- `TooManyTargetIds` if `targets.unwrap().identities.len() > T::MaxTargetIds::get()`."]
#[doc = "- `DeclDateInFuture` if the declaration date is not in the past."]
#[doc = "- When `record_date.is_some()`, other errors due to checkpoint scheduling may occur."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 4u8)]
initiate_corporate_action {
ticker: polymesh_primitives::ticker::Ticker,
kind: pallet_corporate_actions::CAKind,
decl_date: u64,
record_date: Option<pallet_corporate_actions::RecordDateSpec>,
details: pallet_corporate_actions::CADetails,
targets: Option<pallet_corporate_actions::TargetIdentities>,
default_withholding_tax: Option<sp_arithmetic::per_things::Permill>,
withholding_tax: Option<
Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>,
>,
},
#[doc = "Link the given CA `id` to the given `docs`."]
#[doc = "Any previous links for the CA are removed in favor of `docs`."]
#[doc = ""]
#[doc = "The workflow here is to add the documents and initiating the CA in any order desired."]
#[doc = "Once both exist, they can now be linked together."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `id.ticker` with relevant permissions."]
#[doc = "- `id` of the CA to associate with `docs`."]
#[doc = "- `docs` to associate with the CA with `id`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = "- `NoSuchDoc` if any of `docs` does not identify an existing document."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 5u8)]
link_ca_doc {
id: pallet_corporate_actions::CAId,
docs: Vec<polymesh_primitives::document::DocumentId>,
},
#[doc = "Removes the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "Associated data, such as document links, ballots,"]
#[doc = "and capital distributions are also removed."]
#[doc = ""]
#[doc = "Any schedule associated with the record date will see"]
#[doc = "`strong_ref_count(schedule_id)` decremented."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ca_id.ticker` with relevant permissions."]
#[doc = "- `ca_id` of the CA to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 6u8)]
remove_ca {
ca_id: pallet_corporate_actions::CAId,
},
#[doc = "Changes the record date of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ca_id.ticker` with relevant permissions."]
#[doc = "- `ca_id` of the CA to alter."]
#[doc = "- `record_date`, if any, to calculate the impact of the CA."]
#[doc = " If provided, this results in a scheduled balance snapshot (\"checkpoint\") at the date."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = "- When `record_date.is_some()`, other errors due to checkpoint scheduling may occur."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 7u8)]
change_record_date {
ca_id: pallet_corporate_actions::CAId,
record_date: Option<pallet_corporate_actions::RecordDateSpec>,
},
#[doc = "Utility extrinsic to batch `initiate_corporate_action` and `distribute`"]
#[codec(index = 8u8)]
initiate_corporate_action_and_distribute {
ca_args: pallet_corporate_actions::InitiateCorporateActionArgs,
portfolio: Option<polymesh_primitives::identity_id::PortfolioNumber>,
currency: polymesh_primitives::ticker::Ticker,
per_share: u128,
amount: u128,
payment_at: u64,
expires_at: Option<u64>,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CorporateAction {
pub kind: pallet_corporate_actions::CAKind,
pub decl_date: u64,
pub record_date: Option<pallet_corporate_actions::RecordDate>,
pub targets: pallet_corporate_actions::TargetIdentities,
pub default_withholding_tax: sp_arithmetic::per_things::Permill,
pub withholding_tax: Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum CAKind {
#[codec(index = 0u8)]
PredictableBenefit,
#[codec(index = 1u8)]
UnpredictableBenefit,
#[codec(index = 2u8)]
IssuerNotice,
#[codec(index = 3u8)]
Reorganization,
#[codec(index = 4u8)]
Other,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct RecordDate {
pub date: u64,
pub checkpoint: pallet_corporate_actions::CACheckpoint,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TargetTreatment {
#[codec(index = 0u8)]
Include,
#[codec(index = 1u8)]
Exclude,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CAId {
pub ticker: polymesh_primitives::ticker::Ticker,
pub local_id: pallet_corporate_actions::LocalCAId,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum CACheckpoint {
#[codec(index = 0u8)]
Scheduled(
polymesh_common_utilities::traits::checkpoint::ScheduleId,
u64,
),
#[codec(index = 1u8)]
Existing(polymesh_primitives::calendar::CheckpointId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct TargetIdentities {
pub identities: Vec<polymesh_primitives::identity_id::IdentityId>,
pub treatment: pallet_corporate_actions::TargetTreatment,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct InitiateCorporateActionArgs {
pub ticker: polymesh_primitives::ticker::Ticker,
pub kind: pallet_corporate_actions::CAKind,
pub decl_date: u64,
pub record_date: Option<pallet_corporate_actions::RecordDateSpec>,
pub details: pallet_corporate_actions::CADetails,
pub targets: Option<pallet_corporate_actions::TargetIdentities>,
pub default_withholding_tax: Option<sp_arithmetic::per_things::Permill>,
pub withholding_tax: Option<
Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>,
>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct LocalCAId(pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The authorization type is not to transfer the CAA to another DID."]
#[codec(index = 0u8)]
AuthNotCAATransfer,
#[doc = "The `details` of a CA exceeded the max allowed length."]
#[codec(index = 1u8)]
DetailsTooLong,
#[doc = "A withholding tax override for a given DID was specified more than once."]
#[doc = "The chain refused to make a choice, and hence there was an error."]
#[codec(index = 2u8)]
DuplicateDidTax,
#[doc = "Too many withholding tax overrides were specified."]
#[codec(index = 3u8)]
TooManyDidTaxes,
#[doc = "Too many identities in `TargetIdentities` were specified."]
#[codec(index = 4u8)]
TooManyTargetIds,
#[doc = "On CA creation, a checkpoint ID was provided which doesn't exist."]
#[codec(index = 5u8)]
NoSuchCheckpointId,
#[doc = "A CA with the given `CAId` did not exist."]
#[codec(index = 6u8)]
NoSuchCA,
#[doc = "The CA did not have a record date."]
#[codec(index = 7u8)]
NoRecordDate,
#[doc = "A CA's record date was strictly after the \"start\" time,"]
#[doc = "where \"start\" is context dependent."]
#[doc = "For example, it could be the start of a ballot, or the start-of-payment in capital distribution."]
#[codec(index = 8u8)]
RecordDateAfterStart,
#[doc = "A CA's declaration date was strictly after its record date."]
#[codec(index = 9u8)]
DeclDateAfterRecordDate,
#[doc = "A CA's declaration date occurs in the future."]
#[codec(index = 10u8)]
DeclDateInFuture,
#[doc = "CA does not target the DID."]
#[codec(index = 11u8)]
NotTargetedByCA,
}
}
pub mod pallet_offences {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Events type."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "There is an offence reported of the given `kind` happened at the `session_index` and"]
#[doc = "(kind-specific) time slot. This event is not deposited for duplicate slashes."]
#[doc = "\\[kind, timeslot\\]."]
#[codec(index = 0u8)]
Offence {
kind: [u8; 16usize],
timeslot: Vec<u8>,
},
}
}
}
pub mod pallet_portfolio {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct MovePortfolioItem {
pub ticker: polymesh_primitives::ticker::Ticker,
pub amount: u128,
pub memo: Option<polymesh_common_utilities::traits::balances::Memo>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The portfolio doesn't exist."]
#[codec(index = 0u8)]
PortfolioDoesNotExist,
#[doc = "Insufficient balance for a transaction."]
#[codec(index = 1u8)]
InsufficientPortfolioBalance,
#[doc = "The source and destination portfolios should be different."]
#[codec(index = 2u8)]
DestinationIsSamePortfolio,
#[doc = "The portfolio couldn't be renamed because the chosen name is already in use."]
#[codec(index = 3u8)]
PortfolioNameAlreadyInUse,
#[doc = "The secondary key is not authorized to access the portfolio(s)."]
#[codec(index = 4u8)]
SecondaryKeyNotAuthorizedForPortfolio,
#[doc = "The porfolio's custody is with someone other than the caller."]
#[codec(index = 5u8)]
UnauthorizedCustodian,
#[doc = "Can not unlock more tokens than what are locked"]
#[codec(index = 6u8)]
InsufficientTokensLocked,
#[doc = "The portfolio still has some asset balance left"]
#[codec(index = 7u8)]
PortfolioNotEmpty,
#[doc = "The portfolios belong to different identities"]
#[codec(index = 8u8)]
DifferentIdentityPortfolios,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Creates a portfolio with the given `name`."]
#[codec(index = 0u8)]
create_portfolio {
name: polymesh_primitives::identity_id::PortfolioName,
},
#[doc = "Deletes a user portfolio. A portfolio can be deleted only if it has no funds."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if `num` doesn't reference a valid portfolio."]
#[doc = "* `PortfolioNotEmpty` if the portfolio still holds any asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 1u8)]
delete_portfolio {
num: polymesh_primitives::identity_id::PortfolioNumber,
},
#[doc = "Moves a token amount from one portfolio of an identity to another portfolio of the same"]
#[doc = "identity. Must be called by the custodian of the sender."]
#[doc = "Funds from deleted portfolios can also be recovered via this method."]
#[doc = ""]
#[doc = "A short memo can be added to to each token amount moved."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if one or both of the portfolios reference an invalid portfolio."]
#[doc = "* `destination_is_same_portfolio` if both sender and receiver portfolio are the same"]
#[doc = "* `DifferentIdentityPortfolios` if the sender and receiver portfolios belong to different identities"]
#[doc = "* `UnauthorizedCustodian` if the caller is not the custodian of the from portfolio"]
#[doc = "* `InsufficientPortfolioBalance` if the sender does not have enough free balance"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 2u8)]
move_portfolio_funds {
from: polymesh_primitives::identity_id::PortfolioId,
to: polymesh_primitives::identity_id::PortfolioId,
items: Vec<pallet_portfolio::MovePortfolioItem>,
},
#[doc = "Renames a non-default portfolio."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if `num` doesn't reference a valid portfolio."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 3u8)]
rename_portfolio {
num: polymesh_primitives::identity_id::PortfolioNumber,
to_name: polymesh_primitives::identity_id::PortfolioName,
},
#[doc = "When called by the custodian of `portfolio_id`,"]
#[doc = "allows returning the custody of the portfolio to the portfolio owner unilaterally."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `UnauthorizedCustodian` if the caller is not the current custodian of `portfolio_id`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 4u8)]
quit_portfolio_custody {
pid: polymesh_primitives::identity_id::PortfolioId,
},
#[codec(index = 5u8)]
accept_portfolio_custody { auth_id: u64 },
}
}
pub mod pallet_base {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Exceeded a generic length limit."]
#[doc = "The limit could be for any sort of lists of things, including a string."]
#[codec(index = 0u8)]
TooLong,
#[doc = "The sequence counter for something overflowed."]
#[doc = ""]
#[doc = "When this happens depends on e.g., the capacity of the identifier type."]
#[doc = "For example, we might have `pub struct PipId(u32);`, with `u32::MAX` capacity."]
#[doc = "In practice, these errors will never happen but no code path should result in a panic,"]
#[doc = "so these corner cases need to be covered with an error variant."]
#[codec(index = 1u8)]
CounterOverflow,
}
}
pub mod polymesh_runtime_develop {
use super::*;
pub mod runtime {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SessionKeys {
pub grandpa: sp_finality_grandpa::app::Public,
pub babe: sp_consensus_babe::app::Public,
pub im_online: pallet_im_online::sr25519::app_sr25519::Public,
pub authority_discovery: sp_authority_discovery::app::Public,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum OriginCaller {
#[codec(index = 0u8)]
system(
frame_support::dispatch::RawOrigin<::polymesh_api_client::sp_core::crypto::AccountId32>,
),
#[codec(index = 9u8)]
PolymeshCommittee(
pallet_committee::RawOrigin<
::polymesh_api_client::sp_core::crypto::AccountId32,
pallet_committee::Instance1,
>,
),
#[codec(index = 11u8)]
TechnicalCommittee(
pallet_committee::RawOrigin<
::polymesh_api_client::sp_core::crypto::AccountId32,
pallet_committee::Instance3,
>,
),
#[codec(index = 13u8)]
UpgradeCommittee(
pallet_committee::RawOrigin<
::polymesh_api_client::sp_core::crypto::AccountId32,
pallet_committee::Instance4,
>,
),
#[codec(index = 4u8)]
Void(sp_core::Void),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[codec(index = 0u8)]
System(frame_system::pallet::Call),
#[codec(index = 1u8)]
Babe(pallet_babe::pallet::Call),
#[codec(index = 2u8)]
Timestamp(pallet_timestamp::pallet::Call),
#[codec(index = 3u8)]
Indices(pallet_indices::pallet::Call),
#[codec(index = 4u8)]
Authorship(pallet_authorship::pallet::Call),
#[codec(index = 5u8)]
Balances(pallet_balances::Call),
#[codec(index = 7u8)]
Identity(pallet_identity::Call),
#[codec(index = 8u8)]
CddServiceProviders(pallet_group::Call),
#[codec(index = 9u8)]
PolymeshCommittee(pallet_committee::Call),
#[codec(index = 10u8)]
CommitteeMembership(pallet_group::Call),
#[codec(index = 11u8)]
TechnicalCommittee(pallet_committee::Call),
#[codec(index = 12u8)]
TechnicalCommitteeMembership(pallet_group::Call),
#[codec(index = 13u8)]
UpgradeCommittee(pallet_committee::Call),
#[codec(index = 14u8)]
UpgradeCommitteeMembership(pallet_group::Call),
#[codec(index = 15u8)]
MultiSig(pallet_multisig::Call),
#[codec(index = 16u8)]
Bridge(pallet_bridge::Call),
#[codec(index = 17u8)]
Staking(pallet_staking::Call),
#[codec(index = 19u8)]
Session(pallet_session::pallet::Call),
#[codec(index = 21u8)]
Grandpa(pallet_grandpa::pallet::Call),
#[codec(index = 23u8)]
ImOnline(pallet_im_online::pallet::Call),
#[codec(index = 25u8)]
Sudo(pallet_sudo::Call),
#[codec(index = 26u8)]
Asset(pallet_asset::Call),
#[codec(index = 27u8)]
CapitalDistribution(pallet_corporate_actions::distribution::Call),
#[codec(index = 28u8)]
Checkpoint(pallet_asset::checkpoint::Call),
#[codec(index = 29u8)]
ComplianceManager(pallet_compliance_manager::Call),
#[codec(index = 30u8)]
CorporateAction(pallet_corporate_actions::Call),
#[codec(index = 31u8)]
CorporateBallot(pallet_corporate_actions::ballot::Call),
#[codec(index = 33u8)]
Pips(pallet_pips::Call),
#[codec(index = 34u8)]
Portfolio(pallet_portfolio::Call),
#[codec(index = 35u8)]
ProtocolFee(pallet_protocol_fee::Call),
#[codec(index = 36u8)]
Scheduler(pallet_scheduler::pallet::Call),
#[codec(index = 37u8)]
Settlement(pallet_settlement::Call),
#[codec(index = 38u8)]
Statistics(pallet_statistics::Call),
#[codec(index = 39u8)]
Sto(pallet_sto::Call),
#[codec(index = 40u8)]
Treasury(pallet_treasury::Call),
#[codec(index = 41u8)]
Utility(pallet_utility::Call),
#[codec(index = 42u8)]
Base(pallet_base::Call),
#[codec(index = 43u8)]
ExternalAgents(pallet_external_agents::Call),
#[codec(index = 44u8)]
Relayer(pallet_relayer::Call),
#[codec(index = 45u8)]
Rewards(pallet_rewards::Call),
#[codec(index = 46u8)]
Contracts(pallet_contracts::pallet::Call),
#[codec(index = 47u8)]
PolymeshContracts(polymesh_contracts::Call),
#[codec(index = 48u8)]
Preimage(pallet_preimage::pallet::Call),
#[codec(index = 50u8)]
TestUtils(pallet_test_utils::Call),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Runtime();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[codec(index = 0u8)]
System(frame_system::pallet::Event),
#[codec(index = 3u8)]
Indices(pallet_indices::pallet::Event),
#[codec(index = 5u8)]
Balances(
polymesh_common_utilities::traits::balances::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
),
#[codec(index = 7u8)]
Identity(
polymesh_common_utilities::traits::identity::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
u64,
>,
),
#[codec(index = 8u8)]
CddServiceProviders(
polymesh_common_utilities::traits::group::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::Event,
pallet_group::Instance2,
>,
),
#[codec(index = 9u8)]
PolymeshCommittee(
pallet_committee::RawEvent<primitive_types::H256, u32, pallet_committee::Instance1>,
),
#[codec(index = 10u8)]
CommitteeMembership(
polymesh_common_utilities::traits::group::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::Event,
pallet_group::Instance1,
>,
),
#[codec(index = 11u8)]
TechnicalCommittee(
pallet_committee::RawEvent<primitive_types::H256, u32, pallet_committee::Instance3>,
),
#[codec(index = 12u8)]
TechnicalCommitteeMembership(
polymesh_common_utilities::traits::group::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::Event,
pallet_group::Instance3,
>,
),
#[codec(index = 13u8)]
UpgradeCommittee(
pallet_committee::RawEvent<primitive_types::H256, u32, pallet_committee::Instance4>,
),
#[codec(index = 14u8)]
UpgradeCommitteeMembership(
polymesh_common_utilities::traits::group::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::Event,
pallet_group::Instance4,
>,
),
#[codec(index = 15u8)]
MultiSig(pallet_multisig::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32>),
#[codec(index = 16u8)]
Bridge(pallet_bridge::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32, u32>),
#[codec(index = 17u8)]
Staking(
pallet_staking::RawEvent<u128, ::polymesh_api_client::sp_core::crypto::AccountId32>,
),
#[codec(index = 18u8)]
Offences(pallet_offences::pallet::Event),
#[codec(index = 19u8)]
Session(pallet_session::pallet::Event),
#[codec(index = 21u8)]
Grandpa(pallet_grandpa::pallet::Event),
#[codec(index = 23u8)]
ImOnline(pallet_im_online::pallet::Event),
#[codec(index = 25u8)]
Sudo(pallet_sudo::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32>),
#[codec(index = 26u8)]
Asset(
polymesh_common_utilities::traits::asset::RawEvent<
u64,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
),
#[codec(index = 27u8)]
CapitalDistribution(pallet_corporate_actions::distribution::Event),
#[codec(index = 28u8)]
Checkpoint(polymesh_common_utilities::traits::checkpoint::Event),
#[codec(index = 29u8)]
ComplianceManager(pallet_compliance_manager::Event),
#[codec(index = 30u8)]
CorporateAction(pallet_corporate_actions::Event),
#[codec(index = 31u8)]
CorporateBallot(pallet_corporate_actions::ballot::Event),
#[codec(index = 33u8)]
Pips(pallet_pips::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32, u32>),
#[codec(index = 34u8)]
Portfolio(polymesh_common_utilities::traits::portfolio::Event),
#[codec(index = 35u8)]
ProtocolFee(
pallet_protocol_fee::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32>,
),
#[codec(index = 36u8)]
Scheduler(pallet_scheduler::pallet::Event),
#[codec(index = 37u8)]
Settlement(
pallet_settlement::RawEvent<
u64,
u32,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
),
#[codec(index = 38u8)]
Statistics(polymesh_common_utilities::traits::statistics::Event),
#[codec(index = 39u8)]
Sto(pallet_sto::RawEvent<u64>),
#[codec(index = 40u8)]
Treasury(
pallet_treasury::RawEvent<u128, ::polymesh_api_client::sp_core::crypto::AccountId32>,
),
#[codec(index = 41u8)]
Utility(pallet_utility::Event),
#[codec(index = 42u8)]
Base(polymesh_common_utilities::traits::base::Event),
#[codec(index = 43u8)]
ExternalAgents(polymesh_common_utilities::traits::external_agents::Event),
#[codec(index = 44u8)]
Relayer(
polymesh_common_utilities::traits::relayer::RawEvent<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
),
#[codec(index = 45u8)]
Rewards(pallet_rewards::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32>),
#[codec(index = 46u8)]
Contracts(pallet_contracts::pallet::Event),
#[codec(index = 47u8)]
PolymeshContracts(polymesh_contracts::Event),
#[codec(index = 48u8)]
Preimage(pallet_preimage::pallet::Event),
#[codec(index = 50u8)]
TestUtils(pallet_test_utils::RawEvent<::polymesh_api_client::sp_core::crypto::AccountId32>),
}
}
}
pub mod pallet_sto {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Fundraiser<Moment> {
pub creator: polymesh_primitives::identity_id::IdentityId,
pub offering_portfolio: polymesh_primitives::identity_id::PortfolioId,
pub offering_asset: polymesh_primitives::ticker::Ticker,
pub raising_portfolio: polymesh_primitives::identity_id::PortfolioId,
pub raising_asset: polymesh_primitives::ticker::Ticker,
pub tiers: Vec<pallet_sto::FundraiserTier>,
pub venue_id: pallet_settlement::VenueId,
pub start: Moment,
pub end: Option<Moment>,
pub status: pallet_sto::FundraiserStatus,
pub minimum_investment: u128,
}
#[doc = "Errors for the Settlement module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Sender does not have required permissions."]
#[codec(index = 0u8)]
Unauthorized,
#[doc = "An arithmetic operation overflowed."]
#[codec(index = 1u8)]
Overflow,
#[doc = "Not enough tokens left for sale."]
#[codec(index = 2u8)]
InsufficientTokensRemaining,
#[doc = "Fundraiser not found."]
#[codec(index = 3u8)]
FundraiserNotFound,
#[doc = "Fundraiser is either frozen or stopped."]
#[codec(index = 4u8)]
FundraiserNotLive,
#[doc = "Fundraiser has been closed/stopped already."]
#[codec(index = 5u8)]
FundraiserClosed,
#[doc = "Interacting with a fundraiser past the end `Moment`."]
#[codec(index = 6u8)]
FundraiserExpired,
#[doc = "An invalid venue provided."]
#[codec(index = 7u8)]
InvalidVenue,
#[doc = "An individual price tier was invalid or a set of price tiers was invalid."]
#[codec(index = 8u8)]
InvalidPriceTiers,
#[doc = "Window (start time, end time) has invalid parameters, e.g start time is after end time."]
#[codec(index = 9u8)]
InvalidOfferingWindow,
#[doc = "Price of the investment exceeded the max price."]
#[codec(index = 10u8)]
MaxPriceExceeded,
#[doc = "Investment amount is lower than minimum investment amount."]
#[codec(index = 11u8)]
InvestmentAmountTooLow,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct FundraiserTier {
pub total: u128,
pub price: u128,
pub remaining: u128,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Create a new fundraiser."]
#[doc = ""]
#[doc = "* `offering_portfolio` - Portfolio containing the `offering_asset`."]
#[doc = "* `offering_asset` - Asset being offered."]
#[doc = "* `raising_portfolio` - Portfolio containing the `raising_asset`."]
#[doc = "* `raising_asset` - Asset being exchanged for `offering_asset` on investment."]
#[doc = "* `tiers` - Price tiers to charge investors on investment."]
#[doc = "* `venue_id` - Venue to handle settlement."]
#[doc = "* `start` - Fundraiser start time, if `None` the fundraiser will start immediately."]
#[doc = "* `end` - Fundraiser end time, if `None` the fundraiser will never expire."]
#[doc = "* `minimum_investment` - Minimum amount of `raising_asset` that an investor needs to spend to invest in this raise."]
#[doc = "* `fundraiser_name` - Fundraiser name, only used in the UIs."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
#[codec(index = 0u8)]
create_fundraiser {
offering_portfolio: polymesh_primitives::identity_id::PortfolioId,
offering_asset: polymesh_primitives::ticker::Ticker,
raising_portfolio: polymesh_primitives::identity_id::PortfolioId,
raising_asset: polymesh_primitives::ticker::Ticker,
tiers: Vec<pallet_sto::PriceTier>,
venue_id: pallet_settlement::VenueId,
start: Option<u64>,
end: Option<u64>,
minimum_investment: u128,
fundraiser_name: pallet_sto::FundraiserName,
},
#[doc = "Invest in a fundraiser."]
#[doc = ""]
#[doc = "* `investment_portfolio` - Portfolio that `offering_asset` will be deposited in."]
#[doc = "* `funding_portfolio` - Portfolio that will fund the investment."]
#[doc = "* `offering_asset` - Asset to invest in."]
#[doc = "* `id` - ID of the fundraiser to invest in."]
#[doc = "* `purchase_amount` - Amount of `offering_asset` to purchase."]
#[doc = "* `max_price` - Maximum price to pay per unit of `offering_asset`, If `None`there are no constraints on price."]
#[doc = "* `receipt` - Off-chain receipt to use instead of on-chain balance in `funding_portfolio`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[codec(index = 1u8)]
invest {
investment_portfolio: polymesh_primitives::identity_id::PortfolioId,
funding_portfolio: polymesh_primitives::identity_id::PortfolioId,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
purchase_amount: u128,
max_price: Option<u128>,
receipt: Option<
pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
>,
},
#[doc = "Freeze a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to freeze."]
#[doc = "* `id` - ID of the fundraiser to freeze."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 2u8)]
freeze_fundraiser {
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
},
#[doc = "Unfreeze a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to unfreeze."]
#[doc = "* `id` - ID of the fundraiser to unfreeze."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 3u8)]
unfreeze_fundraiser {
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
},
#[doc = "Modify the time window a fundraiser is active"]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to modify."]
#[doc = "* `id` - ID of the fundraiser to modify."]
#[doc = "* `start` - New start of the fundraiser."]
#[doc = "* `end` - New end of the fundraiser to modify."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 4u8)]
modify_fundraiser_window {
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
start: u64,
end: Option<u64>,
},
#[doc = "Stop a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to stop."]
#[doc = "* `id` - ID of the fundraiser to stop."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[codec(index = 5u8)]
stop {
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum FundraiserStatus {
#[codec(index = 0u8)]
Live,
#[codec(index = 1u8)]
Frozen,
#[codec(index = 2u8)]
Closed,
#[codec(index = 3u8)]
ClosedEarly,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Moment> {
#[doc = "A new fundraiser has been created."]
#[doc = "(Agent DID, fundraiser id, fundraiser name, fundraiser details)"]
#[codec(index = 0u8)]
FundraiserCreated(
polymesh_primitives::identity_id::IdentityId,
pallet_sto::FundraiserId,
pallet_sto::FundraiserName,
pallet_sto::Fundraiser<Moment>,
),
#[doc = "An investor invested in the fundraiser."]
#[doc = "(Investor, fundraiser_id, offering token, raise token, offering_token_amount, raise_token_amount)"]
#[codec(index = 1u8)]
Invested(
polymesh_primitives::identity_id::IdentityId,
pallet_sto::FundraiserId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::ticker::Ticker,
u128,
u128,
),
#[doc = "A fundraiser has been frozen."]
#[doc = "(Agent DID, fundraiser id)"]
#[codec(index = 2u8)]
FundraiserFrozen(
polymesh_primitives::identity_id::IdentityId,
pallet_sto::FundraiserId,
),
#[doc = "A fundraiser has been unfrozen."]
#[doc = "(Agent DID, fundraiser id)"]
#[codec(index = 3u8)]
FundraiserUnfrozen(
polymesh_primitives::identity_id::IdentityId,
pallet_sto::FundraiserId,
),
#[doc = "A fundraiser window has been modified."]
#[doc = "(Agent DID, fundraiser id, old_start, old_end, new_start, new_end)"]
#[codec(index = 4u8)]
FundraiserWindowModified(
polymesh_primitives::event_only::EventOnly<polymesh_primitives::identity_id::IdentityId>,
pallet_sto::FundraiserId,
Moment,
Option<Moment>,
Moment,
Option<Moment>,
),
#[doc = "A fundraiser has been stopped."]
#[doc = "(Agent DID, fundraiser id)"]
#[codec(index = 5u8)]
FundraiserClosed(
polymesh_primitives::identity_id::IdentityId,
pallet_sto::FundraiserId,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct FundraiserId(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct FundraiserName(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PriceTier {
pub total: u128,
pub price: u128,
}
}
pub mod pallet_scheduler {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Anonymously schedule a task."]
#[codec(index = 0u8)]
schedule {
when: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: ::std::boxed::Box<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
>,
},
#[doc = "Cancel an anonymously scheduled task."]
#[codec(index = 1u8)]
cancel { when: u32, index: u32 },
#[doc = "Schedule a named task."]
#[codec(index = 2u8)]
schedule_named {
id: Vec<u8>,
when: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: ::std::boxed::Box<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
>,
},
#[doc = "Cancel a named scheduled task."]
#[codec(index = 3u8)]
cancel_named { id: Vec<u8> },
#[doc = "Anonymously schedule a task after a delay."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`schedule`]."]
#[doc = "# </weight>"]
#[codec(index = 4u8)]
schedule_after {
after: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: ::std::boxed::Box<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
>,
},
#[doc = "Schedule a named task after a delay."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`schedule_named`](Self::schedule_named)."]
#[doc = "# </weight>"]
#[codec(index = 5u8)]
schedule_named_after {
id: Vec<u8>,
after: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: ::std::boxed::Box<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
>,
},
}
#[doc = "Events type."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "Scheduled some task."]
#[codec(index = 0u8)]
Scheduled { when: u32, index: u32 },
#[doc = "Canceled some task."]
#[codec(index = 1u8)]
Canceled { when: u32, index: u32 },
#[doc = "Dispatched some task."]
#[codec(index = 2u8)]
Dispatched {
task: (u32, u32),
id: Option<Vec<u8>>,
result: Result<(), sp_runtime::DispatchError>,
},
#[doc = "The call for the provided hash was not found so the task has been aborted."]
#[codec(index = 3u8)]
CallLookupFailed {
task: (u32, u32),
id: Option<Vec<u8>>,
error: frame_support::traits::schedule::LookupError,
},
}
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Failed to schedule a call"]
#[codec(index = 0u8)]
FailedToSchedule,
#[doc = "Cannot find the scheduled call."]
#[codec(index = 1u8)]
NotFound,
#[doc = "Given target block number is in the past."]
#[codec(index = 2u8)]
TargetBlockNumberInPast,
#[doc = "Reschedule failed because it does not change scheduled time."]
#[codec(index = 3u8)]
RescheduleNoChange,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ScheduledV3<Call, BlockNumber, PalletsOrigin, AccountId> {
pub maybe_id: Option<Vec<u8>>,
pub priority: u8,
pub call: Call,
pub maybe_periodic: Option<(BlockNumber, BlockNumber)>,
pub origin: PalletsOrigin,
_phantom_data: core::marker::PhantomData<AccountId>,
}
}
pub mod polymesh_primitives {
use super::*;
pub mod asset_metadata {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataLocalKey(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataName(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataGlobalKey(pub u64);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataSpec {
pub url: Option<polymesh_primitives::Url>,
pub description: Option<polymesh_primitives::asset_metadata::AssetMetadataDescription>,
pub type_def: Option<Vec<u8>>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetMetadataKey {
#[codec(index = 0u8)]
Global(polymesh_primitives::asset_metadata::AssetMetadataGlobalKey),
#[codec(index = 1u8)]
Local(polymesh_primitives::asset_metadata::AssetMetadataLocalKey),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataDescription(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataValue(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetMetadataLockStatus<Moment> {
#[codec(index = 0u8)]
Unlocked,
#[codec(index = 1u8)]
Locked,
#[codec(index = 2u8)]
LockedUntil(Moment),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetMetadataValueDetail<Moment> {
pub expire: Option<Moment>,
pub lock_status: polymesh_primitives::asset_metadata::AssetMetadataLockStatus<Moment>,
}
}
pub mod identity_claim {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct IdentityClaim {
pub claim_issuer: polymesh_primitives::identity_id::IdentityId,
pub issuance_date: u64,
pub last_update_date: u64,
pub expiry: Option<u64>,
pub claim: polymesh_primitives::identity_claim::Claim,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Claim {
#[codec(index = 0u8)]
Accredited(polymesh_primitives::identity_claim::Scope),
#[codec(index = 1u8)]
Affiliate(polymesh_primitives::identity_claim::Scope),
#[codec(index = 2u8)]
BuyLockup(polymesh_primitives::identity_claim::Scope),
#[codec(index = 3u8)]
SellLockup(polymesh_primitives::identity_claim::Scope),
#[codec(index = 4u8)]
CustomerDueDiligence(polymesh_primitives::cdd_id::CddId),
#[codec(index = 5u8)]
KnowYourCustomer(polymesh_primitives::identity_claim::Scope),
#[codec(index = 6u8)]
Jurisdiction(
polymesh_primitives::jurisdiction::CountryCode,
polymesh_primitives::identity_claim::Scope,
),
#[codec(index = 7u8)]
Exempted(polymesh_primitives::identity_claim::Scope),
#[codec(index = 8u8)]
Blocked(polymesh_primitives::identity_claim::Scope),
#[codec(index = 9u8)]
InvestorUniqueness(
polymesh_primitives::identity_claim::Scope,
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::cdd_id::CddId,
),
#[codec(index = 10u8)]
NoData,
#[codec(index = 11u8)]
InvestorUniquenessV2(polymesh_primitives::cdd_id::CddId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Scope {
#[codec(index = 0u8)]
Identity(polymesh_primitives::identity_id::IdentityId),
#[codec(index = 1u8)]
Ticker(polymesh_primitives::ticker::Ticker),
#[codec(index = 2u8)]
Custom(Vec<u8>),
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ClaimType {
#[codec(index = 0u8)]
Accredited,
#[codec(index = 1u8)]
Affiliate,
#[codec(index = 2u8)]
BuyLockup,
#[codec(index = 3u8)]
SellLockup,
#[codec(index = 4u8)]
CustomerDueDiligence,
#[codec(index = 5u8)]
KnowYourCustomer,
#[codec(index = 6u8)]
Jurisdiction,
#[codec(index = 7u8)]
Exempted,
#[codec(index = 8u8)]
Blocked,
#[codec(index = 9u8)]
InvestorUniqueness,
#[codec(index = 10u8)]
NoType,
#[codec(index = 11u8)]
InvestorUniquenessV2,
}
}
pub mod asset_identifier {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetIdentifier {
#[codec(index = 0u8)]
CUSIP([u8; 9usize]),
#[codec(index = 1u8)]
CINS([u8; 9usize]),
#[codec(index = 2u8)]
ISIN([u8; 12usize]),
#[codec(index = 3u8)]
LEI([u8; 20usize]),
#[codec(index = 4u8)]
FIGI([u8; 12usize]),
}
}
pub mod document_hash {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum DocumentHash {
#[codec(index = 0u8)]
None,
#[codec(index = 1u8)]
H512(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))] [u8; 64usize],
),
#[codec(index = 2u8)]
H384(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))] [u8; 48usize],
),
#[codec(index = 3u8)]
H320(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))] [u8; 40usize],
),
#[codec(index = 4u8)]
H256([u8; 32usize]),
#[codec(index = 5u8)]
H224([u8; 28usize]),
#[codec(index = 6u8)]
H192([u8; 24usize]),
#[codec(index = 7u8)]
H160([u8; 20usize]),
#[codec(index = 8u8)]
H128([u8; 16usize]),
}
}
pub mod condition {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TargetIdentity {
#[codec(index = 0u8)]
ExternalAgent,
#[codec(index = 1u8)]
Specific(polymesh_primitives::identity_id::IdentityId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct TrustedIssuer {
pub issuer: polymesh_primitives::identity_id::IdentityId,
pub trusted_for: polymesh_primitives::condition::TrustedFor,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TrustedFor {
#[codec(index = 0u8)]
Any,
#[codec(index = 1u8)]
Specific(Vec<polymesh_primitives::identity_claim::ClaimType>),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Condition {
pub condition_type: polymesh_primitives::condition::ConditionType,
pub issuers: Vec<polymesh_primitives::condition::TrustedIssuer>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ConditionType {
#[codec(index = 0u8)]
IsPresent(polymesh_primitives::identity_claim::Claim),
#[codec(index = 1u8)]
IsAbsent(polymesh_primitives::identity_claim::Claim),
#[codec(index = 2u8)]
IsAnyOf(Vec<polymesh_primitives::identity_claim::Claim>),
#[codec(index = 3u8)]
IsNoneOf(Vec<polymesh_primitives::identity_claim::Claim>),
#[codec(index = 4u8)]
IsIdentity(polymesh_primitives::condition::TargetIdentity),
}
}
pub mod identity_id {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum PortfolioKind {
#[codec(index = 0u8)]
Default,
#[codec(index = 1u8)]
User(polymesh_primitives::identity_id::PortfolioNumber),
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PortfolioNumber(pub u64);
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct IdentityId(pub [u8; 32usize]);
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PortfolioId {
pub did: polymesh_primitives::identity_id::IdentityId,
pub kind: polymesh_primitives::identity_id::PortfolioKind,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PortfolioName(pub Vec<u8>);
}
pub mod calendar {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CalendarPeriod {
pub unit: polymesh_primitives::calendar::CalendarUnit,
pub amount: u64,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckpointSchedule {
pub start: u64,
pub period: polymesh_primitives::calendar::CalendarPeriod,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum CalendarUnit {
#[codec(index = 0u8)]
Second,
#[codec(index = 1u8)]
Minute,
#[codec(index = 2u8)]
Hour,
#[codec(index = 3u8)]
Day,
#[codec(index = 4u8)]
Week,
#[codec(index = 5u8)]
Month,
#[codec(index = 6u8)]
Year,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckpointId(pub u64);
}
pub mod cdd_id {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CddId(pub [u8; 32usize]);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct InvestorUid(pub [u8; 16usize]);
}
pub mod subset {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum SubsetRestriction<A: Ord> {
#[codec(index = 0u8)]
Whole,
#[codec(index = 1u8)]
These(std::collections::BTreeSet<A>),
#[codec(index = 2u8)]
Except(std::collections::BTreeSet<A>),
}
}
pub mod ethereum {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EcdsaSignature(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))]
pub [u8; 65usize],
);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EthereumAddress(pub [u8; 20usize]);
}
pub mod compliance_manager {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetCompliance {
pub paused: bool,
pub requirements: Vec<polymesh_primitives::compliance_manager::ComplianceRequirement>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ComplianceRequirement {
pub sender_conditions: Vec<polymesh_primitives::condition::Condition>,
pub receiver_conditions: Vec<polymesh_primitives::condition::Condition>,
pub id: u32,
}
}
pub mod authorization {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Authorization<AccountId, Moment> {
pub authorization_data: polymesh_primitives::authorization::AuthorizationData<AccountId>,
pub authorized_by: polymesh_primitives::identity_id::IdentityId,
pub expiry: Option<Moment>,
pub auth_id: Moment,
pub count: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AuthorizationData<AccountId> {
#[codec(index = 0u8)]
AttestPrimaryKeyRotation(polymesh_primitives::identity_id::IdentityId),
#[codec(index = 1u8)]
RotatePrimaryKey,
#[codec(index = 2u8)]
TransferTicker(polymesh_primitives::ticker::Ticker),
#[codec(index = 3u8)]
AddMultiSigSigner(AccountId),
#[codec(index = 4u8)]
TransferAssetOwnership(polymesh_primitives::ticker::Ticker),
#[codec(index = 5u8)]
JoinIdentity(polymesh_primitives::secondary_key::Permissions),
#[codec(index = 6u8)]
PortfolioCustody(polymesh_primitives::identity_id::PortfolioId),
#[codec(index = 7u8)]
BecomeAgent(
polymesh_primitives::ticker::Ticker,
polymesh_primitives::agent::AgentGroup,
),
#[codec(index = 8u8)]
AddRelayerPayingKey(AccountId, AccountId, u128),
#[codec(index = 9u8)]
RotatePrimaryKeyToSecondary(polymesh_primitives::secondary_key::Permissions),
}
}
pub mod document {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Document {
pub uri: polymesh_primitives::document::DocumentUri,
pub content_hash: polymesh_primitives::document_hash::DocumentHash,
pub name: polymesh_primitives::document::DocumentName,
pub doc_type: Option<polymesh_primitives::document::DocumentType>,
pub filing_date: Option<u64>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DocumentName(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DocumentType(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DocumentId(pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DocumentUri(pub Vec<u8>);
}
pub mod asset {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CustomAssetTypeId(pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetType {
#[codec(index = 0u8)]
EquityCommon,
#[codec(index = 1u8)]
EquityPreferred,
#[codec(index = 2u8)]
Commodity,
#[codec(index = 3u8)]
FixedIncome,
#[codec(index = 4u8)]
REIT,
#[codec(index = 5u8)]
Fund,
#[codec(index = 6u8)]
RevenueShareAgreement,
#[codec(index = 7u8)]
StructuredProduct,
#[codec(index = 8u8)]
Derivative,
#[codec(index = 9u8)]
Custom(polymesh_primitives::asset::CustomAssetTypeId),
#[codec(index = 10u8)]
StableCoin,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct FundingRoundName(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetName(pub Vec<u8>);
}
pub mod secondary_key {
use super::*;
pub mod v1 {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SecondaryKey<AccountId> {
pub signer: polymesh_primitives::secondary_key::Signatory<AccountId>,
pub permissions: polymesh_primitives::secondary_key::Permissions,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum KeyRecord<AccountId> {
#[codec(index = 0u8)]
PrimaryKey(polymesh_primitives::identity_id::IdentityId),
#[codec(index = 1u8)]
SecondaryKey(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::secondary_key::Permissions,
),
#[codec(index = 2u8)]
MultiSigSignerKey(AccountId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Permissions {
pub asset:
polymesh_primitives::subset::SubsetRestriction<polymesh_primitives::ticker::Ticker>,
pub extrinsic: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
pub portfolio: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::identity_id::PortfolioId,
>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SecondaryKey<AccountId> {
pub key: AccountId,
pub permissions: polymesh_primitives::secondary_key::Permissions,
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PalletPermissions {
pub pallet_name: polymesh_primitives::PalletName,
pub dispatchable_names:
polymesh_primitives::subset::SubsetRestriction<polymesh_primitives::DispatchableName>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Signatory<AccountId> {
#[codec(index = 0u8)]
Identity(polymesh_primitives::identity_id::IdentityId),
#[codec(index = 1u8)]
Account(AccountId),
}
}
pub mod jurisdiction {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum CountryCode {
#[codec(index = 0u8)]
AF,
#[codec(index = 1u8)]
AX,
#[codec(index = 2u8)]
AL,
#[codec(index = 3u8)]
DZ,
#[codec(index = 4u8)]
AS,
#[codec(index = 5u8)]
AD,
#[codec(index = 6u8)]
AO,
#[codec(index = 7u8)]
AI,
#[codec(index = 8u8)]
AQ,
#[codec(index = 9u8)]
AG,
#[codec(index = 10u8)]
AR,
#[codec(index = 11u8)]
AM,
#[codec(index = 12u8)]
AW,
#[codec(index = 13u8)]
AU,
#[codec(index = 14u8)]
AT,
#[codec(index = 15u8)]
AZ,
#[codec(index = 16u8)]
BS,
#[codec(index = 17u8)]
BH,
#[codec(index = 18u8)]
BD,
#[codec(index = 19u8)]
BB,
#[codec(index = 20u8)]
BY,
#[codec(index = 21u8)]
BE,
#[codec(index = 22u8)]
BZ,
#[codec(index = 23u8)]
BJ,
#[codec(index = 24u8)]
BM,
#[codec(index = 25u8)]
BT,
#[codec(index = 26u8)]
BO,
#[codec(index = 27u8)]
BA,
#[codec(index = 28u8)]
BW,
#[codec(index = 29u8)]
BV,
#[codec(index = 30u8)]
BR,
#[codec(index = 31u8)]
VG,
#[codec(index = 32u8)]
IO,
#[codec(index = 33u8)]
BN,
#[codec(index = 34u8)]
BG,
#[codec(index = 35u8)]
BF,
#[codec(index = 36u8)]
BI,
#[codec(index = 37u8)]
KH,
#[codec(index = 38u8)]
CM,
#[codec(index = 39u8)]
CA,
#[codec(index = 40u8)]
CV,
#[codec(index = 41u8)]
KY,
#[codec(index = 42u8)]
CF,
#[codec(index = 43u8)]
TD,
#[codec(index = 44u8)]
CL,
#[codec(index = 45u8)]
CN,
#[codec(index = 46u8)]
HK,
#[codec(index = 47u8)]
MO,
#[codec(index = 48u8)]
CX,
#[codec(index = 49u8)]
CC,
#[codec(index = 50u8)]
CO,
#[codec(index = 51u8)]
KM,
#[codec(index = 52u8)]
CG,
#[codec(index = 53u8)]
CD,
#[codec(index = 54u8)]
CK,
#[codec(index = 55u8)]
CR,
#[codec(index = 56u8)]
CI,
#[codec(index = 57u8)]
HR,
#[codec(index = 58u8)]
CU,
#[codec(index = 59u8)]
CY,
#[codec(index = 60u8)]
CZ,
#[codec(index = 61u8)]
DK,
#[codec(index = 62u8)]
DJ,
#[codec(index = 63u8)]
DM,
#[codec(index = 64u8)]
DO,
#[codec(index = 65u8)]
EC,
#[codec(index = 66u8)]
EG,
#[codec(index = 67u8)]
SV,
#[codec(index = 68u8)]
GQ,
#[codec(index = 69u8)]
ER,
#[codec(index = 70u8)]
EE,
#[codec(index = 71u8)]
ET,
#[codec(index = 72u8)]
FK,
#[codec(index = 73u8)]
FO,
#[codec(index = 74u8)]
FJ,
#[codec(index = 75u8)]
FI,
#[codec(index = 76u8)]
FR,
#[codec(index = 77u8)]
GF,
#[codec(index = 78u8)]
PF,
#[codec(index = 79u8)]
TF,
#[codec(index = 80u8)]
GA,
#[codec(index = 81u8)]
GM,
#[codec(index = 82u8)]
GE,
#[codec(index = 83u8)]
DE,
#[codec(index = 84u8)]
GH,
#[codec(index = 85u8)]
GI,
#[codec(index = 86u8)]
GR,
#[codec(index = 87u8)]
GL,
#[codec(index = 88u8)]
GD,
#[codec(index = 89u8)]
GP,
#[codec(index = 90u8)]
GU,
#[codec(index = 91u8)]
GT,
#[codec(index = 92u8)]
GG,
#[codec(index = 93u8)]
GN,
#[codec(index = 94u8)]
GW,
#[codec(index = 95u8)]
GY,
#[codec(index = 96u8)]
HT,
#[codec(index = 97u8)]
HM,
#[codec(index = 98u8)]
VA,
#[codec(index = 99u8)]
HN,
#[codec(index = 100u8)]
HU,
#[codec(index = 101u8)]
IS,
#[codec(index = 102u8)]
IN,
#[codec(index = 103u8)]
ID,
#[codec(index = 104u8)]
IR,
#[codec(index = 105u8)]
IQ,
#[codec(index = 106u8)]
IE,
#[codec(index = 107u8)]
IM,
#[codec(index = 108u8)]
IL,
#[codec(index = 109u8)]
IT,
#[codec(index = 110u8)]
JM,
#[codec(index = 111u8)]
JP,
#[codec(index = 112u8)]
JE,
#[codec(index = 113u8)]
JO,
#[codec(index = 114u8)]
KZ,
#[codec(index = 115u8)]
KE,
#[codec(index = 116u8)]
KI,
#[codec(index = 117u8)]
KP,
#[codec(index = 118u8)]
KR,
#[codec(index = 119u8)]
KW,
#[codec(index = 120u8)]
KG,
#[codec(index = 121u8)]
LA,
#[codec(index = 122u8)]
LV,
#[codec(index = 123u8)]
LB,
#[codec(index = 124u8)]
LS,
#[codec(index = 125u8)]
LR,
#[codec(index = 126u8)]
LY,
#[codec(index = 127u8)]
LI,
#[codec(index = 128u8)]
LT,
#[codec(index = 129u8)]
LU,
#[codec(index = 130u8)]
MK,
#[codec(index = 131u8)]
MG,
#[codec(index = 132u8)]
MW,
#[codec(index = 133u8)]
MY,
#[codec(index = 134u8)]
MV,
#[codec(index = 135u8)]
ML,
#[codec(index = 136u8)]
MT,
#[codec(index = 137u8)]
MH,
#[codec(index = 138u8)]
MQ,
#[codec(index = 139u8)]
MR,
#[codec(index = 140u8)]
MU,
#[codec(index = 141u8)]
YT,
#[codec(index = 142u8)]
MX,
#[codec(index = 143u8)]
FM,
#[codec(index = 144u8)]
MD,
#[codec(index = 145u8)]
MC,
#[codec(index = 146u8)]
MN,
#[codec(index = 147u8)]
ME,
#[codec(index = 148u8)]
MS,
#[codec(index = 149u8)]
MA,
#[codec(index = 150u8)]
MZ,
#[codec(index = 151u8)]
MM,
#[codec(index = 152u8)]
NA,
#[codec(index = 153u8)]
NR,
#[codec(index = 154u8)]
NP,
#[codec(index = 155u8)]
NL,
#[codec(index = 156u8)]
AN,
#[codec(index = 157u8)]
NC,
#[codec(index = 158u8)]
NZ,
#[codec(index = 159u8)]
NI,
#[codec(index = 160u8)]
NE,
#[codec(index = 161u8)]
NG,
#[codec(index = 162u8)]
NU,
#[codec(index = 163u8)]
NF,
#[codec(index = 164u8)]
MP,
#[codec(index = 165u8)]
NO,
#[codec(index = 166u8)]
OM,
#[codec(index = 167u8)]
PK,
#[codec(index = 168u8)]
PW,
#[codec(index = 169u8)]
PS,
#[codec(index = 170u8)]
PA,
#[codec(index = 171u8)]
PG,
#[codec(index = 172u8)]
PY,
#[codec(index = 173u8)]
PE,
#[codec(index = 174u8)]
PH,
#[codec(index = 175u8)]
PN,
#[codec(index = 176u8)]
PL,
#[codec(index = 177u8)]
PT,
#[codec(index = 178u8)]
PR,
#[codec(index = 179u8)]
QA,
#[codec(index = 180u8)]
RE,
#[codec(index = 181u8)]
RO,
#[codec(index = 182u8)]
RU,
#[codec(index = 183u8)]
RW,
#[codec(index = 184u8)]
BL,
#[codec(index = 185u8)]
SH,
#[codec(index = 186u8)]
KN,
#[codec(index = 187u8)]
LC,
#[codec(index = 188u8)]
MF,
#[codec(index = 189u8)]
PM,
#[codec(index = 190u8)]
VC,
#[codec(index = 191u8)]
WS,
#[codec(index = 192u8)]
SM,
#[codec(index = 193u8)]
ST,
#[codec(index = 194u8)]
SA,
#[codec(index = 195u8)]
SN,
#[codec(index = 196u8)]
RS,
#[codec(index = 197u8)]
SC,
#[codec(index = 198u8)]
SL,
#[codec(index = 199u8)]
SG,
#[codec(index = 200u8)]
SK,
#[codec(index = 201u8)]
SI,
#[codec(index = 202u8)]
SB,
#[codec(index = 203u8)]
SO,
#[codec(index = 204u8)]
ZA,
#[codec(index = 205u8)]
GS,
#[codec(index = 206u8)]
SS,
#[codec(index = 207u8)]
ES,
#[codec(index = 208u8)]
LK,
#[codec(index = 209u8)]
SD,
#[codec(index = 210u8)]
SR,
#[codec(index = 211u8)]
SJ,
#[codec(index = 212u8)]
SZ,
#[codec(index = 213u8)]
SE,
#[codec(index = 214u8)]
CH,
#[codec(index = 215u8)]
SY,
#[codec(index = 216u8)]
TW,
#[codec(index = 217u8)]
TJ,
#[codec(index = 218u8)]
TZ,
#[codec(index = 219u8)]
TH,
#[codec(index = 220u8)]
TL,
#[codec(index = 221u8)]
TG,
#[codec(index = 222u8)]
TK,
#[codec(index = 223u8)]
TO,
#[codec(index = 224u8)]
TT,
#[codec(index = 225u8)]
TN,
#[codec(index = 226u8)]
TR,
#[codec(index = 227u8)]
TM,
#[codec(index = 228u8)]
TC,
#[codec(index = 229u8)]
TV,
#[codec(index = 230u8)]
UG,
#[codec(index = 231u8)]
UA,
#[codec(index = 232u8)]
AE,
#[codec(index = 233u8)]
GB,
#[codec(index = 234u8)]
US,
#[codec(index = 235u8)]
UM,
#[codec(index = 236u8)]
UY,
#[codec(index = 237u8)]
UZ,
#[codec(index = 238u8)]
VU,
#[codec(index = 239u8)]
VE,
#[codec(index = 240u8)]
VN,
#[codec(index = 241u8)]
VI,
#[codec(index = 242u8)]
WF,
#[codec(index = 243u8)]
EH,
#[codec(index = 244u8)]
YE,
#[codec(index = 245u8)]
ZM,
#[codec(index = 246u8)]
ZW,
#[codec(index = 247u8)]
BQ,
#[codec(index = 248u8)]
CW,
#[codec(index = 249u8)]
SX,
}
}
pub mod statistics {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StatUpdate {
pub key2: polymesh_primitives::statistics::Stat2ndKey,
pub value: Option<u128>,
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Stat2ndKey {
#[codec(index = 0u8)]
NoClaimStat,
#[codec(index = 1u8)]
Claim(polymesh_primitives::statistics::StatClaim),
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum StatClaim {
#[codec(index = 0u8)]
Accredited(bool),
#[codec(index = 1u8)]
Affiliate(bool),
#[codec(index = 2u8)]
Jurisdiction(Option<polymesh_primitives::jurisdiction::CountryCode>),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Stat1stKey {
pub asset: polymesh_primitives::statistics::AssetScope,
pub stat_type: polymesh_primitives::statistics::StatType,
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StatType {
pub op: polymesh_primitives::statistics::StatOpType,
pub claim_issuer: Option<(
polymesh_primitives::identity_claim::ClaimType,
polymesh_primitives::identity_id::IdentityId,
)>,
}
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum StatOpType {
#[codec(index = 0u8)]
Count,
#[codec(index = 1u8)]
Balance,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AssetScope {
#[codec(index = 0u8)]
Ticker(polymesh_primitives::ticker::Ticker),
}
}
pub mod transfer_compliance {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum TransferCondition {
#[codec(index = 0u8)]
MaxInvestorCount(u64),
#[codec(index = 1u8)]
MaxInvestorOwnership(sp_arithmetic::per_things::Permill),
#[codec(index = 2u8)]
ClaimCount(
polymesh_primitives::statistics::StatClaim,
polymesh_primitives::identity_id::IdentityId,
u64,
Option<u64>,
),
#[codec(index = 3u8)]
ClaimOwnership(
polymesh_primitives::statistics::StatClaim,
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
sp_arithmetic::per_things::Permill,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AssetTransferCompliance {
pub paused: bool,
pub requirements:
std::collections::BTreeSet<polymesh_primitives::transfer_compliance::TransferCondition>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct TransferConditionExemptKey {
pub asset: polymesh_primitives::statistics::AssetScope,
pub op: polymesh_primitives::statistics::StatOpType,
pub claim_type: Option<polymesh_primitives::identity_claim::ClaimType>,
}
}
pub mod agent {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AGId(pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AgentGroup {
#[codec(index = 0u8)]
Full,
#[codec(index = 1u8)]
Custom(polymesh_primitives::agent::AGId),
#[codec(index = 2u8)]
ExceptMeta,
#[codec(index = 3u8)]
PolymeshV1CAA,
#[codec(index = 4u8)]
PolymeshV1PIA,
}
}
pub mod event_only {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EventOnly<T>(pub T);
}
pub mod identity {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DidRecord<AccountId> {
pub primary_key: Option<AccountId>,
}
}
pub mod ticker {
use super::*;
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Ticker(pub [u8; 12usize]);
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PosRatio(pub u32, pub u32);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Beneficiary<Balance> {
pub id: polymesh_primitives::identity_id::IdentityId,
pub amount: Balance,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Url(pub Vec<u8>);
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DispatchableName(pub Vec<u8>);
#[derive(
Clone, Debug, PartialEq, Eq, PartialOrd, Ord, :: codec :: Encode, :: codec :: Decode,
)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PalletName(pub Vec<u8>);
}
pub mod pallet_identity {
use super::*;
pub mod types {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Claim1stKey {
pub target: polymesh_primitives::identity_id::IdentityId,
pub claim_type: polymesh_primitives::identity_claim::ClaimType,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Claim2ndKey {
pub issuer: polymesh_primitives::identity_id::IdentityId,
pub scope: Option<polymesh_primitives::identity_claim::Scope>,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Register `target_account` with a new Identity."]
#[doc = ""]
#[doc = "# Failure"]
#[doc = "- `origin` has to be a active CDD provider. Inactive CDD providers cannot add new"]
#[doc = "claims."]
#[doc = "- `target_account` (primary key of the new Identity) can be linked to just one and only"]
#[doc = "one identity."]
#[doc = "- External secondary keys can be linked to just one identity."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`7_000_000_000 + 600_000 * secondary_keys.len()`"]
#[codec(index = 0u8)]
cdd_register_did {
target_account: ::polymesh_api_client::sp_core::crypto::AccountId32,
secondary_keys: Vec<
polymesh_primitives::secondary_key::SecondaryKey<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
},
#[doc = "Invalidates any claim generated by `cdd` from `disable_from` timestamps."]
#[doc = ""]
#[doc = "You can also define an expiration time,"]
#[doc = "which will invalidate all claims generated by that `cdd` and remove it as CDD member group."]
#[codec(index = 1u8)]
invalidate_cdd_claims {
cdd: polymesh_primitives::identity_id::IdentityId,
disable_from: u64,
expiry: Option<u64>,
},
#[doc = "Deprecated. Use `remove_secondary_keys` instead."]
#[codec(index = 2u8)]
remove_secondary_keys_old {
keys_to_remove: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
},
#[doc = "Call this with the new primary key. By invoking this method, caller accepts authorization"]
#[doc = "to become the new primary key of the issuing identity. If a CDD service provider approved"]
#[doc = "this change (or this is not required), primary key of the DID is updated."]
#[doc = ""]
#[doc = "The caller (new primary key) must be either a secondary key of the issuing identity, or"]
#[doc = "unlinked to any identity."]
#[doc = ""]
#[doc = "Differs from rotate_primary_key_to_secondary in that it will unlink the old primary key"]
#[doc = "instead of leaving it as a secondary key."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `owner_auth_id` Authorization from the owner who initiated the change"]
#[doc = "* `cdd_auth_id` Authorization from a CDD service provider"]
#[codec(index = 3u8)]
accept_primary_key {
rotation_auth_id: u64,
optional_cdd_auth_id: Option<u64>,
},
#[doc = "Set if CDD authorization is required for updating primary key of an identity."]
#[doc = "Callable via root (governance)"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_required` CDD Authorization required or not"]
#[codec(index = 4u8)]
change_cdd_requirement_for_mk_rotation { auth_required: bool },
#[doc = "Join an identity as a secondary key."]
#[codec(index = 5u8)]
join_identity_as_key { auth_id: u64 },
#[doc = "Leave the secondary key's identity."]
#[codec(index = 6u8)]
leave_identity_as_key,
#[doc = "Adds a new claim record or edits an existing one."]
#[doc = ""]
#[doc = "Only called by did_issuer's secondary key."]
#[codec(index = 7u8)]
add_claim {
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
expiry: Option<u64>,
},
#[doc = "Marks the specified claim as revoked."]
#[codec(index = 8u8)]
revoke_claim {
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
},
#[doc = "Deprecated. Use `set_secondary_key_permissions` instead."]
#[codec(index = 9u8)]
set_permission_to_signer {
key: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
perms: polymesh_primitives::secondary_key::Permissions,
},
#[doc = "Placeholder for removed `legacy_set_permission_to_signer`."]
#[codec(index = 10u8)]
placeholder_legacy_set_permission_to_signer,
#[doc = "It disables all secondary keys at `did` identity."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = ""]
#[codec(index = 11u8)]
freeze_secondary_keys,
#[doc = "Re-enables all secondary keys of the caller's identity."]
#[codec(index = 12u8)]
unfreeze_secondary_keys,
#[doc = "Adds an authorization."]
#[codec(index = 13u8)]
add_authorization {
target: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
data: polymesh_primitives::authorization::AuthorizationData<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
expiry: Option<u64>,
},
#[doc = "Removes an authorization."]
#[doc = "_auth_issuer_pays determines whether the issuer of the authorisation pays the transaction fee"]
#[codec(index = 14u8)]
remove_authorization {
target: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
auth_id: u64,
_auth_issuer_pays: bool,
},
#[doc = "Deprecated. Use `add_secondary_keys_with_authorization` instead."]
#[codec(index = 15u8)]
add_secondary_keys_with_authorization_old {
additional_keys: Vec<
polymesh_common_utilities::traits::identity::SecondaryKeyWithAuthV1<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
expires_at: u64,
},
#[doc = "Add `Claim::InvestorUniqueness` claim for a given target identity."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = " Weight of the this extrinsic is depend on the computation that used to validate"]
#[doc = " the proof of claim, which will be a constant independent of user inputs."]
#[doc = "# </weight>"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Who provides the claim to the user? In this case, it's the user's account id as the user provides."]
#[doc = "* target - `IdentityId` to which the claim gets assigned."]
#[doc = "* claim - `InvestorUniqueness` claim details."]
#[doc = "* proof - To validate the self attestation."]
#[doc = "* expiry - Expiry of claim."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `DidMustAlreadyExist` Target should already been a part of the ecosystem."]
#[doc = "* `ClaimVariantNotAllowed` When origin trying to pass claim variant other than `InvestorUniqueness`."]
#[doc = "* `ConfidentialScopeClaimNotAllowed` When issuer is different from target or CDD_ID is invalid for given user."]
#[doc = "* `InvalidScopeClaim When proof is invalid."]
#[doc = "* `InvalidCDDId` when you are not the owner of that CDD_ID."]
#[codec(index = 16u8)]
add_investor_uniqueness_claim {
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))]
proof: [u8; 64usize],
expiry: Option<u64>,
},
#[doc = "Assuming this is executed by the GC voting majority, adds a new cdd claim record."]
#[codec(index = 17u8)]
gc_add_cdd_claim {
target: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Assuming this is executed by the GC voting majority, removes an existing cdd claim record."]
#[codec(index = 18u8)]
gc_revoke_cdd_claim {
target: polymesh_primitives::identity_id::IdentityId,
},
#[codec(index = 19u8)]
add_investor_uniqueness_claim_v2 {
target: polymesh_primitives::identity_id::IdentityId,
scope: polymesh_primitives::identity_claim::Scope,
claim: polymesh_primitives::identity_claim::Claim,
proof: confidential_identity_v2::claim_proofs::ScopeClaimProof,
expiry: Option<u64>,
},
#[doc = "Revokes a specific claim using its [Claim Unique Index](/pallet_identity/index.html#claim-unique-index) composed by `target`,"]
#[doc = "`claim_type`, and `scope`."]
#[doc = ""]
#[doc = "Please note that `origin` must be the issuer of the target claim."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `TargetHasNonZeroBalanceAtScopeId` when you try to revoke a `InvestorUniqueness*`"]
#[doc = "claim, and `target` identity still have any balance on the given `scope`."]
#[codec(index = 20u8)]
revoke_claim_by_index {
target: polymesh_primitives::identity_id::IdentityId,
claim_type: polymesh_primitives::identity_claim::ClaimType,
scope: Option<polymesh_primitives::identity_claim::Scope>,
},
#[doc = "Call this with the new primary key. By invoking this method, caller accepts authorization"]
#[doc = "to become the new primary key of the issuing identity. If a CDD service provider approved"]
#[doc = "this change, (or this is not required), primary key of the DID is updated."]
#[doc = ""]
#[doc = "The caller (new primary key) must be either a secondary key of the issuing identity, or"]
#[doc = "unlinked to any identity."]
#[doc = ""]
#[doc = "Differs from accept_primary_key in that it will leave the old primary key as a secondary"]
#[doc = "key with the permissions specified in the corresponding RotatePrimaryKeyToSecondary authorization"]
#[doc = "instead of unlinking the old primary key."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `owner_auth_id` Authorization from the owner who initiated the change"]
#[doc = "* `cdd_auth_id` Authorization from a CDD service provider"]
#[codec(index = 21u8)]
rotate_primary_key_to_secondary {
auth_id: u64,
optional_cdd_auth_id: Option<u64>,
},
#[doc = "Adds secondary keys to target identity `id`."]
#[doc = ""]
#[doc = "Keys are directly added to identity because each of them has an authorization."]
#[doc = ""]
#[doc = "# Arguments:"]
#[doc = " - `origin` which must be the primary key of the identity `id`."]
#[doc = " - `id` to which new secondary keys will be added."]
#[doc = " - `additional_keys` which includes secondary keys,"]
#[doc = " coupled with authorization data, to add to target identity."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = " - Can only called by primary key owner."]
#[doc = " - Keys should be able to linked to any identity."]
#[codec(index = 22u8)]
add_secondary_keys_with_authorization {
additional_keys: Vec<
polymesh_common_utilities::traits::identity::SecondaryKeyWithAuth<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
expires_at: u64,
},
#[doc = "Sets permissions for an specific `target_key` key."]
#[doc = ""]
#[doc = "Only the primary key of an identity is able to set secondary key permissions."]
#[codec(index = 23u8)]
set_secondary_key_permissions {
key: ::polymesh_api_client::sp_core::crypto::AccountId32,
perms: polymesh_primitives::secondary_key::Permissions,
},
#[doc = "Removes specified secondary keys of a DID if present."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = ""]
#[doc = "The extrinsic can only called by primary key owner."]
#[codec(index = 24u8)]
remove_secondary_keys {
keys_to_remove: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "One secondary or primary key can only belong to one DID"]
#[codec(index = 0u8)]
AlreadyLinked,
#[doc = "Missing current identity on the transaction"]
#[codec(index = 1u8)]
MissingCurrentIdentity,
#[doc = "Signatory is not pre authorized by the identity"]
#[codec(index = 2u8)]
Unauthorized,
#[doc = "Account Id cannot be extracted from signer"]
#[codec(index = 3u8)]
InvalidAccountKey,
#[doc = "Only CDD service providers are allowed."]
#[codec(index = 4u8)]
UnAuthorizedCddProvider,
#[doc = "An invalid authorization from the owner."]
#[codec(index = 5u8)]
InvalidAuthorizationFromOwner,
#[doc = "An invalid authorization from the CDD provider."]
#[codec(index = 6u8)]
InvalidAuthorizationFromCddProvider,
#[doc = "Attestation was not by a CDD service provider."]
#[codec(index = 7u8)]
NotCddProviderAttestation,
#[doc = "Authorizations are not for the same DID."]
#[codec(index = 8u8)]
AuthorizationsNotForSameDids,
#[doc = "The DID must already exist."]
#[codec(index = 9u8)]
DidMustAlreadyExist,
#[doc = "Current identity cannot be forwarded, it is not a secondary key of target identity."]
#[codec(index = 10u8)]
CurrentIdentityCannotBeForwarded,
#[doc = "The offchain authorization has expired."]
#[codec(index = 11u8)]
AuthorizationExpired,
#[doc = "The target DID has no valid CDD."]
#[codec(index = 12u8)]
TargetHasNoCdd,
#[doc = "Authorization has been explicitly revoked."]
#[codec(index = 13u8)]
AuthorizationHasBeenRevoked,
#[doc = "An invalid authorization signature."]
#[codec(index = 14u8)]
InvalidAuthorizationSignature,
#[doc = "This key is not allowed to execute a given operation."]
#[codec(index = 15u8)]
KeyNotAllowed,
#[doc = "Only the primary key is allowed to revoke an Identity Signatory off-chain authorization."]
#[codec(index = 16u8)]
NotPrimaryKey,
#[doc = "The DID does not exist."]
#[codec(index = 17u8)]
DidDoesNotExist,
#[doc = "The DID already exists."]
#[codec(index = 18u8)]
DidAlreadyExists,
#[doc = "The secondary keys contain the primary key."]
#[codec(index = 19u8)]
SecondaryKeysContainPrimaryKey,
#[doc = "Couldn't charge fee for the transaction."]
#[codec(index = 20u8)]
FailedToChargeFee,
#[doc = "Signer is not a secondary key of the provided identity"]
#[codec(index = 21u8)]
NotASigner,
#[doc = "Cannot convert a `T::AccountId` to `AnySignature::Signer::AccountId`."]
#[codec(index = 22u8)]
CannotDecodeSignerAccountId,
#[doc = "Multisig can not be unlinked from an identity while it still holds POLYX"]
#[codec(index = 23u8)]
MultiSigHasBalance,
#[doc = "Confidential Scope claims can be added by an Identity to it-self."]
#[codec(index = 24u8)]
ConfidentialScopeClaimNotAllowed,
#[doc = "Addition of a new scope claim gets invalidated."]
#[codec(index = 25u8)]
InvalidScopeClaim,
#[doc = "Try to add a claim variant using un-designated extrinsic."]
#[codec(index = 26u8)]
ClaimVariantNotAllowed,
#[doc = "Try to delete the IU claim even when the user has non zero balance at given scopeId."]
#[codec(index = 27u8)]
TargetHasNonZeroBalanceAtScopeId,
#[doc = "CDDId should be unique & same within all cdd claims possessed by a DID."]
#[codec(index = 28u8)]
CDDIdNotUniqueForIdentity,
#[doc = "Non systematic CDD providers can not create default cdd_id claims."]
#[codec(index = 29u8)]
InvalidCDDId,
#[doc = "Claim and Proof versions are different."]
#[codec(index = 30u8)]
ClaimAndProofVersionsDoNotMatch,
#[doc = "The account key is being used, it can't be unlinked."]
#[codec(index = 31u8)]
AccountKeyIsBeingUsed,
#[doc = "A custom scope is too long."]
#[doc = "It can at most be `32` characters long."]
#[codec(index = 32u8)]
CustomScopeTooLong,
}
}
pub mod pallet_session {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Sets the session key(s) of the function caller to `keys`."]
#[doc = "Allows an account to set its session key prior to becoming a validator."]
#[doc = "This doesn't take effect until the next session."]
#[doc = ""]
#[doc = "The dispatch origin of this function must be signed."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(1)`. Actual cost depends on the number of length of"]
#[doc = " `T::Keys::key_ids()` which is fixed."]
#[doc = "- DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys`"]
#[doc = "- DbWrites: `origin account`, `NextKeys`"]
#[doc = "- DbReads per key id: `KeyOwner`"]
#[doc = "- DbWrites per key id: `KeyOwner`"]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
set_keys {
keys: polymesh_runtime_develop::runtime::SessionKeys,
proof: Vec<u8>,
},
#[doc = "Removes any session key(s) of the function caller."]
#[doc = ""]
#[doc = "This doesn't take effect until the next session."]
#[doc = ""]
#[doc = "The dispatch origin of this function must be Signed and the account must be either be"]
#[doc = "convertible to a validator ID using the chain's typical addressing system (this usually"]
#[doc = "means being a controller account) or directly convertible into a validator ID (which"]
#[doc = "usually means being a stash account)."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(1)` in number of key types. Actual cost depends on the number of length"]
#[doc = " of `T::Keys::key_ids()` which is fixed."]
#[doc = "- DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account`"]
#[doc = "- DbWrites: `NextKeys`, `origin account`"]
#[doc = "- DbWrites per key id: `KeyOwner`"]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
purge_keys,
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "New session has happened. Note that the argument is the session index, not the"]
#[doc = "block number as the type might suggest."]
#[codec(index = 0u8)]
NewSession { session_index: u32 },
}
#[doc = "Error for the session pallet."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Invalid ownership proof."]
#[codec(index = 0u8)]
InvalidProof,
#[doc = "No associated validator ID for account."]
#[codec(index = 1u8)]
NoAssociatedValidatorId,
#[doc = "Registered duplicate key."]
#[codec(index = 2u8)]
DuplicatedKey,
#[doc = "No keys are associated with this account."]
#[codec(index = 3u8)]
NoKeys,
#[doc = "Key setting account is not live, so it's impossible to associate keys."]
#[codec(index = 4u8)]
NoAccount,
}
}
}
pub mod pallet_contracts {
use super::*;
pub mod storage {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DeletedContract {
pub trie_id: Vec<u8>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct RawContractInfo<CodeHash, Balance> {
pub trie_id: Vec<u8>,
pub code_hash: CodeHash,
pub storage_deposit: Balance,
}
}
pub mod pallet {
use super::*;
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Makes a call to an account, optionally transferring some balance."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = ""]
#[doc = "* `dest`: Address of the contract to call."]
#[doc = "* `value`: The balance to transfer from the `origin` to `dest`."]
#[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."]
#[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged from the"]
#[doc = " caller to pay for the storage consumed."]
#[doc = "* `data`: The input data to pass to the contract."]
#[doc = ""]
#[doc = "* If the account is a smart-contract account, the associated code will be"]
#[doc = "executed and any value will be transferred."]
#[doc = "* If the account is a regular account, any value will be transferred."]
#[doc = "* If no account exists and the call value is not less than `existential_deposit`,"]
#[doc = "a regular account will be created and any value will be transferred."]
#[codec(index = 0u8)]
call {
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
value: u128,
#[codec(compact)]
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
data: Vec<u8>,
},
#[doc = "Instantiates a new contract from the supplied `code` optionally transferring"]
#[doc = "some balance."]
#[doc = ""]
#[doc = "This dispatchable has the same effect as calling [`Self::upload_code`] +"]
#[doc = "[`Self::instantiate`]. Bundling them together provides efficiency gains. Please"]
#[doc = "also check the documentation of [`Self::upload_code`]."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = ""]
#[doc = "* `value`: The balance to transfer from the `origin` to the newly created contract."]
#[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."]
#[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "* `code`: The contract code to deploy in raw bytes."]
#[doc = "* `data`: The input data to pass to the contract constructor."]
#[doc = "* `salt`: Used for the address derivation. See [`Pallet::contract_address`]."]
#[doc = ""]
#[doc = "Instantiation is executed as follows:"]
#[doc = ""]
#[doc = "- The supplied `code` is instrumented, deployed, and a `code_hash` is created for that"]
#[doc = " code."]
#[doc = "- If the `code_hash` already exists on the chain the underlying `code` will be shared."]
#[doc = "- The destination address is computed based on the sender, code_hash and the salt."]
#[doc = "- The smart-contract account is created at the computed address."]
#[doc = "- The `value` is transferred to the new account."]
#[doc = "- The `deploy` function is executed in the context of the newly-created account."]
#[codec(index = 1u8)]
instantiate_with_code {
#[codec(compact)]
value: u128,
#[codec(compact)]
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
code: Vec<u8>,
data: Vec<u8>,
salt: Vec<u8>,
},
#[doc = "Instantiates a contract from a previously deployed wasm binary."]
#[doc = ""]
#[doc = "This function is identical to [`Self::instantiate_with_code`] but without the"]
#[doc = "code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary"]
#[doc = "must be supplied."]
#[codec(index = 2u8)]
instantiate {
#[codec(compact)]
value: u128,
#[codec(compact)]
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
code_hash: primitive_types::H256,
data: Vec<u8>,
salt: Vec<u8>,
},
#[doc = "Upload new `code` without instantiating a contract from it."]
#[doc = ""]
#[doc = "If the code does not already exist a deposit is reserved from the caller"]
#[doc = "and unreserved only when [`Self::remove_code`] is called. The size of the reserve"]
#[doc = "depends on the instrumented size of the the supplied `code`."]
#[doc = ""]
#[doc = "If the code already exists in storage it will still return `Ok` and upgrades"]
#[doc = "the in storage version to the current"]
#[doc = "[`InstructionWeights::version`](InstructionWeights)."]
#[doc = ""]
#[doc = "# Note"]
#[doc = ""]
#[doc = "Anyone can instantiate a contract from any uploaded code and thus prevent its removal."]
#[doc = "To avoid this situation a constructor could employ access control so that it can"]
#[doc = "only be instantiated by permissioned entities. The same is true when uploading"]
#[doc = "through [`Self::instantiate_with_code`]."]
#[codec(index = 3u8)]
upload_code {
code: Vec<u8>,
storage_deposit_limit: Option<::codec::Compact<u128>>,
},
#[doc = "Remove the code stored under `code_hash` and refund the deposit to its owner."]
#[doc = ""]
#[doc = "A code can only be removed by its original uploader (its owner) and only if it is"]
#[doc = "not used by any contract."]
#[codec(index = 4u8)]
remove_code { code_hash: primitive_types::H256 },
}
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "A new schedule must have a greater version than the current one."]
#[codec(index = 0u8)]
InvalidScheduleVersion,
#[doc = "Invalid combination of flags supplied to `seal_call` or `seal_delegate_call`."]
#[codec(index = 1u8)]
InvalidCallFlags,
#[doc = "The executed contract exhausted its gas limit."]
#[codec(index = 2u8)]
OutOfGas,
#[doc = "The output buffer supplied to a contract API call was too small."]
#[codec(index = 3u8)]
OutputBufferTooSmall,
#[doc = "Performing the requested transfer failed. Probably because there isn't enough"]
#[doc = "free balance in the sender's account."]
#[codec(index = 4u8)]
TransferFailed,
#[doc = "Performing a call was denied because the calling depth reached the limit"]
#[doc = "of what is specified in the schedule."]
#[codec(index = 5u8)]
MaxCallDepthReached,
#[doc = "No contract was found at the specified address."]
#[codec(index = 6u8)]
ContractNotFound,
#[doc = "The code supplied to `instantiate_with_code` exceeds the limit specified in the"]
#[doc = "current schedule."]
#[codec(index = 7u8)]
CodeTooLarge,
#[doc = "No code could be found at the supplied code hash."]
#[codec(index = 8u8)]
CodeNotFound,
#[doc = "A buffer outside of sandbox memory was passed to a contract API function."]
#[codec(index = 9u8)]
OutOfBounds,
#[doc = "Input passed to a contract API function failed to decode as expected type."]
#[codec(index = 10u8)]
DecodingFailed,
#[doc = "Contract trapped during execution."]
#[codec(index = 11u8)]
ContractTrapped,
#[doc = "The size defined in `T::MaxValueSize` was exceeded."]
#[codec(index = 12u8)]
ValueTooLarge,
#[doc = "Termination of a contract is not allowed while the contract is already"]
#[doc = "on the call stack. Can be triggered by `seal_terminate`."]
#[codec(index = 13u8)]
TerminatedWhileReentrant,
#[doc = "`seal_call` forwarded this contracts input. It therefore is no longer available."]
#[codec(index = 14u8)]
InputForwarded,
#[doc = "The subject passed to `seal_random` exceeds the limit."]
#[codec(index = 15u8)]
RandomSubjectTooLong,
#[doc = "The amount of topics passed to `seal_deposit_events` exceeds the limit."]
#[codec(index = 16u8)]
TooManyTopics,
#[doc = "The topics passed to `seal_deposit_events` contains at least one duplicate."]
#[codec(index = 17u8)]
DuplicateTopics,
#[doc = "The chain does not provide a chain extension. Calling the chain extension results"]
#[doc = "in this error. Note that this usually shouldn't happen as deploying such contracts"]
#[doc = "is rejected."]
#[codec(index = 18u8)]
NoChainExtension,
#[doc = "Removal of a contract failed because the deletion queue is full."]
#[doc = ""]
#[doc = "This can happen when calling `seal_terminate`."]
#[doc = "The queue is filled by deleting contracts and emptied by a fixed amount each block."]
#[doc = "Trying again during another block is the only way to resolve this issue."]
#[codec(index = 19u8)]
DeletionQueueFull,
#[doc = "A contract with the same AccountId already exists."]
#[codec(index = 20u8)]
DuplicateContract,
#[doc = "A contract self destructed in its constructor."]
#[doc = ""]
#[doc = "This can be triggered by a call to `seal_terminate`."]
#[codec(index = 21u8)]
TerminatedInConstructor,
#[doc = "The debug message specified to `seal_debug_message` does contain invalid UTF-8."]
#[codec(index = 22u8)]
DebugMessageInvalidUTF8,
#[doc = "A call tried to invoke a contract that is flagged as non-reentrant."]
#[codec(index = 23u8)]
ReentranceDenied,
#[doc = "Origin doesn't have enough balance to pay the required storage deposits."]
#[codec(index = 24u8)]
StorageDepositNotEnoughFunds,
#[doc = "More storage was created than allowed by the storage deposit limit."]
#[codec(index = 25u8)]
StorageDepositLimitExhausted,
#[doc = "Code removal was denied because the code is still in use by at least one contract."]
#[codec(index = 26u8)]
CodeInUse,
#[doc = "The contract ran to completion but decided to revert its storage changes."]
#[doc = "Please note that this error is only returned from extrinsics. When called directly"]
#[doc = "or via RPC an `Ok` will be returned. In this case the caller needs to inspect the flags"]
#[doc = "to determine whether a reversion has taken place."]
#[codec(index = 27u8)]
ContractReverted,
#[doc = "The contract's code was found to be invalid during validation or instrumentation."]
#[doc = "A more detailed error can be found on the node console if debug messages are enabled"]
#[doc = "or in the debug buffer which is returned to RPC clients."]
#[codec(index = 28u8)]
CodeRejected,
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "Contract deployed by address at the specified address."]
#[codec(index = 0u8)]
Instantiated {
deployer: ::polymesh_api_client::sp_core::crypto::AccountId32,
contract: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Contract has been removed."]
#[doc = ""]
#[doc = "# Note"]
#[doc = ""]
#[doc = "The only way for a contract to be removed and emitting this event is by calling"]
#[doc = "`seal_terminate`."]
#[codec(index = 1u8)]
Terminated {
#[doc = "The contract that was terminated."]
contract: ::polymesh_api_client::sp_core::crypto::AccountId32,
#[doc = "The account that received the contracts remaining balance"]
beneficiary: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Code with the specified hash has been stored."]
#[codec(index = 2u8)]
CodeStored { code_hash: primitive_types::H256 },
#[doc = "A custom event emitted by the contract."]
#[codec(index = 3u8)]
ContractEmitted {
#[doc = "The contract that emitted the event."]
contract: ::polymesh_api_client::sp_core::crypto::AccountId32,
#[doc = "Data supplied by the contract. Metadata generated during contract compilation"]
#[doc = "is needed to decode it."]
data: Vec<u8>,
},
#[doc = "A code with the specified hash was removed."]
#[codec(index = 4u8)]
CodeRemoved { code_hash: primitive_types::H256 },
#[doc = "A contract's code was updated."]
#[codec(index = 5u8)]
ContractCodeUpdated {
#[doc = "The contract that has been updated."]
contract: ::polymesh_api_client::sp_core::crypto::AccountId32,
#[doc = "New code hash that was set for the contract."]
new_code_hash: primitive_types::H256,
#[doc = "Previous code hash of the contract."]
old_code_hash: primitive_types::H256,
},
}
}
pub mod wasm {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct OwnerInfo {
pub owner: ::polymesh_api_client::sp_core::crypto::AccountId32,
#[codec(compact)]
pub deposit: u128,
#[codec(compact)]
pub refcount: u64,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PrefabWasmModule {
#[codec(compact)]
pub instruction_weights_version: u32,
#[codec(compact)]
pub initial: u32,
#[codec(compact)]
pub maximum: u32,
pub code: Vec<u8>,
}
}
pub mod schedule {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Schedule {
pub limits: pallet_contracts::schedule::Limits,
pub instruction_weights: pallet_contracts::schedule::InstructionWeights,
pub host_fn_weights: pallet_contracts::schedule::HostFnWeights,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct InstructionWeights {
pub version: u32,
pub i64const: u32,
pub i64load: u32,
pub i64store: u32,
pub select: u32,
pub r#if: u32,
pub br: u32,
pub br_if: u32,
pub br_table: u32,
pub br_table_per_entry: u32,
pub call: u32,
pub call_indirect: u32,
pub call_indirect_per_param: u32,
pub local_get: u32,
pub local_set: u32,
pub local_tee: u32,
pub global_get: u32,
pub global_set: u32,
pub memory_current: u32,
pub memory_grow: u32,
pub i64clz: u32,
pub i64ctz: u32,
pub i64popcnt: u32,
pub i64eqz: u32,
pub i64extendsi32: u32,
pub i64extendui32: u32,
pub i32wrapi64: u32,
pub i64eq: u32,
pub i64ne: u32,
pub i64lts: u32,
pub i64ltu: u32,
pub i64gts: u32,
pub i64gtu: u32,
pub i64les: u32,
pub i64leu: u32,
pub i64ges: u32,
pub i64geu: u32,
pub i64add: u32,
pub i64sub: u32,
pub i64mul: u32,
pub i64divs: u32,
pub i64divu: u32,
pub i64rems: u32,
pub i64remu: u32,
pub i64and: u32,
pub i64or: u32,
pub i64xor: u32,
pub i64shl: u32,
pub i64shrs: u32,
pub i64shru: u32,
pub i64rotl: u32,
pub i64rotr: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Limits {
pub event_topics: u32,
pub stack_height: Option<u32>,
pub globals: u32,
pub parameters: u32,
pub memory_pages: u32,
pub table_size: u32,
pub br_table_size: u32,
pub subject_len: u32,
pub call_depth: u32,
pub payload_len: u32,
pub code_len: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct HostFnWeights {
pub caller: u64,
pub is_contract: u64,
pub code_hash: u64,
pub own_code_hash: u64,
pub caller_is_origin: u64,
pub address: u64,
pub gas_left: u64,
pub balance: u64,
pub value_transferred: u64,
pub minimum_balance: u64,
pub block_number: u64,
pub now: u64,
pub weight_to_fee: u64,
pub gas: u64,
pub input: u64,
pub input_per_byte: u64,
pub r#return: u64,
pub return_per_byte: u64,
pub terminate: u64,
pub random: u64,
pub deposit_event: u64,
pub deposit_event_per_topic: u64,
pub deposit_event_per_byte: u64,
pub debug_message: u64,
pub set_storage: u64,
pub set_storage_per_new_byte: u64,
pub set_storage_per_old_byte: u64,
pub set_code_hash: u64,
pub clear_storage: u64,
pub clear_storage_per_byte: u64,
pub contains_storage: u64,
pub contains_storage_per_byte: u64,
pub get_storage: u64,
pub get_storage_per_byte: u64,
pub take_storage: u64,
pub take_storage_per_byte: u64,
pub transfer: u64,
pub call: u64,
pub delegate_call: u64,
pub call_transfer_surcharge: u64,
pub call_per_cloned_byte: u64,
pub instantiate: u64,
pub instantiate_transfer_surcharge: u64,
pub instantiate_per_salt_byte: u64,
pub hash_sha2_256: u64,
pub hash_sha2_256_per_byte: u64,
pub hash_keccak_256: u64,
pub hash_keccak_256_per_byte: u64,
pub hash_blake2_256: u64,
pub hash_blake2_256_per_byte: u64,
pub hash_blake2_128: u64,
pub hash_blake2_128_per_byte: u64,
pub ecdsa_recover: u64,
pub ecdsa_to_eth_address: u64,
}
}
}
pub mod pallet_rewards {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Claim an ITN reward."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "* `itn_address` specifying the awarded address on ITN."]
#[doc = "* `signature` authenticating the claim to the reward."]
#[doc = " The signature should contain `reward_address` followed by the suffix `\"claim_itn_reward\"`,"]
#[doc = " and must have been signed by `itn_address`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `InsufficientBalance` - Itn rewards has insufficient funds to issue the reward."]
#[doc = "* `InvalidSignature` - `signature` had an invalid signer or invalid message."]
#[doc = "* `ItnRewardAlreadyClaimed` - Reward issued to the `itn_address` has already been claimed."]
#[doc = "* `UnknownItnAddress` - `itn_address` is not in the rewards table and has no reward to be claimed."]
#[codec(index = 0u8)]
claim_itn_reward {
reward_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
itn_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
signature: sp_runtime::MultiSignature,
},
#[codec(index = 1u8)]
set_itn_reward_status {
itn_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
status: pallet_rewards::ItnRewardStatus,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Address was not found in the list of Itn addresses."]
#[codec(index = 0u8)]
UnknownItnAddress,
#[doc = "Itn reward was already claimed."]
#[codec(index = 1u8)]
ItnRewardAlreadyClaimed,
#[doc = "Provided signature was invalid."]
#[codec(index = 2u8)]
InvalidSignature,
#[doc = "Balance can not be converted to a primitive."]
#[codec(index = 3u8)]
UnableToCovertBalance,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "Itn reward was claimed."]
#[codec(index = 0u8)]
ItnRewardClaimed(AccountId, u128),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ItnRewardStatus {
#[codec(index = 0u8)]
Unclaimed(u128),
#[codec(index = 1u8)]
Claimed,
}
}
pub mod pallet_babe {
use super::*;
pub mod pallet {
use super::*;
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "An equivocation proof provided as part of an equivocation report is invalid."]
#[codec(index = 0u8)]
InvalidEquivocationProof,
#[doc = "A key ownership proof provided as part of an equivocation report is invalid."]
#[codec(index = 1u8)]
InvalidKeyOwnershipProof,
#[doc = "A given equivocation report is valid but already previously reported."]
#[codec(index = 2u8)]
DuplicateOffenceReport,
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Report authority equivocation/misbehavior. This method will verify"]
#[doc = "the equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence will"]
#[doc = "be reported."]
#[codec(index = 0u8)]
report_equivocation {
equivocation_proof: ::std::boxed::Box<
sp_consensus_slots::EquivocationProof<
sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>,
sp_consensus_babe::app::Public,
>,
>,
key_owner_proof: sp_session::MembershipProof,
},
#[doc = "Report authority equivocation/misbehavior. This method will verify"]
#[doc = "the equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence will"]
#[doc = "be reported."]
#[doc = "This extrinsic must be called unsigned and it is expected that only"]
#[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"]
#[doc = "if the block author is defined it will be defined as the equivocation"]
#[doc = "reporter."]
#[codec(index = 1u8)]
report_equivocation_unsigned {
equivocation_proof: ::std::boxed::Box<
sp_consensus_slots::EquivocationProof<
sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>,
sp_consensus_babe::app::Public,
>,
>,
key_owner_proof: sp_session::MembershipProof,
},
#[doc = "Plan an epoch config change. The epoch config change is recorded and will be enacted on"]
#[doc = "the next call to `enact_epoch_change`. The config will be activated one epoch after."]
#[doc = "Multiple calls to this method will replace any existing planned config change that had"]
#[doc = "not been enacted yet."]
#[codec(index = 2u8)]
plan_config_change {
config: sp_consensus_babe::digests::NextConfigDescriptor,
},
}
}
}
pub mod sp_npos_elections {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ElectionScore {
pub minimal_stake: u128,
pub sum_stake: u128,
pub sum_stake_squared: u128,
}
}
pub mod pallet_relayer {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Subsidy<Acc> {
pub paying_key: Acc,
pub remaining: u128,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Creates an authorization to allow `user_key` to accept the caller (`origin == paying_key`) as their subsidiser."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key to subsidise."]
#[doc = "- `polyx_limit` the initial POLYX limit for this subsidy."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[codec(index = 0u8)]
set_paying_key {
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
polyx_limit: u128,
},
#[doc = "Accepts a `paying_key` authorization."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `auth_id` the authorization id to accept a `paying_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AuthorizationError::Invalid` if `auth_id` does not exist for the given caller."]
#[doc = "- `AuthorizationError::Expired` if `auth_id` the authorization has expired."]
#[doc = "- `AuthorizationError::BadType` if `auth_id` was not a `AddRelayerPayingKey` authorization."]
#[doc = "- `NotAuthorizedForUserKey` if `origin` is not authorized to accept the authorization for the `user_key`."]
#[doc = "- `NotAuthorizedForPayingKey` if the authorization was created an identity different from the `paying_key`'s identity."]
#[doc = "- `UserKeyCddMissing` if the `user_key` is not attached to a CDD'd identity."]
#[doc = "- `PayingKeyCddMissing` if the `paying_key` is not attached to a CDD'd identity."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[codec(index = 1u8)]
accept_paying_key { auth_id: u64 },
#[doc = "Removes the `paying_key` from a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key to remove the subsidy from."]
#[doc = "- `paying_key` the paying key that was subsidising the `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NotAuthorizedForUserKey` if `origin` is not authorized to remove the subsidy for the `user_key`."]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if the `paying_key` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[codec(index = 2u8)]
remove_paying_key {
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
paying_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Updates the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `polyx_limit` the amount of POLYX available for subsidising the `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[codec(index = 3u8)]
update_polyx_limit {
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
polyx_limit: u128,
},
#[doc = "Increase the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `amount` the amount of POLYX to add to the subsidy of `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[doc = "- `Overlow` if the subsidy's remaining POLYX would have overflowed `u128::MAX`."]
#[codec(index = 4u8)]
increase_polyx_limit {
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
amount: u128,
},
#[doc = "Decrease the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `amount` the amount of POLYX to remove from the subsidy of `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[doc = "- `Overlow` if the subsidy has less then `amount` POLYX remaining."]
#[codec(index = 5u8)]
decrease_polyx_limit {
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
amount: u128,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The `user_key` is not attached to a CDD'd identity."]
#[codec(index = 0u8)]
UserKeyCddMissing,
#[doc = "The `user_key` is not attached to a CDD'd identity."]
#[codec(index = 1u8)]
PayingKeyCddMissing,
#[doc = "The `user_key` doesn't have a `paying_key`."]
#[codec(index = 2u8)]
NoPayingKey,
#[doc = "The `user_key` has a different `paying_key`."]
#[codec(index = 3u8)]
NotPayingKey,
#[doc = "The signer is not authorized for `paying_key`."]
#[codec(index = 4u8)]
NotAuthorizedForPayingKey,
#[doc = "The signer is not authorized for `user_key`."]
#[codec(index = 5u8)]
NotAuthorizedForUserKey,
#[doc = "The remaining POLYX for `user_key` overflowed."]
#[codec(index = 6u8)]
Overflow,
}
}
pub mod sp_finality_grandpa {
use super::*;
pub mod app {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature(pub sp_core::ed25519::Signature);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub sp_core::ed25519::Public);
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EquivocationProof<H, N> {
pub set_id: u64,
pub equivocation: sp_finality_grandpa::Equivocation<H, N>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Equivocation<H, N> {
#[codec(index = 0u8)]
Prevote(
finality_grandpa::Equivocation<
sp_finality_grandpa::app::Public,
finality_grandpa::Prevote<H, N>,
sp_finality_grandpa::app::Signature,
>,
),
#[codec(index = 1u8)]
Precommit(
finality_grandpa::Equivocation<
sp_finality_grandpa::app::Public,
finality_grandpa::Precommit<H, N>,
sp_finality_grandpa::app::Signature,
>,
),
}
}
pub mod sp_staking {
use super::*;
pub mod offence {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct OffenceDetails<Reporter, Offender> {
pub offender: Offender,
pub reporters: Vec<Reporter>,
}
}
}
pub mod sp_consensus_babe {
use super::*;
pub mod app {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub sp_core::sr25519::Public);
}
pub mod digests {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum NextConfigDescriptor {
#[codec(index = 1u8)]
V1 {
c: (u64, u64),
allowed_slots: sp_consensus_babe::AllowedSlots,
},
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum AllowedSlots {
#[codec(index = 0u8)]
PrimarySlots,
#[codec(index = 1u8)]
PrimaryAndSecondaryPlainSlots,
#[codec(index = 2u8)]
PrimaryAndSecondaryVRFSlots,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BabeEpochConfiguration {
pub c: (u64, u64),
pub allowed_slots: sp_consensus_babe::AllowedSlots,
}
}
pub mod polymesh_extensions {
use super::*;
pub mod check_weight {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckWeight(pub frame_system::extensions::check_weight::CheckWeight);
}
}
pub mod pallet_staking {
use super::*;
pub mod slashing {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SpanRecord<Balance> {
pub slashed: Balance,
pub paid_out: Balance,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SlashingSpans {
pub span_index: u32,
pub last_start: u32,
pub last_nonzero_slash: u32,
pub prior: Vec<u32>,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct UnlockChunk<Balance> {
#[codec(compact)]
pub value: Balance,
#[codec(compact)]
pub era: u32,
}
#[doc = "Error for the staking module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Not a controller account."]
#[codec(index = 0u8)]
NotController,
#[doc = "Not a stash account."]
#[codec(index = 1u8)]
NotStash,
#[doc = "Stash is already bonded."]
#[codec(index = 2u8)]
AlreadyBonded,
#[doc = "Controller is already paired."]
#[codec(index = 3u8)]
AlreadyPaired,
#[doc = "Targets cannot be empty."]
#[codec(index = 4u8)]
EmptyTargets,
#[doc = "Slash record index out of bounds."]
#[codec(index = 5u8)]
InvalidSlashIndex,
#[doc = "Can not bond with value less than minimum balance."]
#[codec(index = 6u8)]
InsufficientValue,
#[doc = "Can not schedule more unlock chunks."]
#[codec(index = 7u8)]
NoMoreChunks,
#[doc = "Can not rebond without unlocking chunks."]
#[codec(index = 8u8)]
NoUnlockChunk,
#[doc = "Attempting to target a stash that still has funds."]
#[codec(index = 9u8)]
FundedTarget,
#[doc = "Invalid era to reward."]
#[codec(index = 10u8)]
InvalidEraToReward,
#[doc = "Items are not sorted and unique."]
#[codec(index = 11u8)]
NotSortedAndUnique,
#[doc = "Rewards for this era have already been claimed for this validator."]
#[codec(index = 12u8)]
AlreadyClaimed,
#[doc = "The submitted result is received out of the open window."]
#[codec(index = 13u8)]
OffchainElectionEarlySubmission,
#[doc = "The submitted result is not as good as the one stored on chain."]
#[codec(index = 14u8)]
OffchainElectionWeakSubmission,
#[doc = "The snapshot data of the current window is missing."]
#[codec(index = 15u8)]
SnapshotUnavailable,
#[doc = "Incorrect number of winners were presented."]
#[codec(index = 16u8)]
OffchainElectionBogusWinnerCount,
#[doc = "One of the submitted winners is not an active candidate on chain (index is out of range"]
#[doc = "in snapshot)."]
#[codec(index = 17u8)]
OffchainElectionBogusWinner,
#[doc = "Error while building the assignment type from the compact. This can happen if an index"]
#[doc = "is invalid, or if the weights _overflow_."]
#[codec(index = 18u8)]
OffchainElectionBogusCompact,
#[doc = "One of the submitted nominators is not an active nominator on chain."]
#[codec(index = 19u8)]
OffchainElectionBogusNominator,
#[doc = "One of the submitted nominators has an edge to which they have not voted on chain."]
#[codec(index = 20u8)]
OffchainElectionBogusNomination,
#[doc = "One of the submitted nominators has an edge which is submitted before the last non-zero"]
#[doc = "slash of the target."]
#[codec(index = 21u8)]
OffchainElectionSlashedNomination,
#[doc = "A self vote must only be originated from a validator to ONLY themselves."]
#[codec(index = 22u8)]
OffchainElectionBogusSelfVote,
#[doc = "The submitted result has unknown edges that are not among the presented winners."]
#[codec(index = 23u8)]
OffchainElectionBogusEdge,
#[doc = "The claimed score does not match with the one computed from the data."]
#[codec(index = 24u8)]
OffchainElectionBogusScore,
#[doc = "The election size is invalid."]
#[codec(index = 25u8)]
OffchainElectionBogusElectionSize,
#[doc = "The call is not allowed at the given time due to restrictions of election period."]
#[codec(index = 26u8)]
CallNotAllowed,
#[doc = "Incorrect number of slashing spans provided."]
#[codec(index = 27u8)]
IncorrectSlashingSpans,
#[doc = "Permissioned validator already exists."]
#[codec(index = 28u8)]
AlreadyExists,
#[doc = "Permissioned validator not exists."]
#[codec(index = 29u8)]
NotExists,
#[doc = "Updates with same value."]
#[codec(index = 30u8)]
NoChange,
#[doc = "Given potential validator identity is invalid."]
#[codec(index = 31u8)]
InvalidValidatorIdentity,
#[doc = "Validator prefs are not in valid range."]
#[codec(index = 32u8)]
InvalidValidatorCommission,
#[doc = "Validator or nominator stash identity does not exist."]
#[codec(index = 33u8)]
StashIdentityDoesNotExist,
#[doc = "Validator stash identity was not permissioned."]
#[codec(index = 34u8)]
StashIdentityNotPermissioned,
#[doc = "Nominator stash was not CDDed."]
#[codec(index = 35u8)]
StashIdentityNotCDDed,
#[doc = "Running validator count hit the intended count."]
#[codec(index = 36u8)]
HitIntendedValidatorCount,
#[doc = "When the intended number of validators to run is >= 2/3 of `validator_count`."]
#[codec(index = 37u8)]
IntendedCountIsExceedingConsensusLimit,
#[doc = "When the amount to be bonded is less than `MinimumBond`"]
#[codec(index = 38u8)]
BondTooSmall,
#[doc = "Internal state has become somehow corrupted and the operation cannot continue."]
#[codec(index = 39u8)]
BadState,
#[doc = "Too many nomination targets supplied."]
#[codec(index = 40u8)]
TooManyTargets,
#[doc = "A nomination target was supplied that was blocked or otherwise not a validator."]
#[codec(index = 41u8)]
BadTarget,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct IndividualExposure<AccountId, Balance> {
pub who: AccountId,
#[codec(compact)]
pub value: Balance,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct UnappliedSlash<AccountId, Balance> {
pub validator: AccountId,
pub own: Balance,
pub others: Vec<(AccountId, Balance)>,
pub reporters: Vec<AccountId>,
pub payout: Balance,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RewardDestination<AccountId> {
#[codec(index = 0u8)]
Staked,
#[codec(index = 1u8)]
Stash,
#[codec(index = 2u8)]
Controller,
#[codec(index = 3u8)]
Account(AccountId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum SlashingSwitch {
#[codec(index = 0u8)]
Validator,
#[codec(index = 1u8)]
ValidatorAndNominator,
#[codec(index = 2u8)]
None,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ElectionStatus<BlockNumber> {
#[codec(index = 0u8)]
Closed,
#[codec(index = 1u8)]
Open(BlockNumber),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Forcing {
#[codec(index = 0u8)]
NotForcing,
#[codec(index = 1u8)]
ForceNew,
#[codec(index = 2u8)]
ForceNone,
#[codec(index = 3u8)]
ForceAlways,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Exposure<AccountId, Balance> {
#[codec(compact)]
pub total: Balance,
#[codec(compact)]
pub own: Balance,
pub others: Vec<pallet_staking::IndividualExposure<AccountId, Balance>>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ValidatorPrefs {
#[codec(compact)]
pub commission: sp_arithmetic::per_things::Perbill,
pub blocked: bool,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CompactAssignments {
pub votes1: Vec<(::codec::Compact<u32>, ::codec::Compact<u16>)>,
pub votes2: Vec<(
::codec::Compact<u32>,
(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
),
::codec::Compact<u16>,
)>,
pub votes3: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 2usize],
::codec::Compact<u16>,
)>,
pub votes4: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 3usize],
::codec::Compact<u16>,
)>,
pub votes5: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 4usize],
::codec::Compact<u16>,
)>,
pub votes6: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 5usize],
::codec::Compact<u16>,
)>,
pub votes7: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 6usize],
::codec::Compact<u16>,
)>,
pub votes8: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 7usize],
::codec::Compact<u16>,
)>,
pub votes9: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 8usize],
::codec::Compact<u16>,
)>,
pub votes10: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 9usize],
::codec::Compact<u16>,
)>,
pub votes11: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 10usize],
::codec::Compact<u16>,
)>,
pub votes12: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 11usize],
::codec::Compact<u16>,
)>,
pub votes13: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 12usize],
::codec::Compact<u16>,
)>,
pub votes14: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 13usize],
::codec::Compact<u16>,
)>,
pub votes15: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 14usize],
::codec::Compact<u16>,
)>,
pub votes16: Vec<(
::codec::Compact<u32>,
[(
::codec::Compact<u16>,
::codec::Compact<sp_arithmetic::per_things::PerU16>,
); 15usize],
::codec::Compact<u16>,
)>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Nominations<AccountId> {
pub targets: Vec<AccountId>,
pub submitted_in: u32,
pub suppressed: bool,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ElectionCompute {
#[codec(index = 0u8)]
OnChain,
#[codec(index = 1u8)]
Signed,
#[codec(index = 2u8)]
Unsigned,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ElectionResult<AccountId, Balance> {
pub elected_stashes: Vec<AccountId>,
pub exposures: Vec<(AccountId, pallet_staking::Exposure<AccountId, Balance>)>,
pub compute: pallet_staking::ElectionCompute,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PermissionedIdentityPrefs {
pub intended_count: u32,
pub running_count: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ElectionSize {
#[codec(compact)]
pub validators: u16,
#[codec(compact)]
pub nominators: u32,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EraRewardPoints<AccountId: Ord> {
pub total: u32,
pub individual: std::collections::BTreeMap<AccountId, u32>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ActiveEraInfo {
pub index: u32,
pub start: Option<u64>,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Take the origin account as a stash and lock up `value` of its balance. `controller` will"]
#[doc = "be the account that controls it."]
#[doc = ""]
#[doc = "`value` must be more than the `minimum_balance` specified by `T::Currency`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash account."]
#[doc = ""]
#[doc = "Emits `Bonded`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Moderate complexity."]
#[doc = "- O(1)."]
#[doc = "- Three extra DB entries."]
#[doc = ""]
#[doc = "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned"]
#[doc = "unless the `origin` falls below _existential deposit_ and gets removed as dust."]
#[doc = "------------------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Bonded, Ledger, [Origin Account], Current Era, History Depth, Locks"]
#[doc = "- Write: Bonded, Payee, [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
bond {
controller: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
value: u128,
payee:
pallet_staking::RewardDestination<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Add some extra amount that have appeared in the stash `free_balance` into the balance up"]
#[doc = "for staking."]
#[doc = ""]
#[doc = "Use this if there are additional funds in your stash account that you wish to bond."]
#[doc = "Unlike [`bond`] or [`unbond`] this function does not impose any limitation on the amount"]
#[doc = "that can be added."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller and"]
#[doc = "it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Bonded`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- O(1)."]
#[doc = "- One DB entry."]
#[doc = "------------"]
#[doc = "DB Weight:"]
#[doc = "- Read: Era Election Status, Bonded, Ledger, [Origin Account], Locks"]
#[doc = "- Write: [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
bond_extra {
#[codec(compact)]
max_additional: u128,
},
#[doc = "Schedule a portion of the stash to be unlocked ready for transfer out after the bond"]
#[doc = "period ends. If this leaves an amount actively bonded less than"]
#[doc = "T::Currency::minimum_balance(), then it is increased to the full amount."]
#[doc = ""]
#[doc = "Once the unlock period is done, you can call `withdraw_unbonded` to actually move"]
#[doc = "the funds out of management ready for transfer."]
#[doc = ""]
#[doc = "No more than a limited number of unlocking chunks (see `MAX_UNLOCKING_CHUNKS`)"]
#[doc = "can co-exists at the same time. In that case, [`Call::withdraw_unbonded`] need"]
#[doc = "to be called first to remove some of the chunks (if possible)."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Unbonded`."]
#[doc = ""]
#[doc = "See also [`Call::withdraw_unbonded`]."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Limited but potentially exploitable complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Each call (requires the remainder of the bonded balance to be above `minimum_balance`)"]
#[doc = " will cause a new entry to be inserted into a vector (`Ledger.unlocking`) kept in storage."]
#[doc = " The only way to clean the aforementioned storage item is also user-controlled via"]
#[doc = " `withdraw_unbonded`."]
#[doc = "- One DB entry."]
#[doc = "----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, Ledger, CurrentEra, Locks, \\[Origin Account\\]"]
#[doc = "- Write: Locks, Ledger, \\[Origin Account\\]"]
#[doc = "</weight>"]
#[codec(index = 2u8)]
unbond {
#[codec(compact)]
value: u128,
},
#[doc = "Remove any unlocked chunks from the `unlocking` queue from our management."]
#[doc = ""]
#[doc = "This essentially frees up that balance to be used by the stash account to do"]
#[doc = "whatever it wants."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Withdrawn`."]
#[doc = ""]
#[doc = "See also [`Call::unbond`]."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Could be dependent on the `origin` argument and how much `unlocking` chunks exist."]
#[doc = " It implies `consolidate_unlocked` which loops over `Ledger.unlocking`, which is"]
#[doc = " indirectly user-controlled. See [`unbond`] for more detail."]
#[doc = "- Contains a limited number of reads, yet the size of which could be large based on `ledger`."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "---------------"]
#[doc = "Complexity O(S) where S is the number of slashing spans to remove"]
#[doc = "Update:"]
#[doc = "- Reads: EraElectionStatus, Ledger, Current Era, Locks, [Origin Account]"]
#[doc = "- Writes: [Origin Account], Locks, Ledger"]
#[doc = "Kill:"]
#[doc = "- Reads: EraElectionStatus, Ledger, Current Era, Bonded, Slashing Spans, [Origin"]
#[doc = " Account], Locks"]
#[doc = "- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators,"]
#[doc = " [Origin Account], Locks"]
#[doc = "- Writes Each: SpanSlash * S"]
#[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."]
#[doc = "# </weight>"]
#[codec(index = 3u8)]
withdraw_unbonded { num_slashing_spans: u32 },
#[doc = "Declare the desire to validate for the origin controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "-----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Era Election Status, Ledger"]
#[doc = "- Write: Nominators, Validators"]
#[doc = "# </weight>"]
#[codec(index = 4u8)]
validate {
prefs: pallet_staking::ValidatorPrefs,
},
#[doc = "Declare the desire to nominate `targets` for the origin controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era. This can only be called when"]
#[doc = "[`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- The transaction's complexity is proportional to the size of `targets` (N)"]
#[doc = "which is capped at CompactAssignments::LIMIT (MAX_NOMINATIONS)."]
#[doc = "- Both the reads and writes follow a similar pattern."]
#[doc = "---------"]
#[doc = "Weight: O(N)"]
#[doc = "where N is the number of targets"]
#[doc = "DB Weight:"]
#[doc = "- Reads: Era Election Status, Ledger, Current Era"]
#[doc = "- Writes: Validators, Nominators"]
#[doc = "# </weight>"]
#[codec(index = 5u8)]
nominate {
targets: Vec<
::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
>,
},
#[doc = "Declare no desire to either validate or nominate."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains one read."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "--------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, Ledger"]
#[doc = "- Write: Validators, Nominators"]
#[doc = "# </weight>"]
#[codec(index = 6u8)]
chill,
#[doc = "(Re-)set the payment target for a controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "---------"]
#[doc = "- Weight: O(1)"]
#[doc = "- DB Weight:"]
#[doc = " - Read: Ledger"]
#[doc = " - Write: Payee"]
#[doc = "# </weight>"]
#[codec(index = 7u8)]
set_payee {
payee:
pallet_staking::RewardDestination<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "(Re-)set the controller of a stash."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Bonded, Ledger New Controller, Ledger Old Controller"]
#[doc = "- Write: Bonded, Ledger New Controller, Ledger Old Controller"]
#[doc = "# </weight>"]
#[codec(index = 8u8)]
set_controller {
controller: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
},
#[doc = "Sets the ideal number of validators."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Weight: O(1)"]
#[doc = "Write: Validator Count"]
#[doc = "# </weight>"]
#[codec(index = 9u8)]
set_validator_count {
#[codec(compact)]
new: u32,
},
#[doc = "Increments the ideal number of validators."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`set_validator_count`]."]
#[doc = "# </weight>"]
#[codec(index = 10u8)]
increase_validator_count {
#[codec(compact)]
additional: u32,
},
#[doc = "Scale up the ideal number of validators by a factor."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`set_validator_count`]."]
#[doc = "# </weight>"]
#[codec(index = 11u8)]
scale_validator_count {
factor: sp_arithmetic::per_things::Percent,
},
#[doc = "Governance committee on 2/3 rds majority can introduce a new potential identity"]
#[doc = "to the pool of permissioned entities who can run validators. Staking module uses `PermissionedIdentity`"]
#[doc = "to ensure validators have completed KYB compliance and considers them for validation."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin Required origin for adding a potential validator."]
#[doc = "* identity Validator's IdentityId."]
#[doc = "* intended_count No. of validators given identity intends to run."]
#[codec(index = 12u8)]
add_permissioned_validator {
identity: polymesh_primitives::identity_id::IdentityId,
intended_count: Option<u32>,
},
#[doc = "Remove an identity from the pool of (wannabe) validator identities. Effects are known in the next session."]
#[doc = "Staking module checks `PermissionedIdentity` to ensure validators have"]
#[doc = "completed KYB compliance"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin Required origin for removing a potential validator."]
#[doc = "* identity Validator's IdentityId."]
#[codec(index = 13u8)]
remove_permissioned_validator {
identity: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Validate the nominators CDD expiry time."]
#[doc = ""]
#[doc = "If an account from a given set of address is nominating then"]
#[doc = "check the CDD expiry time of it and if it is expired"]
#[doc = "then the account should be unbonded and removed from the nominating process."]
#[doc = ""]
#[doc = "#<weight>"]
#[doc = "- Depends on passed list of AccountId."]
#[doc = "- Depends on the no. of claim issuers an accountId has for the CDD expiry."]
#[doc = "#</weight>"]
#[codec(index = 14u8)]
validate_cdd_expiry_nominators {
targets: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Changes commission rate which applies to all validators. Only Governance"]
#[doc = "committee is allowed to change this value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `new_cap` the new commission cap."]
#[codec(index = 15u8)]
set_commission_cap {
new_cap: sp_arithmetic::per_things::Perbill,
},
#[doc = "Changes min bond value to be used in validate(). Only Governance"]
#[doc = "committee is allowed to change this value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `new_value` the new minimum"]
#[codec(index = 16u8)]
set_min_bond_threshold { new_value: u128 },
#[doc = "Force there to be no new eras indefinitely."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- No arguments."]
#[doc = "- Weight: O(1)"]
#[doc = "- Write: ForceEra"]
#[doc = "# </weight>"]
#[codec(index = 17u8)]
force_no_eras,
#[doc = "Force there to be a new era at the end of the next session. After this, it will be"]
#[doc = "reset to normal (non-forced) behaviour."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- No arguments."]
#[doc = "- Weight: O(1)"]
#[doc = "- Write ForceEra"]
#[doc = "# </weight>"]
#[codec(index = 18u8)]
force_new_era,
#[doc = "Set the validators who cannot be slashed (if any)."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(V)"]
#[doc = "- Write: Invulnerables"]
#[doc = "# </weight>"]
#[codec(index = 19u8)]
set_invulnerables {
invulnerables: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
},
#[doc = "Force a current staker to become completely unstaked, immediately."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "O(S) where S is the number of slashing spans to be removed"]
#[doc = "Reads: Bonded, Slashing Spans, Account, Locks"]
#[doc = "Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Account, Locks"]
#[doc = "Writes Each: SpanSlash * S"]
#[doc = "# </weight>"]
#[codec(index = 20u8)]
force_unstake {
stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
num_slashing_spans: u32,
},
#[doc = "Force there to be a new era at the end of sessions indefinitely."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Weight: O(1)"]
#[doc = "- Write: ForceEra"]
#[doc = "# </weight>"]
#[codec(index = 21u8)]
force_new_era_always,
#[doc = "Cancel enactment of a deferred slash."]
#[doc = ""]
#[doc = "Can be called by the `T::SlashCancelOrigin`."]
#[doc = ""]
#[doc = "Parameters: era and indices of the slashes for that era to kill."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Complexity: O(U + S)"]
#[doc = "with U unapplied slashes weighted with U=1000"]
#[doc = "and S is the number of slash indices to be canceled."]
#[doc = "- Read: Unapplied Slashes"]
#[doc = "- Write: Unapplied Slashes"]
#[doc = "# </weight>"]
#[codec(index = 22u8)]
cancel_deferred_slash { era: u32, slash_indices: Vec<u32> },
#[doc = "Pay out all the stakers behind a single validator for a single era."]
#[doc = ""]
#[doc = "- `validator_stash` is the stash account of the validator. Their nominators, up to"]
#[doc = " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards."]
#[doc = "- `era` may be any era between `[current_era - history_depth; current_era]`."]
#[doc = ""]
#[doc = "The origin of this call must be _Signed_. Any account can call this function, even if"]
#[doc = "it is not one of the stakers."]
#[doc = ""]
#[doc = "This can only be called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Time complexity: at most O(MaxNominatorRewardedPerValidator)."]
#[doc = "- Contains a limited number of reads and writes."]
#[doc = "-----------"]
#[doc = "N is the Number of payouts for the validator (including the validator)"]
#[doc = "Weight:"]
#[doc = "- Reward Destination Staked: O(N)"]
#[doc = "- Reward Destination Controller (Creating): O(N)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, CurrentEra, HistoryDepth, ErasValidatorReward,"]
#[doc = " ErasStakersClipped, ErasRewardPoints, ErasValidatorPrefs (8 items)"]
#[doc = "- Read Each: Bonded, Ledger, Payee, Locks, System Account (5 items)"]
#[doc = "- Write Each: System Account, Locks, Ledger (3 items)"]
#[doc = "# </weight>"]
#[codec(index = 23u8)]
payout_stakers {
validator_stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
era: u32,
},
#[doc = "Rebond a portion of the stash scheduled to be unlocked."]
#[doc = ""]
#[doc = "The dispatch origin must be signed by the controller, and it can be only called when"]
#[doc = "[`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Time complexity: O(L), where L is unlocking chunks"]
#[doc = "- Bounded by `MAX_UNLOCKING_CHUNKS`."]
#[doc = "- Storage changes: Can't increase storage, only decrease it."]
#[doc = "---------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: EraElectionStatus, Ledger, Locks, [Origin Account]"]
#[doc = " - Writes: [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
#[codec(index = 24u8)]
rebond {
#[codec(compact)]
value: u128,
},
#[doc = "Set `HistoryDepth` value. This function will delete any history information"]
#[doc = "when `HistoryDepth` is reduced."]
#[doc = ""]
#[doc = "Parameters:"]
#[doc = "- `new_history_depth`: The new history depth you would like to set."]
#[doc = "- `era_items_deleted`: The number of items that will be deleted by this dispatch."]
#[doc = " This should report all the storage items that will be deleted by clearing old"]
#[doc = " era history. Needed to report an accurate weight for the dispatch. Trusted by"]
#[doc = " `Root` to report an accurate number."]
#[doc = ""]
#[doc = "Origin must be root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- E: Number of history depths removed, i.e. 10 -> 7 = 3"]
#[doc = "- Weight: O(E)"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Current Era, History Depth"]
#[doc = " - Writes: History Depth"]
#[doc = " - Clear Prefix Each: Era Stakers, EraStakersClipped, ErasValidatorPrefs"]
#[doc = " - Writes Each: ErasValidatorReward, ErasRewardPoints, ErasTotalStake, ErasStartSessionIndex"]
#[doc = "# </weight>"]
#[codec(index = 25u8)]
set_history_depth {
#[codec(compact)]
new_history_depth: u32,
#[codec(compact)]
_era_items_deleted: u32,
},
#[doc = "Remove all data structure concerning a staker/stash once its balance is at the minimum."]
#[doc = "This is essentially equivalent to `withdraw_unbonded` except it can be called by anyone"]
#[doc = "and the target `stash` must have no funds left beyond the ED."]
#[doc = ""]
#[doc = "This can be called from any origin."]
#[doc = ""]
#[doc = "- `stash`: The stash account to reap. Its balance must be zero."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Complexity: O(S) where S is the number of slashing spans on the account."]
#[doc = "DB Weight:"]
#[doc = "- Reads: Stash Account, Bonded, Slashing Spans, Locks"]
#[doc = "- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Stash Account, Locks"]
#[doc = "- Writes Each: SpanSlash * S"]
#[doc = "# </weight>"]
#[codec(index = 26u8)]
reap_stash {
stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
num_slashing_spans: u32,
},
#[doc = "Submit an election result to the chain. If the solution:"]
#[doc = ""]
#[doc = "1. is valid."]
#[doc = "2. has a better score than a potentially existing solution on chain."]
#[doc = ""]
#[doc = "then, it will be _put_ on chain."]
#[doc = ""]
#[doc = "A solution consists of two pieces of data:"]
#[doc = ""]
#[doc = "1. `winners`: a flat vector of all the winners of the round."]
#[doc = "2. `assignments`: the compact version of an assignment vector that encodes the edge"]
#[doc = " weights."]
#[doc = ""]
#[doc = "Both of which may be computed using _phragmen_, or any other algorithm."]
#[doc = ""]
#[doc = "Additionally, the submitter must provide:"]
#[doc = ""]
#[doc = "- The `score` that they claim their solution has."]
#[doc = ""]
#[doc = "Both validators and nominators will be represented by indices in the solution. The"]
#[doc = "indices should respect the corresponding types ([`ValidatorIndex`] and"]
#[doc = "[`NominatorIndex`]). Moreover, they should be valid when used to index into"]
#[doc = "[`SnapshotValidators`] and [`SnapshotNominators`]. Any invalid index will cause the"]
#[doc = "solution to be rejected. These two storage items are set during the election window and"]
#[doc = "may be used to determine the indices."]
#[doc = ""]
#[doc = "A solution is valid if:"]
#[doc = ""]
#[doc = "0. It is submitted when [`EraElectionStatus`] is `Open`."]
#[doc = "1. Its claimed score is equal to the score computed on-chain."]
#[doc = "2. Presents the correct number of winners."]
#[doc = "3. All indexes must be value according to the snapshot vectors. All edge values must"]
#[doc = " also be correct and should not overflow the granularity of the ratio type (i.e. 256"]
#[doc = " or billion)."]
#[doc = "4. For each edge, all targets are actually nominated by the voter."]
#[doc = "5. Has correct self-votes."]
#[doc = ""]
#[doc = "A solutions score is consisted of 3 parameters:"]
#[doc = ""]
#[doc = "1. `min { support.total }` for each support of a winner. This value should be maximized."]
#[doc = "2. `sum { support.total }` for each support of a winner. This value should be minimized."]
#[doc = "3. `sum { support.total^2 }` for each support of a winner. This value should be"]
#[doc = " minimized (to ensure less variance)"]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "The transaction is assumed to be the longest path, a better solution."]
#[doc = " - Initial solution is almost the same."]
#[doc = " - Worse solution is retraced in pre-dispatch-checks which sets its own weight."]
#[doc = "# </weight>"]
#[codec(index = 27u8)]
submit_election_solution {
winners: Vec<u16>,
compact: pallet_staking::CompactAssignments,
score: sp_npos_elections::ElectionScore,
era: u32,
size: pallet_staking::ElectionSize,
},
#[doc = "Unsigned version of `submit_election_solution`."]
#[doc = ""]
#[doc = "Note that this must pass the [`ValidateUnsigned`] check which only allows transactions"]
#[doc = "from the local node to be included. In other words, only the block author can include a"]
#[doc = "transaction in the block."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "See [`submit_election_solution`]."]
#[doc = "# </weight>"]
#[codec(index = 28u8)]
submit_election_solution_unsigned {
winners: Vec<u16>,
compact: pallet_staking::CompactAssignments,
score: sp_npos_elections::ElectionScore,
era: u32,
size: pallet_staking::ElectionSize,
},
#[doc = "System version of `payout_stakers()`. Only be called by the root origin."]
#[codec(index = 29u8)]
payout_stakers_by_system {
validator_stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
era: u32,
},
#[doc = "Switch slashing status on the basis of given `SlashingSwitch`. Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - AccountId of root."]
#[doc = "* slashing_switch - Switch used to set the targets for slashing."]
#[codec(index = 30u8)]
change_slashing_allowed_for {
slashing_switch: pallet_staking::SlashingSwitch,
},
#[doc = "Update the intended validator count for a given DID."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin which must be the required origin for adding a potential validator."]
#[doc = "* identity to add as a validator."]
#[doc = "* new_intended_count New value of intended count."]
#[codec(index = 31u8)]
update_permissioned_validator_intended_count {
identity: polymesh_primitives::identity_id::IdentityId,
new_intended_count: u32,
},
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Balance, AccountId> {
#[doc = "The era payout has been set; the first balance is the validator-payout; the second is"]
#[doc = "the remainder from the maximum amount of reward."]
#[doc = "\\[era_index, validator_payout, remainder\\]"]
#[codec(index = 0u8)]
EraPayout(u32, Balance, Balance),
#[doc = "The staker has been rewarded by this amount. \\[stash_identity, stash, amount\\]"]
#[codec(index = 1u8)]
Reward(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Balance,
),
#[doc = "One validator (and its nominators) has been slashed by the given amount."]
#[doc = "\\[validator, amount\\]"]
#[codec(index = 2u8)]
Slash(AccountId, Balance),
#[doc = "An old slashing report from a prior era was discarded because it could"]
#[doc = "not be processed. \\[session_index\\]"]
#[codec(index = 3u8)]
OldSlashingReportDiscarded(u32),
#[doc = "A new set of stakers was elected with the given \\[compute\\]."]
#[codec(index = 4u8)]
StakingElection(pallet_staking::ElectionCompute),
#[doc = "A new solution for the upcoming election has been stored. \\[compute\\]"]
#[codec(index = 5u8)]
SolutionStored(pallet_staking::ElectionCompute),
#[doc = "An account has bonded this amount. \\[did, stash, amount\\]"]
#[doc = ""]
#[doc = "NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,"]
#[doc = "it will not be emitted for staking rewards when they are added to stake."]
#[codec(index = 6u8)]
Bonded(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Balance,
),
#[doc = "An account has unbonded this amount. \\[did, stash, amount\\]"]
#[codec(index = 7u8)]
Unbonded(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Balance,
),
#[doc = "User has updated their nominations"]
#[codec(index = 8u8)]
Nominated(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Vec<AccountId>,
),
#[doc = "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`"]
#[doc = "from the unlocking queue. \\[stash, amount\\]"]
#[codec(index = 9u8)]
Withdrawn(AccountId, Balance),
#[doc = "An DID has issued a candidacy. See the transaction for who."]
#[doc = "GC identity , Validator's identity."]
#[codec(index = 10u8)]
PermissionedIdentityAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "The given member was removed. See the transaction for who."]
#[doc = "GC identity , Validator's identity."]
#[codec(index = 11u8)]
PermissionedIdentityRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "Remove the nominators from the valid nominators when there CDD expired."]
#[doc = "Caller, Stash accountId of nominators"]
#[codec(index = 12u8)]
InvalidatedNominators(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Vec<AccountId>,
),
#[doc = "When commission cap get updated."]
#[doc = "(old value, new value)"]
#[codec(index = 13u8)]
CommissionCapUpdated(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Perbill,
sp_arithmetic::per_things::Perbill,
),
#[doc = "Min bond threshold was updated (new value)."]
#[codec(index = 14u8)]
MinimumBondThresholdUpdated(
Option<polymesh_primitives::identity_id::IdentityId>,
Balance,
),
#[doc = "When scheduling of reward payments get interrupted."]
#[codec(index = 15u8)]
RewardPaymentSchedulingInterrupted(AccountId, u32, sp_runtime::DispatchError),
#[doc = "Update for whom balance get slashed."]
#[codec(index = 16u8)]
SlashingAllowedForChanged(pallet_staking::SlashingSwitch),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Releases {
#[codec(index = 0u8)]
V1_0_0Ancient,
#[codec(index = 1u8)]
V2_0_0,
#[codec(index = 2u8)]
V3_0_0,
#[codec(index = 3u8)]
V4_0_0,
#[codec(index = 4u8)]
V5_0_0,
#[codec(index = 5u8)]
V6_0_0,
#[codec(index = 6u8)]
V6_0_1,
#[codec(index = 7u8)]
V7_0_0,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StakingLedger<AccountId, Balance> {
pub stash: AccountId,
#[codec(compact)]
pub total: Balance,
#[codec(compact)]
pub active: Balance,
pub unlocking: Vec<pallet_staking::UnlockChunk<Balance>>,
pub claimed_rewards: Vec<u32>,
}
}
pub mod pallet_authorship {
use super::*;
pub mod pallet {
use super::*;
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The uncle parent not in the chain."]
#[codec(index = 0u8)]
InvalidUncleParent,
#[doc = "Uncles already set in the block."]
#[codec(index = 1u8)]
UnclesAlreadySet,
#[doc = "Too many uncles."]
#[codec(index = 2u8)]
TooManyUncles,
#[doc = "The uncle is genesis."]
#[codec(index = 3u8)]
GenesisUncle,
#[doc = "The uncle is too high in chain."]
#[codec(index = 4u8)]
TooHighUncle,
#[doc = "The uncle is already included."]
#[codec(index = 5u8)]
UncleAlreadyIncluded,
#[doc = "The uncle isn't recent enough to be included."]
#[codec(index = 6u8)]
OldUncle,
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Provide a set of uncles."]
#[codec(index = 0u8)]
set_uncles {
new_uncles:
Vec<sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>>,
},
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum UncleEntryItem<BlockNumber, Hash, Author> {
#[codec(index = 0u8)]
InclusionHeight(BlockNumber),
#[codec(index = 1u8)]
Uncle(Hash, Option<Author>),
}
}
pub mod pallet_permissions {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StoreCallMetadata();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The caller is not authorized to call the current extrinsic."]
#[codec(index = 0u8)]
UnauthorizedCaller,
}
}
pub mod finality_grandpa {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Prevote<H, N> {
pub target_hash: H,
pub target_number: N,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Precommit<H, N> {
pub target_hash: H,
pub target_number: N,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Equivocation<Id, V, S> {
pub round_number: u64,
pub identity: Id,
pub first: (V, S),
pub second: (V, S),
}
}
pub mod pallet_im_online {
use super::*;
pub mod sr25519 {
use super::*;
pub mod app_sr25519 {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Signature(pub sp_core::sr25519::Signature);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub sp_core::sr25519::Public);
}
}
pub mod pallet {
use super::*;
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Non existent public key."]
#[codec(index = 0u8)]
InvalidKey,
#[doc = "Duplicated heartbeat."]
#[codec(index = 1u8)]
DuplicatedHeartbeat,
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A new heartbeat was received from `AuthorityId`."]
#[codec(index = 0u8)]
HeartbeatReceived {
authority_id: pallet_im_online::sr25519::app_sr25519::Public,
},
#[doc = "At the end of the session, no offence was committed."]
#[codec(index = 1u8)]
AllGood,
#[doc = "At the end of the session, at least one validator was found to be offline."]
#[codec(index = 2u8)]
SomeOffline {
offline: Vec<(
::polymesh_api_client::sp_core::crypto::AccountId32,
pallet_staking::Exposure<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
)>,
},
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is"]
#[doc = " length of `heartbeat.network_state.external_address`"]
#[doc = " - `O(K)`: decoding of length `K`"]
#[doc = " - `O(E)`: decoding/encoding of length `E`"]
#[doc = "- DbReads: pallet_session `Validators`, pallet_session `CurrentIndex`, `Keys`,"]
#[doc = " `ReceivedHeartbeats`"]
#[doc = "- DbWrites: `ReceivedHeartbeats`"]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
heartbeat {
heartbeat: pallet_im_online::Heartbeat<u32>,
signature: pallet_im_online::sr25519::app_sr25519::Signature,
},
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Heartbeat<BlockNumber> {
pub block_number: BlockNumber,
pub network_state: sp_core::offchain::OpaqueNetworkState,
pub session_index: BlockNumber,
pub authority_index: BlockNumber,
pub validators_len: BlockNumber,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BoundedOpaqueNetworkState {
pub peer_id: Vec<u8>,
pub external_addresses: Vec<Vec<u8>>,
}
}
pub mod frame_system {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Error for the System pallet"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The name of specification does not match between the current runtime"]
#[doc = "and the new runtime."]
#[codec(index = 0u8)]
InvalidSpecName,
#[doc = "The specification version is not allowed to decrease between the current runtime"]
#[doc = "and the new runtime."]
#[codec(index = 1u8)]
SpecVersionNeedsToIncrease,
#[doc = "Failed to extract the runtime version from the new runtime."]
#[doc = ""]
#[doc = "Either calling `Core_version` or decoding `RuntimeVersion` failed."]
#[codec(index = 2u8)]
FailedToExtractRuntimeVersion,
#[doc = "Suicide called when the account has non-default composite data."]
#[codec(index = 3u8)]
NonDefaultComposite,
#[doc = "There is a non-zero reference count preventing the account from being purged."]
#[codec(index = 4u8)]
NonZeroRefCount,
#[doc = "The origin filter prevent the call to be dispatched."]
#[codec(index = 5u8)]
CallFiltered,
}
#[doc = "Event for the System pallet."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "An extrinsic completed successfully."]
#[codec(index = 0u8)]
ExtrinsicSuccess {
dispatch_info: frame_support::weights::DispatchInfo,
},
#[doc = "An extrinsic failed."]
#[codec(index = 1u8)]
ExtrinsicFailed {
dispatch_error: sp_runtime::DispatchError,
dispatch_info: frame_support::weights::DispatchInfo,
},
#[doc = "`:code` was updated."]
#[codec(index = 2u8)]
CodeUpdated,
#[doc = "A new account was created."]
#[codec(index = 3u8)]
NewAccount {
account: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "An account was reaped."]
#[codec(index = 4u8)]
KilledAccount {
account: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "On on-chain remark happened."]
#[codec(index = 5u8)]
Remarked {
sender: ::polymesh_api_client::sp_core::crypto::AccountId32,
hash: primitive_types::H256,
},
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "A dispatch that will fill the block weight up to the given ratio."]
#[codec(index = 0u8)]
fill_block {
ratio: sp_arithmetic::per_things::Perbill,
},
#[doc = "Make some on-chain remark."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`"]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
remark { remark: Vec<u8> },
#[doc = "Set the number of pages in the WebAssembly environment's heap."]
#[codec(index = 2u8)]
set_heap_pages { pages: u64 },
#[doc = "Set the new runtime code."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`"]
#[doc = "- 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is"]
#[doc = " expensive)."]
#[doc = "- 1 storage write (codec `O(C)`)."]
#[doc = "- 1 digest item."]
#[doc = "- 1 event."]
#[doc = "The weight of this function is dependent on the runtime, but generally this is very"]
#[doc = "expensive. We will treat this as a full block."]
#[doc = "# </weight>"]
#[codec(index = 3u8)]
set_code { code: Vec<u8> },
#[doc = "Set the new runtime code without doing any checks of the given `code`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(C)` where `C` length of `code`"]
#[doc = "- 1 storage write (codec `O(C)`)."]
#[doc = "- 1 digest item."]
#[doc = "- 1 event."]
#[doc = "The weight of this function is dependent on the runtime. We will treat this as a full"]
#[doc = "block. # </weight>"]
#[codec(index = 4u8)]
set_code_without_checks { code: Vec<u8> },
#[doc = "Set some items of storage."]
#[codec(index = 5u8)]
set_storage { items: Vec<(Vec<u8>, Vec<u8>)> },
#[doc = "Kill some items from storage."]
#[codec(index = 6u8)]
kill_storage { keys: Vec<Vec<u8>> },
#[doc = "Kill all storage items with a key that starts with the given prefix."]
#[doc = ""]
#[doc = "**NOTE:** We rely on the Root origin to provide us the number of subkeys under"]
#[doc = "the prefix we are removing to accurately calculate the weight of this function."]
#[codec(index = 7u8)]
kill_prefix { prefix: Vec<u8>, subkeys: u32 },
#[doc = "Make some on-chain remark and emit event."]
#[codec(index = 8u8)]
remark_with_event { remark: Vec<u8> },
}
}
pub mod extensions {
use super::*;
pub mod check_nonce {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckNonce(#[codec(compact)] pub u32);
}
pub mod check_tx_version {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckTxVersion();
}
pub mod check_mortality {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckMortality(pub ::polymesh_api_client::sp_runtime::generic::Era);
}
pub mod check_spec_version {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckSpecVersion();
}
pub mod check_genesis {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckGenesis();
}
pub mod check_weight {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct CheckWeight();
}
}
pub mod limits {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BlockLength {
pub max: frame_support::weights::PerDispatchClass<u32>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BlockWeights {
pub base_block: u64,
pub max_block: u64,
pub per_class:
frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct WeightsPerClass {
pub base_extrinsic: u64,
pub max_extrinsic: Option<u64>,
pub max_total: Option<u64>,
pub reserved: Option<u64>,
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct EventRecord<E, T> {
pub phase: frame_system::Phase,
pub event: E,
pub topics: Vec<T>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AccountInfo<Index, AccountData> {
pub nonce: Index,
pub consumers: Index,
pub providers: Index,
pub sufficients: Index,
pub data: AccountData,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Phase {
#[codec(index = 0u8)]
ApplyExtrinsic(u32),
#[codec(index = 1u8)]
Finalization,
#[codec(index = 2u8)]
Initialization,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct LastRuntimeUpgradeInfo {
#[codec(compact)]
pub spec_version: u32,
pub spec_name: String,
}
}
pub mod polymesh_common_utilities {
use super::*;
pub mod protocol_fee {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ProtocolOp {
#[codec(index = 0u8)]
AssetRegisterTicker,
#[codec(index = 1u8)]
AssetIssue,
#[codec(index = 2u8)]
AssetAddDocuments,
#[codec(index = 3u8)]
AssetCreateAsset,
#[codec(index = 4u8)]
CheckpointCreateSchedule,
#[codec(index = 5u8)]
ComplianceManagerAddComplianceRequirement,
#[codec(index = 6u8)]
IdentityCddRegisterDid,
#[codec(index = 7u8)]
IdentityAddClaim,
#[codec(index = 8u8)]
IdentityAddSecondaryKeysWithAuthorization,
#[codec(index = 9u8)]
PipsPropose,
#[codec(index = 10u8)]
ContractsPutCode,
#[codec(index = 11u8)]
CorporateBallotAttachBallot,
#[codec(index = 12u8)]
CapitalDistributionDistribute,
}
}
pub mod traits {
use super::*;
pub mod statistics {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "Stat types added to asset."]
#[doc = ""]
#[doc = "(Caller DID, Asset, Stat types)"]
#[codec(index = 0u8)]
StatTypesAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::statistics::AssetScope,
Vec<polymesh_primitives::statistics::StatType>,
),
#[doc = "Stat types removed from asset."]
#[doc = ""]
#[doc = "(Caller DID, Asset, Stat types)"]
#[codec(index = 1u8)]
StatTypesRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::statistics::AssetScope,
Vec<polymesh_primitives::statistics::StatType>,
),
#[doc = "Asset stats updated."]
#[doc = ""]
#[doc = "(Caller DID, Asset, Stat type, Updates)"]
#[codec(index = 2u8)]
AssetStatsUpdated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::statistics::AssetScope,
polymesh_primitives::statistics::StatType,
Vec<polymesh_primitives::statistics::StatUpdate>,
),
#[doc = "Set Transfer compliance rules for asset."]
#[doc = ""]
#[doc = "(Caller DID, Asset, Transfer conditions)"]
#[codec(index = 3u8)]
SetAssetTransferCompliance(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::statistics::AssetScope,
Vec<polymesh_primitives::transfer_compliance::TransferCondition>,
),
#[doc = "Add `ScopeId`s exempt for transfer conditions matching exempt key."]
#[doc = ""]
#[doc = "(Caller DID, Exempt key, Entities)"]
#[codec(index = 4u8)]
TransferConditionExemptionsAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::transfer_compliance::TransferConditionExemptKey,
Vec<polymesh_primitives::identity_id::IdentityId>,
),
#[doc = "Remove `ScopeId`s exempt for transfer conditions matching exempt key."]
#[doc = ""]
#[doc = "(Caller DID, Exempt key, Entities)"]
#[codec(index = 5u8)]
TransferConditionExemptionsRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::transfer_compliance::TransferConditionExemptKey,
Vec<polymesh_primitives::identity_id::IdentityId>,
),
}
}
pub mod group {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId, Event, I> {
#[doc = "The given member was added; see the transaction for who."]
#[doc = "caller DID, New member DID."]
#[codec(index = 0u8)]
MemberAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "The given member was removed; see the transaction for who."]
#[doc = "caller DID, member DID that get removed."]
#[codec(index = 1u8)]
MemberRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "The given member has been revoked at specific time-stamp."]
#[doc = "caller DID, member DID that get revoked."]
#[codec(index = 2u8)]
MemberRevoked(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "Two members were swapped; see the transaction for who."]
#[doc = "caller DID, Removed DID, New add DID."]
#[codec(index = 3u8)]
MembersSwapped(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "The membership was reset; see the transaction for who the new set is."]
#[doc = "caller DID, List of new members."]
#[codec(index = 4u8)]
MembersReset(
polymesh_primitives::identity_id::IdentityId,
Vec<polymesh_primitives::identity_id::IdentityId>,
),
#[doc = "The limit of how many active members there can be concurrently was changed."]
#[codec(index = 5u8)]
ActiveLimitChanged(polymesh_primitives::identity_id::IdentityId, u32, u32),
#[doc = "Phantom member, never used."]
#[codec(index = 6u8)]
Dummy,
PhantomDataVariant(core::marker::PhantomData<(AccountId, Event, I)>),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct InactiveMember<Moment> {
pub id: polymesh_primitives::identity_id::IdentityId,
pub deactivated_at: Moment,
pub expiry: Option<Moment>,
}
}
pub mod asset {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Moment, AccountId> {
#[doc = "Event for transfer of tokens."]
#[doc = "caller DID, ticker, from portfolio, to portfolio, value"]
#[codec(index = 0u8)]
Transfer(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::PortfolioId,
polymesh_primitives::identity_id::PortfolioId,
u128,
),
#[doc = "Emit when tokens get issued."]
#[doc = "caller DID, ticker, beneficiary DID, value, funding round, total issued in this funding round"]
#[codec(index = 1u8)]
Issued(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
u128,
polymesh_primitives::asset::FundingRoundName,
u128,
),
#[doc = "Emit when tokens get redeemed."]
#[doc = "caller DID, ticker, from DID, value"]
#[codec(index = 2u8)]
Redeemed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
u128,
),
#[doc = "Event for creation of the asset."]
#[doc = "caller DID/ owner DID, ticker, divisibility, asset type, beneficiary DID, disable investor uniqueness"]
#[codec(index = 3u8)]
AssetCreated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
bool,
polymesh_primitives::asset::AssetType,
polymesh_primitives::identity_id::IdentityId,
bool,
),
#[doc = "Event emitted when any token identifiers are updated."]
#[doc = "caller DID, ticker, a vector of (identifier type, identifier value)"]
#[codec(index = 4u8)]
IdentifiersUpdated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
),
#[doc = "Event for change in divisibility."]
#[doc = "caller DID, ticker, divisibility"]
#[codec(index = 5u8)]
DivisibilityChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
bool,
),
#[doc = "An additional event to Transfer; emitted when `transfer_with_data` is called."]
#[doc = "caller DID , ticker, from DID, to DID, value, data"]
#[codec(index = 6u8)]
TransferWithData(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::IdentityId,
u128,
Vec<u8>,
),
#[doc = "is_issuable() output"]
#[doc = "ticker, return value (true if issuable)"]
#[codec(index = 7u8)]
IsIssuable(polymesh_primitives::ticker::Ticker, bool),
#[doc = "Emit when ticker is registered."]
#[doc = "caller DID / ticker owner did, ticker, ticker owner, expiry"]
#[codec(index = 8u8)]
TickerRegistered(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
Option<Moment>,
),
#[doc = "Emit when ticker is transferred."]
#[doc = "caller DID / ticker transferred to DID, ticker, from"]
#[codec(index = 9u8)]
TickerTransferred(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "Emit when token ownership is transferred."]
#[doc = "caller DID / token ownership transferred to DID, ticker, from"]
#[codec(index = 10u8)]
AssetOwnershipTransferred(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "An event emitted when an asset is frozen."]
#[doc = "Parameter: caller DID, ticker."]
#[codec(index = 11u8)]
AssetFrozen(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "An event emitted when an asset is unfrozen."]
#[doc = "Parameter: caller DID, ticker."]
#[codec(index = 12u8)]
AssetUnfrozen(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "An event emitted when a token is renamed."]
#[doc = "Parameters: caller DID, ticker, new token name."]
#[codec(index = 13u8)]
AssetRenamed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset::AssetName,
),
#[doc = "An event carrying the name of the current funding round of a ticker."]
#[doc = "Parameters: caller DID, ticker, funding round name."]
#[codec(index = 14u8)]
FundingRoundSet(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset::FundingRoundName,
),
#[doc = "A new document attached to an asset"]
#[codec(index = 15u8)]
DocumentAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::document::DocumentId,
polymesh_primitives::document::Document,
),
#[doc = "A document removed from an asset"]
#[codec(index = 16u8)]
DocumentRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::document::DocumentId,
),
#[doc = "A extension got removed."]
#[doc = "caller DID, ticker, AccountId"]
#[codec(index = 17u8)]
ExtensionRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
AccountId,
),
#[doc = "A Polymath Classic token was claimed and transferred to a non-systematic DID."]
#[codec(index = 18u8)]
ClassicTickerClaimed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::ethereum::EthereumAddress,
),
#[doc = "Event for when a forced transfer takes place."]
#[doc = "caller DID/ controller DID, ticker, Portfolio of token holder, value."]
#[codec(index = 19u8)]
ControllerTransfer(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::PortfolioId,
u128,
),
#[doc = "A custom asset type already exists on-chain."]
#[doc = "caller DID, the ID of the custom asset type, the string contents registered."]
#[codec(index = 20u8)]
CustomAssetTypeExists(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::asset::CustomAssetTypeId,
Vec<u8>,
),
#[doc = "A custom asset type was registered on-chain."]
#[doc = "caller DID, the ID of the custom asset type, the string contents registered."]
#[codec(index = 21u8)]
CustomAssetTypeRegistered(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::asset::CustomAssetTypeId,
Vec<u8>,
),
#[doc = "Set asset metadata value."]
#[doc = "(Caller DID, ticker, metadata value, optional value details)"]
#[codec(index = 22u8)]
SetAssetMetadataValue(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset_metadata::AssetMetadataValue,
Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<Moment>>,
),
#[doc = "Set asset metadata value details (expire, lock status)."]
#[doc = "(Caller DID, ticker, value details)"]
#[codec(index = 23u8)]
SetAssetMetadataValueDetails(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset_metadata::AssetMetadataValueDetail<Moment>,
),
#[doc = "Register asset metadata local type."]
#[doc = "(Caller DID, ticker, Local type name, Local type key, type specs)"]
#[codec(index = 24u8)]
RegisterAssetMetadataLocalType(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset_metadata::AssetMetadataName,
polymesh_primitives::asset_metadata::AssetMetadataLocalKey,
polymesh_primitives::asset_metadata::AssetMetadataSpec,
),
#[doc = "Register asset metadata global type."]
#[doc = "(Global type name, Global type key, type specs)"]
#[codec(index = 25u8)]
RegisterAssetMetadataGlobalType(
polymesh_primitives::asset_metadata::AssetMetadataName,
polymesh_primitives::asset_metadata::AssetMetadataGlobalKey,
polymesh_primitives::asset_metadata::AssetMetadataSpec,
),
}
}
pub mod external_agents {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "An Agent Group was created."]
#[doc = ""]
#[doc = "(Caller DID, AG's ticker, AG's ID, AG's permissions)"]
#[codec(index = 0u8)]
GroupCreated(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::agent::AGId,
polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
),
#[doc = "An Agent Group's permissions was updated."]
#[doc = ""]
#[doc = "(Caller DID, AG's ticker, AG's ID, AG's new permissions)"]
#[codec(index = 1u8)]
GroupPermissionsUpdated(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::agent::AGId,
polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
),
#[doc = "An agent was added."]
#[doc = ""]
#[doc = "(Caller/Agent DID, Agent's ticker, Agent's group)"]
#[codec(index = 2u8)]
AgentAdded(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::agent::AgentGroup,
),
#[doc = "An agent was removed."]
#[doc = ""]
#[doc = "(Caller DID, Agent's ticker, Agent's DID)"]
#[codec(index = 3u8)]
AgentRemoved(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
),
#[doc = "An agent's group was changed."]
#[doc = ""]
#[doc = "(Caller DID, Agent's ticker, Agent's DID, The new group of the agent)"]
#[codec(index = 4u8)]
GroupChanged(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::agent::AgentGroup,
),
}
}
pub mod relayer {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "Authorization given for `paying_key` to `user_key`."]
#[doc = ""]
#[doc = "(Caller DID, User Key, Paying Key, Initial POLYX limit, Auth ID)"]
#[codec(index = 0u8)]
AuthorizedPayingKey(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
AccountId,
AccountId,
u128,
u64,
),
#[doc = "Accepted paying key."]
#[doc = ""]
#[doc = "(Caller DID, User Key, Paying Key)"]
#[codec(index = 1u8)]
AcceptedPayingKey(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
AccountId,
AccountId,
),
#[doc = "Removed paying key."]
#[doc = ""]
#[doc = "(Caller DID, User Key, Paying Key)"]
#[codec(index = 2u8)]
RemovedPayingKey(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
AccountId,
AccountId,
),
#[doc = "Updated polyx limit."]
#[doc = ""]
#[doc = "(Caller DID, User Key, Paying Key, POLYX limit, old remaining POLYX)"]
#[codec(index = 3u8)]
UpdatedPolyxLimit(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
AccountId,
AccountId,
u128,
u128,
),
}
}
pub mod balances {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Reasons {
#[codec(index = 0u8)]
Fee,
#[codec(index = 1u8)]
Misc,
#[codec(index = 2u8)]
All,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "An account was created with some free balance. \\[did, account, free_balance]"]
#[codec(index = 0u8)]
Endowed(
Option<polymesh_primitives::identity_id::IdentityId>,
AccountId,
u128,
),
#[doc = "Transfer succeeded (from_did, from, to_did, to, value, memo)."]
#[codec(index = 1u8)]
Transfer(
Option<polymesh_primitives::identity_id::IdentityId>,
AccountId,
Option<polymesh_primitives::identity_id::IdentityId>,
AccountId,
u128,
Option<polymesh_common_utilities::traits::balances::Memo>,
),
#[doc = "A balance was set by root (did, who, free, reserved)."]
#[codec(index = 2u8)]
BalanceSet(
polymesh_primitives::identity_id::IdentityId,
AccountId,
u128,
u128,
),
#[doc = "The account and the amount of unlocked balance of that account that was burned."]
#[doc = "(caller Id, caller account, amount)"]
#[codec(index = 3u8)]
AccountBalanceBurned(
polymesh_primitives::identity_id::IdentityId,
AccountId,
u128,
),
#[doc = "Some balance was reserved (moved from free to reserved). \\[who, value]"]
#[codec(index = 4u8)]
Reserved(AccountId, u128),
#[doc = "Some balance was unreserved (moved from reserved to free). \\[who, value]"]
#[codec(index = 5u8)]
Unreserved(AccountId, u128),
#[doc = "Some balance was moved from the reserve of the first account to the second account."]
#[doc = "Final argument indicates the destination balance type."]
#[doc = "\\[from, to, balance, destination_status]"]
#[codec(index = 6u8)]
ReserveRepatriated(
AccountId,
AccountId,
u128,
frame_support::traits::tokens::misc::BalanceStatus,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Memo(pub [u8; 32usize]);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct AccountData {
pub free: u128,
pub reserved: u128,
pub misc_frozen: u128,
pub fee_frozen: u128,
}
}
pub mod checkpoint {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ScheduleId(pub u64);
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A checkpoint was created."]
#[doc = ""]
#[doc = "(caller DID, ticker, checkpoint ID, total supply, checkpoint timestamp)"]
#[codec(index = 0u8)]
CheckpointCreated(
Option<
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
>,
polymesh_primitives::ticker::Ticker,
polymesh_primitives::calendar::CheckpointId,
u128,
u64,
),
#[doc = "The maximum complexity for an arbitrary ticker's schedule set was changed."]
#[doc = ""]
#[doc = "(GC DID, the new maximum)"]
#[codec(index = 1u8)]
MaximumSchedulesComplexityChanged(polymesh_primitives::identity_id::IdentityId, u64),
#[doc = "A checkpoint schedule was created."]
#[doc = ""]
#[doc = "(caller DID, ticker, schedule)"]
#[codec(index = 2u8)]
ScheduleCreated(
polymesh_primitives::event_only::EventOnly<
polymesh_primitives::identity_id::IdentityId,
>,
polymesh_primitives::ticker::Ticker,
polymesh_common_utilities::traits::checkpoint::StoredSchedule,
),
#[doc = "A checkpoint schedule was removed."]
#[doc = ""]
#[doc = "(caller DID, ticker, schedule)"]
#[codec(index = 3u8)]
ScheduleRemoved(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
polymesh_common_utilities::traits::checkpoint::StoredSchedule,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StoredSchedule {
pub schedule: polymesh_primitives::calendar::CheckpointSchedule,
pub id: polymesh_common_utilities::traits::checkpoint::ScheduleId,
pub at: u64,
pub remaining: u32,
}
}
pub mod identity {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId, Moment> {
#[doc = "Identity created."]
#[doc = ""]
#[doc = "(DID, primary key, secondary keys)"]
#[codec(index = 0u8)]
DidCreated(
polymesh_primitives::identity_id::IdentityId,
AccountId,
Vec<polymesh_primitives::secondary_key::SecondaryKey<AccountId>>,
),
#[doc = "Secondary keys added to identity."]
#[doc = ""]
#[doc = "(DID, new keys)"]
#[codec(index = 1u8)]
SecondaryKeysAdded(
polymesh_primitives::identity_id::IdentityId,
Vec<polymesh_primitives::secondary_key::SecondaryKey<AccountId>>,
),
#[doc = "Secondary keys removed from identity."]
#[doc = ""]
#[doc = "(DID, the keys that got removed)"]
#[codec(index = 2u8)]
SecondaryKeysRemoved(polymesh_primitives::identity_id::IdentityId, Vec<AccountId>),
#[doc = "A secondary key left their identity."]
#[doc = ""]
#[doc = "(DID, secondary key)"]
#[codec(index = 3u8)]
SecondaryKeyLeftIdentity(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "Secondary key permissions updated."]
#[doc = ""]
#[doc = "(DID, updated secondary key, previous permissions, new permissions)"]
#[codec(index = 4u8)]
SecondaryKeyPermissionsUpdated(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Permissions,
polymesh_primitives::secondary_key::Permissions,
),
#[doc = "Primary key of identity changed."]
#[doc = ""]
#[doc = "(DID, old primary key account ID, new ID)"]
#[codec(index = 5u8)]
PrimaryKeyUpdated(
polymesh_primitives::identity_id::IdentityId,
AccountId,
AccountId,
),
#[doc = "Claim added to identity."]
#[doc = ""]
#[doc = "(DID, claim)"]
#[codec(index = 6u8)]
ClaimAdded(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_claim::IdentityClaim,
),
#[doc = "Claim revoked from identity."]
#[doc = ""]
#[doc = "(DID, claim)"]
#[codec(index = 7u8)]
ClaimRevoked(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_claim::IdentityClaim,
),
#[doc = "Asset's identity registered."]
#[doc = ""]
#[doc = "(Asset DID, ticker)"]
#[codec(index = 8u8)]
AssetDidRegistered(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::ticker::Ticker,
),
#[doc = "New authorization added."]
#[doc = ""]
#[doc = "(authorised_by, target_did, target_key, auth_id, authorization_data, expiry)"]
#[codec(index = 9u8)]
AuthorizationAdded(
polymesh_primitives::identity_id::IdentityId,
Option<polymesh_primitives::identity_id::IdentityId>,
Option<AccountId>,
Moment,
polymesh_primitives::authorization::AuthorizationData<AccountId>,
Option<Moment>,
),
#[doc = "Authorization revoked by the authorizer."]
#[doc = ""]
#[doc = "(authorized_identity, authorized_key, auth_id)"]
#[codec(index = 10u8)]
AuthorizationRevoked(
Option<polymesh_primitives::identity_id::IdentityId>,
Option<AccountId>,
Moment,
),
#[doc = "Authorization rejected by the user who was authorized."]
#[doc = ""]
#[doc = "(authorized_identity, authorized_key, auth_id)"]
#[codec(index = 11u8)]
AuthorizationRejected(
Option<polymesh_primitives::identity_id::IdentityId>,
Option<AccountId>,
Moment,
),
#[doc = "Authorization consumed."]
#[doc = ""]
#[doc = "(authorized_identity, authorized_key, auth_id)"]
#[codec(index = 12u8)]
AuthorizationConsumed(
Option<polymesh_primitives::identity_id::IdentityId>,
Option<AccountId>,
Moment,
),
#[doc = "Accepting Authorization retry limit reached."]
#[doc = ""]
#[doc = "(authorized_identity, authorized_key, auth_id)"]
#[codec(index = 13u8)]
AuthorizationRetryLimitReached(
Option<polymesh_primitives::identity_id::IdentityId>,
Option<AccountId>,
Moment,
),
#[doc = "CDD requirement for updating primary key changed."]
#[doc = ""]
#[doc = "(new_requirement)"]
#[codec(index = 14u8)]
CddRequirementForPrimaryKeyUpdated(bool),
#[doc = "CDD claims generated by `IdentityId` (a CDD Provider) have been invalidated from"]
#[doc = "`Moment`."]
#[doc = ""]
#[doc = "(CDD provider DID, disable from date)"]
#[codec(index = 15u8)]
CddClaimsInvalidated(polymesh_primitives::identity_id::IdentityId, Moment),
#[doc = "All Secondary keys of the identity ID are frozen."]
#[doc = ""]
#[doc = "(DID)"]
#[codec(index = 16u8)]
SecondaryKeysFrozen(polymesh_primitives::identity_id::IdentityId),
#[doc = "All Secondary keys of the identity ID are unfrozen."]
#[doc = ""]
#[doc = "(DID)"]
#[codec(index = 17u8)]
SecondaryKeysUnfrozen(polymesh_primitives::identity_id::IdentityId),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SecondaryKeyWithAuth<AccountId> {
pub secondary_key: polymesh_primitives::secondary_key::SecondaryKey<AccountId>,
pub auth_signature: primitive_types::H512,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct SecondaryKeyWithAuthV1<AccountId> {
pub secondary_key: polymesh_primitives::secondary_key::v1::SecondaryKey<AccountId>,
pub auth_signature: primitive_types::H512,
}
}
pub mod base {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "An unexpected error happened that should be investigated."]
#[codec(index = 0u8)]
UnexpectedError(Option<sp_runtime::DispatchError>),
}
}
pub mod portfolio {
use super::*;
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "The portfolio has been successfully created."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* portfolio number"]
#[doc = "* portfolio name"]
#[codec(index = 0u8)]
PortfolioCreated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioNumber,
polymesh_primitives::identity_id::PortfolioName,
),
#[doc = "The portfolio has been successfully removed."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* portfolio number"]
#[codec(index = 1u8)]
PortfolioDeleted(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioNumber,
),
#[doc = "A token amount has been moved from one portfolio to another."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* source portfolio"]
#[doc = "* destination portfolio"]
#[doc = "* asset ticker"]
#[doc = "* asset balance that was moved"]
#[codec(index = 2u8)]
MovedBetweenPortfolios(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioId,
polymesh_primitives::identity_id::PortfolioId,
polymesh_primitives::ticker::Ticker,
u128,
Option<polymesh_common_utilities::traits::balances::Memo>,
),
#[doc = "The portfolio identified with `num` has been renamed to `name`."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* portfolio number"]
#[doc = "* portfolio name"]
#[codec(index = 3u8)]
PortfolioRenamed(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioNumber,
polymesh_primitives::identity_id::PortfolioName,
),
#[doc = "All non-default portfolio numbers and names of a DID."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* vector of number-name pairs"]
#[codec(index = 4u8)]
UserPortfolios(
polymesh_primitives::identity_id::IdentityId,
Vec<(
polymesh_primitives::identity_id::PortfolioNumber,
polymesh_primitives::identity_id::PortfolioName,
)>,
),
#[doc = "Custody of a portfolio has been given to a different identity"]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "* origin DID"]
#[doc = "* portfolio id"]
#[doc = "* portfolio custodian did"]
#[codec(index = 5u8)]
PortfolioCustodianChanged(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::identity_id::PortfolioId,
polymesh_primitives::identity_id::IdentityId,
),
}
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum MaybeBlock<BlockNumber> {
#[codec(index = 0u8)]
Some(BlockNumber),
#[codec(index = 1u8)]
None,
}
}
pub mod pallet_grandpa {
use super::*;
pub mod pallet {
use super::*;
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Attempt to signal GRANDPA pause when the authority set isn't live"]
#[doc = "(either paused or already pending pause)."]
#[codec(index = 0u8)]
PauseFailed,
#[doc = "Attempt to signal GRANDPA resume when the authority set isn't paused"]
#[doc = "(either live or already pending resume)."]
#[codec(index = 1u8)]
ResumeFailed,
#[doc = "Attempt to signal GRANDPA change with one already pending."]
#[codec(index = 2u8)]
ChangePending,
#[doc = "Cannot signal forced change so soon after last."]
#[codec(index = 3u8)]
TooSoon,
#[doc = "A key ownership proof provided as part of an equivocation report is invalid."]
#[codec(index = 4u8)]
InvalidKeyOwnershipProof,
#[doc = "An equivocation proof provided as part of an equivocation report is invalid."]
#[codec(index = 5u8)]
InvalidEquivocationProof,
#[doc = "A given equivocation report is valid but already previously reported."]
#[codec(index = 6u8)]
DuplicateOffenceReport,
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "New authority set has been applied."]
#[codec(index = 0u8)]
NewAuthorities {
authority_set: Vec<(sp_finality_grandpa::app::Public, u64)>,
},
#[doc = "Current authority set has been paused."]
#[codec(index = 1u8)]
Paused,
#[doc = "Current authority set has been resumed."]
#[codec(index = 2u8)]
Resumed,
}
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Report voter equivocation/misbehavior. This method will verify the"]
#[doc = "equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence"]
#[doc = "will be reported."]
#[codec(index = 0u8)]
report_equivocation {
equivocation_proof:
::std::boxed::Box<sp_finality_grandpa::EquivocationProof<primitive_types::H256, u32>>,
key_owner_proof: sp_session::MembershipProof,
},
#[doc = "Report voter equivocation/misbehavior. This method will verify the"]
#[doc = "equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence"]
#[doc = "will be reported."]
#[doc = ""]
#[doc = "This extrinsic must be called unsigned and it is expected that only"]
#[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"]
#[doc = "if the block author is defined it will be defined as the equivocation"]
#[doc = "reporter."]
#[codec(index = 1u8)]
report_equivocation_unsigned {
equivocation_proof:
::std::boxed::Box<sp_finality_grandpa::EquivocationProof<primitive_types::H256, u32>>,
key_owner_proof: sp_session::MembershipProof,
},
#[doc = "Note that the current authority set of the GRANDPA finality gadget has"]
#[doc = "stalled. This will trigger a forced authority set change at the beginning"]
#[doc = "of the next session, to be enacted `delay` blocks after that. The delay"]
#[doc = "should be high enough to safely assume that the block signalling the"]
#[doc = "forced change will not be re-orged (e.g. 1000 blocks). The GRANDPA voters"]
#[doc = "will start the new authority set using the given finalized block as base."]
#[doc = "Only callable by root."]
#[codec(index = 2u8)]
note_stalled {
delay: u32,
best_finalized_block_number: u32,
},
}
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum StoredState<N> {
#[codec(index = 0u8)]
Live,
#[codec(index = 1u8)]
PendingPause { scheduled_at: N, delay: N },
#[codec(index = 2u8)]
Paused,
#[codec(index = 3u8)]
PendingResume { scheduled_at: N, delay: N },
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct StoredPendingChange<N> {
pub scheduled_at: N,
pub delay: N,
pub next_authorities: Vec<(sp_finality_grandpa::app::Public, u64)>,
pub forced: Option<N>,
}
}
pub mod pallet_committee {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PolymeshVotes<BlockNumber> {
pub index: BlockNumber,
pub ayes: Vec<polymesh_primitives::identity_id::IdentityId>,
pub nays: Vec<polymesh_primitives::identity_id::IdentityId>,
pub expiry: polymesh_common_utilities::MaybeBlock<BlockNumber>,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance3();
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Change the vote threshold the determines the winning proposal."]
#[doc = "For e.g., for a simple majority use (1, 2) which represents the in-equation \">= 1/2\"."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `n` - Numerator of the fraction representing vote threshold."]
#[doc = "* `d` - Denominator of the fraction representing vote threshold."]
#[codec(index = 0u8)]
set_vote_threshold { n: u32, d: u32 },
#[doc = "Changes the release coordinator."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - The DID of the new release coordinator."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, If the new coordinator `id` is not part of the committee."]
#[codec(index = 1u8)]
set_release_coordinator {
id: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Changes the time after which a proposal expires."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` - The new expiry time."]
#[codec(index = 2u8)]
set_expires_after {
expiry: polymesh_common_utilities::MaybeBlock<u32>,
},
#[doc = "Proposes to the committee that `call` should be executed in its name."]
#[doc = "Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,"]
#[doc = "then this call counts as a vote, i.e., as if `vote_by_hash` was called."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = ""]
#[doc = "The weight of this dispatchable is that of `call` as well as the complexity"]
#[doc = "for recording the vote itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `approve` - is this an approving vote?"]
#[doc = " If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`."]
#[doc = "* `call` - the call to propose for execution."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`."]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
#[codec(index = 3u8)]
vote_or_propose {
approve: bool,
call: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
},
#[doc = "Votes `approve`ingly (or not, if `false`)"]
#[doc = "on an existing `proposal` given by its hash, `index`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposal` - A hash of the proposal to be voted on."]
#[doc = "* `index` - The proposal index."]
#[doc = "* `approve` - If `true` than this is a `for` vote, and `against` otherwise."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
#[codec(index = 4u8)]
vote {
proposal: primitive_types::H256,
index: u32,
approve: bool,
},
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<Hash, BlockNumber, I> {
#[doc = "A motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`)."]
#[doc = "Parameters: caller DID, proposal index, proposal hash."]
#[codec(index = 0u8)]
Proposed(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
Hash,
),
#[doc = "A motion (given hash) has been voted on by given account, leaving"]
#[doc = "a tally (yes votes, no votes and total seats given respectively as `MemberCount`)."]
#[doc = "caller DID, Proposal index, Proposal hash, current vote, yay vote count, nay vote count, total seats."]
#[codec(index = 1u8)]
Voted(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
Hash,
bool,
BlockNumber,
BlockNumber,
BlockNumber,
),
#[doc = "A vote on a motion (given hash) has been retracted."]
#[doc = "caller DID, ProposalIndex, Proposal hash, vote that was retracted"]
#[codec(index = 2u8)]
VoteRetracted(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
Hash,
bool,
),
#[doc = "Final votes on a motion (given hash)"]
#[doc = "caller DID, ProposalIndex, Proposal hash, yes voters, no voter"]
#[codec(index = 3u8)]
FinalVotes(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
Hash,
Vec<polymesh_primitives::identity_id::IdentityId>,
Vec<polymesh_primitives::identity_id::IdentityId>,
),
#[doc = "A motion was approved by the required threshold with the following"]
#[doc = "tally (yes votes, no votes and total seats given respectively as `MemberCount`)."]
#[doc = "Parameters: caller DID, proposal hash, yay vote count, nay vote count, total seats."]
#[codec(index = 4u8)]
Approved(
polymesh_primitives::identity_id::IdentityId,
Hash,
BlockNumber,
BlockNumber,
BlockNumber,
),
#[doc = "A motion was rejected by the required threshold with the following"]
#[doc = "tally (yes votes, no votes and total seats given respectively as `MemberCount`)."]
#[doc = "Parameters: caller DID, proposal hash, yay vote count, nay vote count, total seats."]
#[codec(index = 5u8)]
Rejected(
polymesh_primitives::identity_id::IdentityId,
Hash,
BlockNumber,
BlockNumber,
BlockNumber,
),
#[doc = "A motion was executed; `DispatchResult` is `Ok(())` if returned without error."]
#[doc = "Parameters: caller DID, proposal hash, result of proposal dispatch."]
#[codec(index = 6u8)]
Executed(
polymesh_primitives::identity_id::IdentityId,
Hash,
Result<(), sp_runtime::DispatchError>,
),
#[doc = "Release coordinator has been updated."]
#[doc = "Parameters: caller DID, DID of the release coordinator."]
#[codec(index = 7u8)]
ReleaseCoordinatorUpdated(
polymesh_primitives::identity_id::IdentityId,
Option<polymesh_primitives::identity_id::IdentityId>,
),
#[doc = "Proposal expiry time has been updated."]
#[doc = "Parameters: caller DID, new expiry time (if any)."]
#[codec(index = 8u8)]
ExpiresAfterUpdated(
polymesh_primitives::identity_id::IdentityId,
polymesh_common_utilities::MaybeBlock<BlockNumber>,
),
#[doc = "Voting threshold has been updated"]
#[doc = "Parameters: caller DID, numerator, denominator"]
#[codec(index = 9u8)]
VoteThresholdUpdated(
polymesh_primitives::identity_id::IdentityId,
BlockNumber,
BlockNumber,
),
PhantomDataVariant(core::marker::PhantomData<I>),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance1();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Duplicate votes are not allowed."]
#[codec(index = 0u8)]
DuplicateVote,
#[doc = "A DID isn't part of the committee."]
#[doc = "The DID may either be a caller or some other context."]
#[codec(index = 1u8)]
NotAMember,
#[doc = "No such proposal."]
#[codec(index = 2u8)]
NoSuchProposal,
#[doc = "Proposal exists, but it has expired."]
#[codec(index = 3u8)]
ProposalExpired,
#[doc = "Duplicate proposal."]
#[codec(index = 4u8)]
DuplicateProposal,
#[doc = "Mismatched voting index."]
#[codec(index = 5u8)]
MismatchedVotingIndex,
#[doc = "Proportion must be a rational number."]
#[codec(index = 6u8)]
InvalidProportion,
#[doc = "First vote on a proposal creates it, so it must be an approval."]
#[doc = "All proposals are motions to execute something as \"GC majority\"."]
#[doc = "To reject e.g., a PIP, a motion to reject should be *approved*."]
#[codec(index = 7u8)]
FirstVoteReject,
#[doc = "Maximum number of proposals has been reached."]
#[codec(index = 8u8)]
ProposalsLimitReached,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance4();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawOrigin<AccountId, I> {
#[codec(index = 0u8)]
Endorsed,
PhantomDataVariant(core::marker::PhantomData<(AccountId, I)>),
}
}
pub mod pallet_multisig {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum ProposalStatus {
#[codec(index = 0u8)]
Invalid,
#[codec(index = 1u8)]
ActiveOrExpired,
#[codec(index = 2u8)]
ExecutionSuccessful,
#[codec(index = 3u8)]
ExecutionFailed,
#[codec(index = 4u8)]
Rejected,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "Event emitted after creation of a multisig."]
#[doc = "Arguments: caller DID, multisig address, signers (pending approval), signatures required."]
#[codec(index = 0u8)]
MultiSigCreated(
polymesh_primitives::identity_id::IdentityId,
AccountId,
AccountId,
Vec<polymesh_primitives::secondary_key::Signatory<AccountId>>,
u64,
),
#[doc = "Event emitted after adding a proposal."]
#[doc = "Arguments: caller DID, multisig, proposal ID."]
#[codec(index = 1u8)]
ProposalAdded(polymesh_primitives::identity_id::IdentityId, AccountId, u64),
#[doc = "Event emitted when a proposal is executed."]
#[doc = "Arguments: caller DID, multisig, proposal ID, result."]
#[codec(index = 2u8)]
ProposalExecuted(
polymesh_primitives::identity_id::IdentityId,
AccountId,
u64,
bool,
),
#[doc = "Event emitted when a signatory is added."]
#[doc = "Arguments: caller DID, multisig, added signer."]
#[codec(index = 3u8)]
MultiSigSignerAdded(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Signatory<AccountId>,
),
#[doc = "Event emitted when a multisig signatory is authorized to be added."]
#[doc = "Arguments: caller DID, multisig, authorized signer."]
#[codec(index = 4u8)]
MultiSigSignerAuthorized(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Signatory<AccountId>,
),
#[doc = "Event emitted when a multisig signatory is removed."]
#[doc = "Arguments: caller DID, multisig, removed signer."]
#[codec(index = 5u8)]
MultiSigSignerRemoved(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Signatory<AccountId>,
),
#[doc = "Event emitted when the number of required signatures is changed."]
#[doc = "Arguments: caller DID, multisig, new required signatures."]
#[codec(index = 6u8)]
MultiSigSignaturesRequiredChanged(
polymesh_primitives::identity_id::IdentityId,
AccountId,
u64,
),
#[doc = "Event emitted when the proposal get approved."]
#[doc = "Arguments: caller DID, multisig, authorized signer, proposal id."]
#[codec(index = 7u8)]
ProposalApproved(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Signatory<AccountId>,
u64,
),
#[doc = "Event emitted when a vote is cast in favor of rejecting a proposal."]
#[doc = "Arguments: caller DID, multisig, authorized signer, proposal id."]
#[codec(index = 8u8)]
ProposalRejectionVote(
polymesh_primitives::identity_id::IdentityId,
AccountId,
polymesh_primitives::secondary_key::Signatory<AccountId>,
u64,
),
#[doc = "Event emitted when a proposal is rejected."]
#[doc = "Arguments: caller DID, multisig, proposal ID."]
#[codec(index = 9u8)]
ProposalRejected(polymesh_primitives::identity_id::IdentityId, AccountId, u64),
#[doc = "Event emitted when there's an error in proposal execution"]
#[codec(index = 10u8)]
ProposalExecutionFailed(sp_runtime::DispatchError),
#[doc = "Scheduling of proposal fails."]
#[codec(index = 11u8)]
SchedulingFailed(sp_runtime::DispatchError),
}
#[doc = "Multisig module errors."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The multisig is not attached to a CDD'd identity."]
#[codec(index = 0u8)]
CddMissing,
#[doc = "The proposal does not exist."]
#[codec(index = 1u8)]
ProposalMissing,
#[doc = "Multisig address."]
#[codec(index = 2u8)]
DecodingError,
#[doc = "No signers."]
#[codec(index = 3u8)]
NoSigners,
#[doc = "Too few or too many required signatures."]
#[codec(index = 4u8)]
RequiredSignaturesOutOfBounds,
#[doc = "Not a signer."]
#[codec(index = 5u8)]
NotASigner,
#[doc = "No such multisig."]
#[codec(index = 6u8)]
NoSuchMultisig,
#[doc = "Not enough signers."]
#[codec(index = 7u8)]
NotEnoughSigners,
#[doc = "A nonce overflow."]
#[codec(index = 8u8)]
NonceOverflow,
#[doc = "Already voted."]
#[codec(index = 9u8)]
AlreadyVoted,
#[doc = "Already a signer."]
#[codec(index = 10u8)]
AlreadyASigner,
#[doc = "Couldn't charge fee for the transaction."]
#[codec(index = 11u8)]
FailedToChargeFee,
#[doc = "Identity provided is not the multisig's creator."]
#[codec(index = 12u8)]
IdentityNotCreator,
#[doc = "Changing multisig parameters not allowed since multisig is a primary key."]
#[codec(index = 13u8)]
ChangeNotAllowed,
#[doc = "Signer is an account key that is already associated with a multisig."]
#[codec(index = 14u8)]
SignerAlreadyLinkedToMultisig,
#[doc = "Signer is an account key that is already associated with an identity."]
#[codec(index = 15u8)]
SignerAlreadyLinkedToIdentity,
#[doc = "Multisig not allowed to add itself as a signer."]
#[codec(index = 16u8)]
MultisigNotAllowedToLinkToItself,
#[doc = "Current DID is missing"]
#[codec(index = 17u8)]
MissingCurrentIdentity,
#[doc = "The function can only be called by the primary key of the did"]
#[codec(index = 18u8)]
NotPrimaryKey,
#[doc = "Proposal was rejected earlier"]
#[codec(index = 19u8)]
ProposalAlreadyRejected,
#[doc = "Proposal has expired"]
#[codec(index = 20u8)]
ProposalExpired,
#[doc = "Proposal was executed earlier"]
#[codec(index = 21u8)]
ProposalAlreadyExecuted,
#[doc = "Multisig is not attached to an identity"]
#[codec(index = 22u8)]
MultisigMissingIdentity,
#[doc = "Scheduling of a proposal fails"]
#[codec(index = 23u8)]
FailedToSchedule,
#[doc = "More signers than required."]
#[codec(index = 24u8)]
TooManySigners,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Version(pub u8);
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Creates a multisig"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signers` - Signers of the multisig (They need to accept authorization before they are actually added)."]
#[doc = "* `sigs_required` - Number of sigs required to process a multi-sig tx."]
#[codec(index = 0u8)]
create_multisig {
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
sigs_required: u64,
},
#[doc = "Creates a multisig proposal if it hasn't been created or approves it if it has."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
#[codec(index = 1u8)]
create_or_approve_proposal_as_identity {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
expiry: Option<u64>,
auto_close: bool,
},
#[doc = "Creates a multisig proposal if it hasn't been created or approves it if it has."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
#[codec(index = 2u8)]
create_or_approve_proposal_as_key {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
expiry: Option<u64>,
auto_close: bool,
},
#[doc = "Creates a multisig proposal"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
#[codec(index = 3u8)]
create_proposal_as_identity {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
expiry: Option<u64>,
auto_close: bool,
},
#[doc = "Creates a multisig proposal"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
#[codec(index = 4u8)]
create_proposal_as_key {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: ::std::boxed::Box<polymesh_runtime_develop::runtime::Call>,
expiry: Option<u64>,
auto_close: bool,
},
#[doc = "Approves a multisig proposal using the caller's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to approve."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
#[codec(index = 5u8)]
approve_as_identity {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
},
#[doc = "Approves a multisig proposal using the caller's secondary key (`AccountId`)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to approve."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
#[codec(index = 6u8)]
approve_as_key {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
},
#[doc = "Rejects a multisig proposal using the caller's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to reject."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
#[codec(index = 7u8)]
reject_as_identity {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
},
#[doc = "Rejects a multisig proposal using the caller's secondary key (`AccountId`)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to reject."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
#[codec(index = 8u8)]
reject_as_key {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
},
#[doc = "Accepts a multisig signer authorization given to signer's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_id` - Auth id of the authorization."]
#[codec(index = 9u8)]
accept_multisig_signer_as_identity { auth_id: u64 },
#[doc = "Accepts a multisig signer authorization given to signer's key (AccountId)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_id` - Auth id of the authorization."]
#[codec(index = 10u8)]
accept_multisig_signer_as_key { auth_id: u64 },
#[doc = "Adds a signer to the multisig. This must be called by the multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signer` - Signatory to add."]
#[codec(index = 11u8)]
add_multisig_signer {
signer: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
},
#[doc = "Removes a signer from the multisig. This must be called by the multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signer` - Signatory to remove."]
#[codec(index = 12u8)]
remove_multisig_signer {
signer: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
},
#[doc = "Adds a signer to the multisig. This must be called by the creator identity of the"]
#[doc = "multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - Address of the multi sig"]
#[doc = "* `signers` - Signatories to add."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`900_000_000 + 3_000_000 * signers.len()`"]
#[codec(index = 13u8)]
add_multisig_signers_via_creator {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
},
#[doc = "Removes a signer from the multisig."]
#[doc = "This must be called by the creator identity of the multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - Address of the multisig."]
#[doc = "* `signers` - Signatories to remove."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`900_000_000 + 3_000_000 * signers.len()`"]
#[codec(index = 14u8)]
remove_multisig_signers_via_creator {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
},
#[doc = "Changes the number of signatures required by a multisig. This must be called by the"]
#[doc = "multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `sigs_required` - New number of required signatures."]
#[codec(index = 15u8)]
change_sigs_required { sigs_required: u64 },
#[doc = "Adds a multisig as a secondary key of current did if the current did is the creator of the"]
#[doc = "multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - multi sig address"]
#[codec(index = 16u8)]
make_multisig_secondary {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Adds a multisig as the primary key of the current did if the current DID is the creator"]
#[doc = "of the multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multi_sig` - multi sig address"]
#[codec(index = 17u8)]
make_multisig_primary {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
optional_cdd_auth_id: Option<u64>,
},
#[doc = "Root callable extrinsic, used as an internal call for executing scheduled multisig proposal."]
#[codec(index = 18u8)]
execute_scheduled_proposal {
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
multisig_did: polymesh_primitives::identity_id::IdentityId,
_proposal_weight: u64,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct ProposalDetails<T> {
pub approvals: T,
pub rejections: T,
pub status: pallet_multisig::ProposalStatus,
pub expiry: Option<T>,
pub auto_close: bool,
}
}
pub mod pallet_balances {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BalanceLock<Balance> {
pub id: [u8; 8usize],
pub amount: Balance,
pub reasons: polymesh_common_utilities::traits::balances::Reasons,
}
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Transfer some liquid free balance to another account."]
#[doc = ""]
#[doc = "`transfer` will set the `FreeBalance` of the sender and receiver."]
#[doc = "It will decrease the total issuance of the system by the `TransferFee`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be `Signed` by the transactor."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Dependent on arguments but not critical, given proper implementations for"]
#[doc = " input config types. See related functions below."]
#[doc = "- It contains a limited number of reads and writes internally and no complex computation."]
#[doc = ""]
#[doc = "Related functions:"]
#[doc = ""]
#[doc = " - `ensure_can_withdraw` is always called internally but has a bounded complexity."]
#[doc = " - Transferring balances to accounts that did not exist before will cause"]
#[doc = " `T::OnNewAccount::on_new_account` to be called."]
#[doc = "---------------------------------"]
#[doc = "- Base Weight: 73.64 µs, worst case scenario (account created, account removed)"]
#[doc = "- DB Weight: 1 Read and 1 Write to destination account."]
#[doc = "- Origin account is already in memory, so no DB operations for them."]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
transfer {
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
value: u128,
},
#[doc = "Transfer the native currency with the help of identifier string"]
#[doc = "this functionality can help to differentiate the transfers."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Base Weight: 73.64 µs, worst case scenario (account created, account removed)"]
#[doc = "- DB Weight: 1 Read and 1 Write to destination account."]
#[doc = "- Origin account is already in memory, so no DB operations for them."]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
transfer_with_memo {
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
value: u128,
memo: Option<polymesh_common_utilities::traits::balances::Memo>,
},
#[doc = "Move some POLYX from balance of self to balance of BRR."]
#[codec(index = 2u8)]
deposit_block_reward_reserve_balance {
#[codec(compact)]
value: u128,
},
#[doc = "Set the balances of a given account."]
#[doc = ""]
#[doc = "This will alter `FreeBalance` and `ReservedBalance` in storage. it will"]
#[doc = "also decrease the total issuance of the system (`TotalIssuance`)."]
#[doc = ""]
#[doc = "The dispatch origin for this call is `root`."]
#[codec(index = 3u8)]
set_balance {
who: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
new_free: u128,
#[codec(compact)]
new_reserved: u128,
},
#[doc = "Exactly as `transfer`, except the origin must be root and the source account may be"]
#[doc = "specified."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Same as transfer, but additional read and write because the source account is"]
#[doc = " not assumed to be in the overlay."]
#[doc = "# </weight>"]
#[codec(index = 4u8)]
force_transfer {
source: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
#[codec(compact)]
value: u128,
},
#[doc = "Burns the given amount of tokens from the caller's free, unlocked balance."]
#[codec(index = 5u8)]
burn_account_balance { amount: u128 },
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Account liquidity restrictions prevent withdrawal"]
#[codec(index = 0u8)]
LiquidityRestrictions,
#[doc = "Got an overflow after adding"]
#[codec(index = 1u8)]
Overflow,
#[doc = "Balance too low to send value"]
#[codec(index = 2u8)]
InsufficientBalance,
#[doc = "Value too low to create account due to existential deposit"]
#[codec(index = 3u8)]
ExistentialDeposit,
#[doc = "Receiver does not have a valid CDD"]
#[codec(index = 4u8)]
ReceiverCddMissing,
}
}
pub mod pallet_group {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "Only primary key of the identity is allowed."]
#[codec(index = 0u8)]
OnlyPrimaryKeyAllowed,
#[doc = "Group member was added already."]
#[codec(index = 1u8)]
DuplicateMember,
#[doc = "Can't remove a member that doesn't exist."]
#[codec(index = 2u8)]
NoSuchMember,
#[doc = "Last member of the committee can not quit."]
#[codec(index = 3u8)]
LastMemberCannotQuit,
#[doc = "Missing current DID"]
#[codec(index = 4u8)]
MissingCurrentIdentity,
#[doc = "The limit for the number of concurrent active members for this group has been exceeded."]
#[codec(index = 5u8)]
ActiveMembersLimitExceeded,
#[doc = "Active member limit was greater than maximum committee members limit."]
#[codec(index = 6u8)]
ActiveMembersLimitOverflow,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance3();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance1();
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance4();
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Change this group's limit for how many concurrent active members they may be."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` - the number of active members there may be concurrently."]
#[codec(index = 0u8)]
set_active_members_limit { limit: u32 },
#[doc = "Disables a member at specific moment."]
#[doc = ""]
#[doc = "Please note that if member is already revoked (a \"valid member\"), its revocation"]
#[doc = "time-stamp will be updated."]
#[doc = ""]
#[doc = "Any disabled member should NOT allow to act like an active member of the group. For"]
#[doc = "instance, a disabled CDD member should NOT be able to generate a CDD claim. However any"]
#[doc = "generated claim issued before `at` would be considered as a valid one."]
#[doc = ""]
#[doc = "If you want to invalidate any generated claim, you should use `Self::remove_member`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `at` - Revocation time-stamp."]
#[doc = "* `who` - Target member of the group."]
#[doc = "* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, the"]
#[doc = "generated claims will be \"invalid\" as `who` is not considered a member of the group."]
#[codec(index = 1u8)]
disable_member {
who: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
at: Option<u64>,
},
#[doc = "Adds a member `who` to the group. May only be called from `AddOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `AddOrigin` or root"]
#[doc = "* `who` - IdentityId to be added to the group."]
#[codec(index = 2u8)]
add_member {
who: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Removes a member `who` from the set. May only be called from `RemoveOrigin` or root."]
#[doc = ""]
#[doc = "Any claim previously generated by this member is not valid as a group claim. For"]
#[doc = "instance, if a CDD member group generated a claim for a target identity and then it is"]
#[doc = "removed, that claim will be invalid. In case you want to keep the validity of generated"]
#[doc = "claims, you have to use `Self::disable_member` function"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `RemoveOrigin` or root"]
#[doc = "* `who` - IdentityId to be removed from the group."]
#[codec(index = 3u8)]
remove_member {
who: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Swaps out one member `remove` for another member `add`."]
#[doc = ""]
#[doc = "May only be called from `SwapOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `SwapOrigin` or root"]
#[doc = "* `remove` - IdentityId to be removed from the group."]
#[doc = "* `add` - IdentityId to be added in place of `remove`."]
#[codec(index = 4u8)]
swap_member {
remove: polymesh_primitives::identity_id::IdentityId,
add: polymesh_primitives::identity_id::IdentityId,
},
#[doc = "Changes the membership to a new set, disregarding the existing membership."]
#[doc = "May only be called from `ResetOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `ResetOrigin` or root"]
#[doc = "* `members` - New set of identities"]
#[codec(index = 5u8)]
reset_members {
members: Vec<polymesh_primitives::identity_id::IdentityId>,
},
#[doc = "Allows the calling member to *unilaterally quit* without this being subject to a GC"]
#[doc = "vote."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Member of committee who wants to quit."]
#[doc = ""]
#[doc = "# Error"]
#[doc = ""]
#[doc = "* Only primary key can abdicate."]
#[doc = "* Last member of a group cannot abdicate."]
#[codec(index = 6u8)]
abdicate_membership,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Instance2();
}
pub mod polymesh_contracts {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Instantiates a smart contract defining it with the given `code` and `salt`."]
#[doc = ""]
#[doc = "The contract will be attached as a secondary key,"]
#[doc = "with `perms` as its permissions, to `origin`'s identity."]
#[doc = ""]
#[doc = "The contract is transferred `endowment` amount of POLYX."]
#[doc = "This is distinct from the `gas_limit`,"]
#[doc = "which controls how much gas the deployment code may at most consume."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `endowment` amount of POLYX to transfer to the contract."]
#[doc = "- `gas_limit` for how much gas the `deploy` code in the contract may at most consume."]
#[doc = "- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "- `code` with the WASM binary defining the smart contract."]
#[doc = "- `data` The input data to pass to the contract constructor."]
#[doc = "- `salt` used for contract address derivation."]
#[doc = " By varying this, the same `code` can be used under the same identity."]
#[doc = "- `perms` that the new secondary key will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- All the errors in `pallet_contracts::Call::instantiate_with_code` can also happen here."]
#[doc = "- CDD/Permissions are checked, unlike in `pallet_contracts`."]
#[doc = "- Errors that arise when adding a new secondary key can also occur here."]
#[codec(index = 0u8)]
instantiate_with_code_perms {
endowment: u128,
gas_limit: u64,
storage_deposit_limit: Option<u128>,
code: Vec<u8>,
data: Vec<u8>,
salt: Vec<u8>,
perms: polymesh_primitives::secondary_key::Permissions,
},
#[doc = "Instantiates a smart contract defining using the given `code_hash` and `salt`."]
#[doc = ""]
#[doc = "Unlike `instantiate_with_code`,"]
#[doc = "this assumes that at least one contract with the same WASM code has already been uploaded."]
#[doc = ""]
#[doc = "The contract will be attached as a secondary key,"]
#[doc = "with `perms` as its permissions, to `origin`'s identity."]
#[doc = ""]
#[doc = "The contract is transferred `endowment` amount of POLYX."]
#[doc = "This is distinct from the `gas_limit`,"]
#[doc = "which controls how much gas the deployment code may at most consume."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `endowment` amount of POLYX to transfer to the contract."]
#[doc = "- `gas_limit` for how much gas the `deploy` code in the contract may at most consume."]
#[doc = "- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "- `code_hash` of an already uploaded WASM binary."]
#[doc = "- `data` The input data to pass to the contract constructor."]
#[doc = "- `salt` used for contract address derivation."]
#[doc = " By varying this, the same `code` can be used under the same identity."]
#[doc = "- `perms` that the new secondary key will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- All the errors in `pallet_contracts::Call::instantiate` can also happen here."]
#[doc = "- CDD/Permissions are checked, unlike in `pallet_contracts`."]
#[doc = "- Errors that arise when adding a new secondary key can also occur here."]
#[codec(index = 1u8)]
instantiate_with_hash_perms {
endowment: u128,
gas_limit: u64,
storage_deposit_limit: Option<u128>,
code_hash: primitive_types::H256,
data: Vec<u8>,
salt: Vec<u8>,
perms: polymesh_primitives::secondary_key::Permissions,
},
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The given `func_id: u32` did not translate into a known runtime call."]
#[codec(index = 0u8)]
RuntimeCallNotFound,
#[doc = "Data left in input when decoding arguments of a call."]
#[codec(index = 1u8)]
DataLeftAfterDecoding,
#[doc = "Input data that a contract passed when making a runtime call was too large."]
#[codec(index = 2u8)]
InLenTooLarge,
#[doc = "A contract was attempted to be instantiated,"]
#[doc = "but no identity was given to associate the new contract's key with."]
#[codec(index = 3u8)]
InstantiatorWithNoIdentity,
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {}
}
pub mod primitive_types {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct H512(
#[cfg_attr(feature = "serde", serde(with = "::serde_big_array::BigArray"))] pub [u8; 64usize],
);
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct H256(pub [u8; 32usize]);
}
pub mod pallet_indices {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Assign an previously unassigned index."]
#[doc = ""]
#[doc = "Payment: `Deposit` is reserved from the sender account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "- `index`: the index to be claimed. This must not be in use."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
claim { index: u32 },
#[doc = "Assign an index already owned by the sender to another account. The balance reservation"]
#[doc = "is effectively transferred to the new account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "- `index`: the index to be re-assigned. This must be owned by the sender."]
#[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One transfer operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Indices Accounts, System Account (recipient)"]
#[doc = " - Writes: Indices Accounts, System Account (recipient)"]
#[doc = "# </weight>"]
#[codec(index = 1u8)]
transfer {
new: ::polymesh_api_client::sp_core::crypto::AccountId32,
index: u32,
},
#[doc = "Free up an index owned by the sender."]
#[doc = ""]
#[doc = "Payment: Any previous deposit placed for the index is unreserved in the sender account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ and the sender must own the index."]
#[doc = ""]
#[doc = "- `index`: the index to be freed. This must be owned by the sender."]
#[doc = ""]
#[doc = "Emits `IndexFreed` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
#[codec(index = 2u8)]
free { index: u32 },
#[doc = "Force an index to an account. This doesn't require a deposit. If the index is already"]
#[doc = "held, then any deposit is reimbursed to its current owner."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Root_."]
#[doc = ""]
#[doc = "- `index`: the index to be (re-)assigned."]
#[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."]
#[doc = "- `freeze`: if set to `true`, will freeze the index so it cannot be transferred."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- Up to one reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Indices Accounts, System Account (original owner)"]
#[doc = " - Writes: Indices Accounts, System Account (original owner)"]
#[doc = "# </weight>"]
#[codec(index = 3u8)]
force_transfer {
new: ::polymesh_api_client::sp_core::crypto::AccountId32,
index: u32,
freeze: bool,
},
#[doc = "Freeze an index so it will always point to the sender account. This consumes the"]
#[doc = "deposit."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ and the signing account must have a"]
#[doc = "non-frozen account `index`."]
#[doc = ""]
#[doc = "- `index`: the index to be frozen in place."]
#[doc = ""]
#[doc = "Emits `IndexFrozen` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- Up to one slash operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
#[codec(index = 4u8)]
freeze { index: u32 },
}
#[doc = "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Event {
#[doc = "A account index was assigned."]
#[codec(index = 0u8)]
IndexAssigned {
who: ::polymesh_api_client::sp_core::crypto::AccountId32,
index: u32,
},
#[doc = "A account index has been freed up (unassigned)."]
#[codec(index = 1u8)]
IndexFreed { index: u32 },
#[doc = "A account index has been frozen to its current account ID."]
#[codec(index = 2u8)]
IndexFrozen {
index: u32,
who: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
}
#[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t"]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {
#[doc = "The index was not already assigned."]
#[codec(index = 0u8)]
NotAssigned,
#[doc = "The index is assigned to another account."]
#[codec(index = 1u8)]
NotOwner,
#[doc = "The index was not available."]
#[codec(index = 2u8)]
InUse,
#[doc = "The source and destination accounts are identical."]
#[codec(index = 3u8)]
NotTransfer,
#[doc = "The index is permanent and may not be freed/changed."]
#[codec(index = 4u8)]
Permanent,
}
}
}
pub mod sp_authority_discovery {
use super::*;
pub mod app {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct Public(pub sp_core::sr25519::Public);
}
}
pub mod pallet_test_utils {
use super::*;
#[doc = "Dispatchable calls."]
#[doc = ""]
#[doc = "Each variant of this enum maps to a dispatchable function from the associated module."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Generates a new `IdentityID` for the caller, and issues a self-generated CDD claim."]
#[doc = ""]
#[doc = "The caller account will be the primary key of that identity."]
#[doc = "For each account of `secondary_keys`, a new `JoinIdentity` authorization is created, so"]
#[doc = "each of them will need to accept it before become part of this new `IdentityID`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AlreadyLinked` if the caller account or if any of the given `secondary_keys` has already linked to an `IdentityID`"]
#[doc = "- `SecondaryKeysContainPrimaryKey` if `secondary_keys` contains the caller account."]
#[doc = "- `DidAlreadyExists` if auto-generated DID already exists."]
#[codec(index = 0u8)]
register_did {
uid: polymesh_primitives::cdd_id::InvestorUid,
secondary_keys: Vec<
polymesh_primitives::secondary_key::SecondaryKey<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
},
#[doc = "Registers a new Identity for the `target_account` and issues a CDD claim to it."]
#[doc = "The Investor UID is generated deterministically by the hash of the generated DID and"]
#[doc = "then we fix it to be compliant with UUID v4."]
#[doc = ""]
#[doc = "# See"]
#[doc = "- [RFC 4122: UUID](https://tools.ietf.org/html/rfc4122)"]
#[doc = ""]
#[doc = "# Failure"]
#[doc = "- `origin` has to be an active CDD provider. Inactive CDD providers cannot add new"]
#[doc = "claims."]
#[doc = "- `target_account` (primary key of the new Identity) can be linked to just one and only"]
#[doc = "one identity."]
#[codec(index = 1u8)]
mock_cdd_register_did {
target_account: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
#[doc = "Emits an event with caller's identity."]
#[codec(index = 2u8)]
get_my_did,
#[doc = "Emits an event with caller's identity and CDD status."]
#[codec(index = 3u8)]
get_cdd_of {
of: ::polymesh_api_client::sp_core::crypto::AccountId32,
},
}
#[doc = "Events for this module."]
#[doc = ""]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawEvent<AccountId> {
#[doc = "A new mocked `InvestorUid` has been created for the given Identity."]
#[doc = "(Target DID, New InvestorUid)"]
#[codec(index = 0u8)]
MockInvestorUIDCreated(
polymesh_primitives::identity_id::IdentityId,
polymesh_primitives::cdd_id::InvestorUid,
),
#[doc = "Emits the `IdentityId` and the `AccountId` of the caller."]
#[doc = "(Caller DID, Caller account)"]
#[codec(index = 1u8)]
DidStatus(polymesh_primitives::identity_id::IdentityId, AccountId),
#[doc = "Shows the `DID` associated to the `AccountId`, and a flag indicates if that DID has a"]
#[doc = "valid CDD claim."]
#[doc = "(Target DID, Target Account, a valid CDD claim exists)"]
#[codec(index = 2u8)]
CddStatus(
Option<polymesh_primitives::identity_id::IdentityId>,
AccountId,
bool,
),
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Error {}
}
pub mod frame_support {
use super::*;
pub mod traits {
use super::*;
pub mod misc {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct WrapperOpaque<T>(#[codec(compact)] pub u32, pub T);
}
pub mod tokens {
use super::*;
pub mod misc {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum BalanceStatus {
#[codec(index = 0u8)]
Free,
#[codec(index = 1u8)]
Reserved,
}
}
}
pub mod schedule {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum LookupError {
#[codec(index = 0u8)]
Unknown,
#[codec(index = 1u8)]
BadFormat,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum MaybeHashed<T, Hash> {
#[codec(index = 0u8)]
Value(T),
#[codec(index = 1u8)]
Hash(Hash),
}
}
}
pub mod weights {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Pays {
#[codec(index = 0u8)]
Yes,
#[codec(index = 1u8)]
No,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct WeightToFeeCoefficient<Balance> {
pub coeff_integer: Balance,
pub coeff_frac: sp_arithmetic::per_things::Perbill,
pub negative: bool,
pub degree: u8,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct RuntimeDbWeight {
pub read: u64,
pub write: u64,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum DispatchClass {
#[codec(index = 0u8)]
Normal,
#[codec(index = 1u8)]
Operational,
#[codec(index = 2u8)]
Mandatory,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct DispatchInfo {
pub weight: u64,
pub class: frame_support::weights::DispatchClass,
pub pays_fee: frame_support::weights::Pays,
}
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct PerDispatchClass<T> {
pub normal: T,
pub operational: T,
pub mandatory: T,
}
}
pub mod storage {
use super::*;
pub mod weak_bounded_vec {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct WeakBoundedVec<T>(pub Vec<T>);
}
pub mod bounded_vec {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct BoundedVec<T>(pub Vec<T>);
}
}
pub mod dispatch {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum RawOrigin<AccountId> {
#[codec(index = 0u8)]
Root,
#[codec(index = 1u8)]
Signed(AccountId),
#[codec(index = 2u8)]
None,
}
}
}
pub mod sp_session {
use super::*;
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub struct MembershipProof {
pub session: u32,
pub trie_nodes: Vec<Vec<u8>>,
pub validator_count: u32,
}
}
pub mod pallet_timestamp {
use super::*;
pub mod pallet {
use super::*;
#[doc = "Contains one variant per dispatchable that can be called by an extrinsic."]
#[derive(Clone, Debug, PartialEq, Eq, :: codec :: Encode, :: codec :: Decode)]
#[cfg_attr(feature = "serde", derive(::serde::Serialize, ::serde::Deserialize))]
pub enum Call {
#[doc = "Set the current time."]
#[doc = ""]
#[doc = "This call should be invoked exactly once per block. It will panic at the finalization"]
#[doc = "phase, if this call hasn't been invoked by that time."]
#[doc = ""]
#[doc = "The timestamp should be greater than the previous one by the amount specified by"]
#[doc = "`MinimumPeriod`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be `Inherent`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)"]
#[doc = "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in"]
#[doc = " `on_finalize`)"]
#[doc = "- 1 event handler `on_timestamp_set`. Must be `O(1)`."]
#[doc = "# </weight>"]
#[codec(index = 0u8)]
set {
#[codec(compact)]
now: u64,
},
}
}
}
}
#[allow(dead_code, unused_imports, non_camel_case_types)]
pub mod api {
use super::types;
use super::types::*;
use super::WrappedCall;
pub mod system {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "A dispatch that will fill the block weight up to the given ratio."]
pub fn fill_block(
&self,
ratio: sp_arithmetic::per_things::Perbill,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::fill_block { ratio },
))
}
#[doc = "Make some on-chain remark."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`"]
#[doc = "# </weight>"]
pub fn remark(
&self,
remark: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::remark { remark },
))
}
#[doc = "Set the number of pages in the WebAssembly environment's heap."]
pub fn set_heap_pages(
&self,
pages: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::set_heap_pages { pages },
))
}
#[doc = "Set the new runtime code."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`"]
#[doc = "- 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is"]
#[doc = " expensive)."]
#[doc = "- 1 storage write (codec `O(C)`)."]
#[doc = "- 1 digest item."]
#[doc = "- 1 event."]
#[doc = "The weight of this function is dependent on the runtime, but generally this is very"]
#[doc = "expensive. We will treat this as a full block."]
#[doc = "# </weight>"]
pub fn set_code(
&self,
code: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::set_code { code },
))
}
#[doc = "Set the new runtime code without doing any checks of the given `code`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(C)` where `C` length of `code`"]
#[doc = "- 1 storage write (codec `O(C)`)."]
#[doc = "- 1 digest item."]
#[doc = "- 1 event."]
#[doc = "The weight of this function is dependent on the runtime. We will treat this as a full"]
#[doc = "block. # </weight>"]
pub fn set_code_without_checks(
&self,
code: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::set_code_without_checks { code },
))
}
#[doc = "Set some items of storage."]
pub fn set_storage(
&self,
items: Vec<(Vec<u8>, Vec<u8>)>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::set_storage { items },
))
}
#[doc = "Kill some items from storage."]
pub fn kill_storage(
&self,
keys: Vec<Vec<u8>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::kill_storage { keys },
))
}
#[doc = "Kill all storage items with a key that starts with the given prefix."]
#[doc = ""]
#[doc = "**NOTE:** We rely on the Root origin to provide us the number of subkeys under"]
#[doc = "the prefix we are removing to accurately calculate the weight of this function."]
pub fn kill_prefix(
&self,
prefix: Vec<u8>,
subkeys: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::kill_prefix { prefix, subkeys },
))
}
#[doc = "Make some on-chain remark and emit event."]
pub fn remark_with_event(
&self,
remark: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::System(
types::frame_system::pallet::Call::remark_with_event { remark },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The full account information for a particular account ID."]
pub async fn account(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
frame_system::AccountInfo<u32, polymesh_common_utilities::traits::balances::AccountData>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 185u8, 157u8, 136u8, 14u8, 198u8, 129u8, 121u8, 156u8, 12u8, 243u8, 14u8,
136u8, 134u8, 55u8, 29u8, 169u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<frame_system::AccountInfo<
u32,
polymesh_common_utilities::traits::balances::AccountData,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Total extrinsics count for the current block."]
pub async fn extrinsic_count(&self) -> ::polymesh_api_client::error::Result<Option<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 189u8, 192u8, 189u8, 48u8, 62u8, 152u8, 85u8, 129u8, 58u8, 168u8, 163u8,
13u8, 78u8, 252u8, 81u8, 18u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The current weight for the block."]
pub async fn block_weight(
&self,
) -> ::polymesh_api_client::error::Result<frame_support::weights::PerDispatchClass<u64>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 52u8, 171u8, 245u8, 203u8, 52u8, 214u8, 36u8, 67u8, 120u8, 205u8, 219u8,
241u8, 142u8, 132u8, 157u8, 150u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<frame_support::weights::PerDispatchClass<u64>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Total length (in bytes) for all extrinsics put together, for the current block."]
pub async fn all_extrinsics_len(&self) -> ::polymesh_api_client::error::Result<Option<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 168u8, 109u8, 165u8, 169u8, 50u8, 104u8, 79u8, 25u8, 149u8, 57u8, 131u8,
111u8, 203u8, 140u8, 136u8, 111u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Map of block numbers to block hashes."]
pub async fn block_hash(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<primitive_types::H256> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 164u8, 71u8, 4u8, 181u8, 104u8, 210u8, 22u8, 103u8, 53u8, 106u8, 90u8, 5u8,
12u8, 17u8, 135u8, 70u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<primitive_types::H256>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Extrinsics data for the current block (maps an extrinsic's index to its data)."]
pub async fn extrinsic_data(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<Vec<u8>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 223u8, 29u8, 174u8, 184u8, 152u8, 104u8, 55u8, 242u8, 28u8, 197u8, 209u8,
117u8, 150u8, 187u8, 120u8, 209u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u8>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current block number being processed. Set by `execute_block`."]
pub async fn number(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 2u8, 165u8, 193u8, 177u8, 154u8, 183u8, 160u8, 79u8, 83u8, 108u8, 81u8,
154u8, 202u8, 73u8, 131u8, 172u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Hash of the previous block."]
pub async fn parent_hash(
&self,
) -> ::polymesh_api_client::error::Result<primitive_types::H256> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 138u8, 66u8, 243u8, 51u8, 35u8, 203u8, 92u8, 237u8, 59u8, 68u8, 221u8,
130u8, 95u8, 218u8, 159u8, 204u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<primitive_types::H256>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Digest of the current block, also part of the block header."]
pub async fn digest(
&self,
) -> ::polymesh_api_client::error::Result<sp_runtime::generic::digest::Digest> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 153u8, 231u8, 249u8, 63u8, 198u8, 169u8, 143u8, 8u8, 116u8, 253u8, 5u8,
127u8, 17u8, 28u8, 77u8, 45u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<sp_runtime::generic::digest::Digest>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Events deposited for the current block."]
#[doc = ""]
#[doc = " NOTE: The item is unbound and should therefore never be read on chain."]
#[doc = " It could otherwise inflate the PoV size of a block."]
#[doc = ""]
#[doc = " Events have a large in-memory size. Box the events to not go out-of-memory"]
#[doc = " just in case someone still reads them from within the runtime."]
pub async fn events(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<::polymesh_api_client::EventRecord<polymesh_runtime_develop::runtime::Event>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 128u8, 212u8, 30u8, 94u8, 22u8, 5u8, 103u8, 101u8, 188u8, 132u8, 97u8,
133u8, 16u8, 114u8, 201u8, 215u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<
::polymesh_api_client::EventRecord<
polymesh_runtime_develop::runtime::Event,
>,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " The number of events in the `Events<T>` list."]
pub async fn event_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 10u8, 152u8, 253u8, 190u8, 156u8, 230u8, 197u8, 88u8, 55u8, 87u8, 108u8,
96u8, 199u8, 175u8, 56u8, 80u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Mapping between a topic (represented by T::Hash) and a vector of indexes"]
#[doc = " of events in the `<Events<T>>` list."]
#[doc = ""]
#[doc = " All topic vectors have deterministic storage locations depending on the topic. This"]
#[doc = " allows light-clients to leverage the changes trie storage tracking mechanism and"]
#[doc = " in case of changes fetch the list of events of interest."]
#[doc = ""]
#[doc = " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just"]
#[doc = " the `EventIndex` then in case if the topic has the same contents on the next block"]
#[doc = " no notification will be triggered thus the event might be lost."]
pub async fn event_topics(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Vec<(u32, u32)>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 187u8, 148u8, 225u8, 194u8, 26u8, 218u8, 183u8, 20u8, 152u8, 60u8, 240u8,
102u8, 34u8, 225u8, 222u8, 118u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(u32, u32)>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened."]
pub async fn last_runtime_upgrade(
&self,
) -> ::polymesh_api_client::error::Result<Option<frame_system::LastRuntimeUpgradeInfo>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 249u8, 204u8, 233u8, 200u8, 136u8, 70u8, 155u8, 177u8, 160u8, 220u8, 234u8,
161u8, 41u8, 103u8, 46u8, 248u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " True if we have upgraded so that `type RefCount` is `u32`. False (default) if not."]
pub async fn upgraded_to_u32_ref_count(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 86u8, 132u8, 160u8, 34u8, 163u8, 77u8, 216u8, 191u8, 162u8, 186u8, 175u8,
68u8, 241u8, 114u8, 183u8, 16u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " True if we have upgraded so that AccountInfo contains three types of `RefCount`. False"]
#[doc = " (default) if not."]
pub async fn upgraded_to_triple_ref_count(
&self,
) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 167u8, 253u8, 108u8, 40u8, 131u8, 107u8, 154u8, 40u8, 82u8, 45u8, 201u8,
36u8, 17u8, 12u8, 244u8, 57u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The execution phase of the block."]
pub async fn execution_phase(
&self,
) -> ::polymesh_api_client::error::Result<Option<frame_system::Phase>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
38u8, 170u8, 57u8, 78u8, 234u8, 86u8, 48u8, 224u8, 124u8, 72u8, 174u8, 12u8, 149u8, 88u8,
206u8, 247u8, 255u8, 85u8, 59u8, 90u8, 152u8, 98u8, 165u8, 22u8, 147u8, 157u8, 130u8,
179u8, 211u8, 216u8, 102u8, 26u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod babe {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Report authority equivocation/misbehavior. This method will verify"]
#[doc = "the equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence will"]
#[doc = "be reported."]
pub fn report_equivocation(
&self,
equivocation_proof: sp_consensus_slots::EquivocationProof<
sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>,
sp_consensus_babe::app::Public,
>,
key_owner_proof: sp_session::MembershipProof,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Babe(
types::pallet_babe::pallet::Call::report_equivocation {
equivocation_proof: ::std::boxed::Box::new(equivocation_proof),
key_owner_proof,
},
))
}
#[doc = "Report authority equivocation/misbehavior. This method will verify"]
#[doc = "the equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence will"]
#[doc = "be reported."]
#[doc = "This extrinsic must be called unsigned and it is expected that only"]
#[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"]
#[doc = "if the block author is defined it will be defined as the equivocation"]
#[doc = "reporter."]
pub fn report_equivocation_unsigned(
&self,
equivocation_proof: sp_consensus_slots::EquivocationProof<
sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>,
sp_consensus_babe::app::Public,
>,
key_owner_proof: sp_session::MembershipProof,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Babe(
types::pallet_babe::pallet::Call::report_equivocation_unsigned {
equivocation_proof: ::std::boxed::Box::new(equivocation_proof),
key_owner_proof,
},
))
}
#[doc = "Plan an epoch config change. The epoch config change is recorded and will be enacted on"]
#[doc = "the next call to `enact_epoch_change`. The config will be activated one epoch after."]
#[doc = "Multiple calls to this method will replace any existing planned config change that had"]
#[doc = "not been enacted yet."]
pub fn plan_config_change(
&self,
config: sp_consensus_babe::digests::NextConfigDescriptor,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Babe(
types::pallet_babe::pallet::Call::plan_config_change { config },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Current epoch index."]
pub async fn epoch_index(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 56u8, 49u8, 108u8, 191u8, 143u8, 160u8, 218u8, 130u8, 42u8, 32u8,
172u8, 28u8, 85u8, 191u8, 27u8, 227u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Current epoch authorities."]
pub async fn authorities(
&self,
) -> ::polymesh_api_client::error::Result<Vec<(sp_consensus_babe::app::Public, u64)>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 94u8, 6u8, 33u8, 196u8, 134u8, 154u8, 166u8, 12u8, 2u8, 190u8, 154u8,
220u8, 201u8, 138u8, 13u8, 29u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(sp_consensus_babe::app::Public, u64)>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The slot at which the first epoch actually started. This is 0"]
#[doc = " until the first block of the chain."]
pub async fn genesis_slot(
&self,
) -> ::polymesh_api_client::error::Result<sp_consensus_slots::Slot> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 103u8, 135u8, 17u8, 209u8, 94u8, 187u8, 206u8, 186u8, 92u8, 208u8,
206u8, 161u8, 88u8, 230u8, 103u8, 90u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<sp_consensus_slots::Slot>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Current slot number."]
pub async fn current_slot(
&self,
) -> ::polymesh_api_client::error::Result<sp_consensus_slots::Slot> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 6u8, 21u8, 91u8, 60u8, 217u8, 168u8, 201u8, 229u8, 233u8, 162u8, 63u8,
213u8, 220u8, 19u8, 165u8, 237u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<sp_consensus_slots::Slot>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The epoch randomness for the *current* epoch."]
#[doc = ""]
#[doc = " # Security"]
#[doc = ""]
#[doc = " This MUST NOT be used for gambling, as it can be influenced by a"]
#[doc = " malicious validator in the short term. It MAY be used in many"]
#[doc = " cryptographic protocols, however, so long as one remembers that this"]
#[doc = " (like everything else on-chain) it is public. For example, it can be"]
#[doc = " used where a number is needed that cannot have been chosen by an"]
#[doc = " adversary, for purposes such as public-coin zero-knowledge proofs."]
pub async fn randomness(&self) -> ::polymesh_api_client::error::Result<[u8; 32usize]> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 122u8, 65u8, 76u8, 176u8, 8u8, 224u8, 230u8, 30u8, 70u8, 114u8, 42u8,
166u8, 10u8, 189u8, 214u8, 114u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<[u8; 32usize]>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Pending epoch configuration change that will be applied when the next epoch is enacted."]
pub async fn pending_epoch_config_change(
&self,
) -> ::polymesh_api_client::error::Result<
Option<sp_consensus_babe::digests::NextConfigDescriptor>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 139u8, 67u8, 40u8, 227u8, 67u8, 195u8, 224u8, 172u8, 144u8, 248u8,
61u8, 164u8, 134u8, 12u8, 190u8, 54u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Next epoch randomness."]
pub async fn next_randomness(&self) -> ::polymesh_api_client::error::Result<[u8; 32usize]> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 124u8, 230u8, 120u8, 121u8, 157u8, 62u8, 255u8, 2u8, 66u8, 83u8,
185u8, 14u8, 132u8, 146u8, 124u8, 198u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<[u8; 32usize]>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Next epoch authorities."]
pub async fn next_authorities(
&self,
) -> ::polymesh_api_client::error::Result<Vec<(sp_consensus_babe::app::Public, u64)>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 170u8, 207u8, 0u8, 185u8, 180u8, 31u8, 218u8, 122u8, 146u8, 104u8,
130u8, 28u8, 42u8, 43u8, 62u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(sp_consensus_babe::app::Public, u64)>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Randomness under construction."]
#[doc = ""]
#[doc = " We make a trade-off between storage accesses and list length."]
#[doc = " We store the under-construction randomness in segments of up to"]
#[doc = " `UNDER_CONSTRUCTION_SEGMENT_LENGTH`."]
#[doc = ""]
#[doc = " Once a segment reaches this length, we begin the next one."]
#[doc = " We reset all segments and return to `0` at the beginning of every"]
#[doc = " epoch."]
pub async fn segment_index(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 102u8, 232u8, 240u8, 53u8, 200u8, 173u8, 190u8, 127u8, 21u8, 71u8,
180u8, 60u8, 81u8, 230u8, 248u8, 164u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay."]
pub async fn under_construction(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<Vec<[u8; 32usize]>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 185u8, 9u8, 54u8, 89u8, 215u8, 168u8, 86u8, 128u8, 151u8, 87u8, 19u8,
77u8, 43u8, 200u8, 110u8, 98u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<[u8; 32usize]>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Temporary value (cleared at block finalization) which is `Some`"]
#[doc = " if per-block initialization has already been called for current block."]
pub async fn initialized(
&self,
) -> ::polymesh_api_client::error::Result<Option<Option<[u8; 32usize]>>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 250u8, 146u8, 222u8, 145u8, 10u8, 124u8, 226u8, 189u8, 88u8, 233u8,
151u8, 41u8, 198u8, 151u8, 39u8, 193u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " This field should always be populated during block processing unless"]
#[doc = " secondary plain slots are enabled (which don't contain a VRF output)."]
#[doc = ""]
#[doc = " It is set in `on_initialize`, before it will contain the value from the last block."]
pub async fn author_vrf_randomness(
&self,
) -> ::polymesh_api_client::error::Result<Option<[u8; 32usize]>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 208u8, 119u8, 223u8, 219u8, 138u8, 219u8, 16u8, 247u8, 143u8, 16u8,
165u8, 223u8, 135u8, 66u8, 197u8, 69u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Option<[u8; 32usize]>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The block numbers when the last and current epoch have started, respectively `N-1` and"]
#[doc = " `N`."]
#[doc = " NOTE: We track this is in order to annotate the block number when a given pool of"]
#[doc = " entropy was fixed (i.e. it was known to chain observers). Since epochs are defined in"]
#[doc = " slots, which may be skipped, the block numbers may not line up with the slot numbers."]
pub async fn epoch_start(&self) -> ::polymesh_api_client::error::Result<(u32, u32)> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 233u8, 14u8, 47u8, 191u8, 45u8, 121u8, 44u8, 179u8, 36u8, 191u8,
250u8, 148u8, 39u8, 254u8, 31u8, 14u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<(u32, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " How late the current block is compared to its parent."]
#[doc = ""]
#[doc = " This entry is populated as part of block execution and is cleaned up"]
#[doc = " on block finalization. Querying this storage entry outside of block"]
#[doc = " execution context should always yield zero."]
pub async fn lateness(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 3u8, 35u8, 71u8, 86u8, 87u8, 224u8, 137u8, 15u8, 189u8, 191u8, 102u8,
251u8, 36u8, 180u8, 100u8, 158u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The configuration for the current epoch. Should never be `None` as it is initialized in"]
#[doc = " genesis."]
pub async fn epoch_config(
&self,
) -> ::polymesh_api_client::error::Result<Option<sp_consensus_babe::BabeEpochConfiguration>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 220u8, 107u8, 23u8, 27u8, 119u8, 48u8, 66u8, 99u8, 194u8, 146u8,
204u8, 62u8, 165u8, 237u8, 49u8, 239u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The configuration for the next epoch, `None` if the config will not change"]
#[doc = " (you can fallback to `EpochConfig` instead in that case)."]
pub async fn next_epoch_config(
&self,
) -> ::polymesh_api_client::error::Result<Option<sp_consensus_babe::BabeEpochConfiguration>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
28u8, 182u8, 243u8, 110u8, 2u8, 122u8, 187u8, 32u8, 145u8, 207u8, 181u8, 17u8, 10u8,
181u8, 8u8, 127u8, 154u8, 171u8, 10u8, 91u8, 99u8, 179u8, 89u8, 81u8, 45u8, 238u8, 229u8,
87u8, 201u8, 244u8, 207u8, 99u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod timestamp {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Set the current time."]
#[doc = ""]
#[doc = "This call should be invoked exactly once per block. It will panic at the finalization"]
#[doc = "phase, if this call hasn't been invoked by that time."]
#[doc = ""]
#[doc = "The timestamp should be greater than the previous one by the amount specified by"]
#[doc = "`MinimumPeriod`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be `Inherent`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)"]
#[doc = "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in"]
#[doc = " `on_finalize`)"]
#[doc = "- 1 event handler `on_timestamp_set`. Must be `O(1)`."]
#[doc = "# </weight>"]
pub fn set(
&self,
now: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Timestamp(
types::pallet_timestamp::pallet::Call::set { now },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Current time for the current block."]
pub async fn now(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
240u8, 195u8, 101u8, 195u8, 207u8, 89u8, 214u8, 113u8, 235u8, 114u8, 218u8, 14u8, 122u8,
65u8, 19u8, 196u8, 159u8, 31u8, 5u8, 21u8, 244u8, 98u8, 205u8, 207u8, 132u8, 224u8,
241u8, 214u8, 4u8, 93u8, 252u8, 187u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Did the timestamp get updated in this block?"]
pub async fn did_update(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
240u8, 195u8, 101u8, 195u8, 207u8, 89u8, 214u8, 113u8, 235u8, 114u8, 218u8, 14u8, 122u8,
65u8, 19u8, 196u8, 187u8, 209u8, 8u8, 196u8, 137u8, 153u8, 100u8, 247u8, 7u8, 253u8,
175u8, 251u8, 130u8, 99u8, 96u8, 101u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod indices {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Assign an previously unassigned index."]
#[doc = ""]
#[doc = "Payment: `Deposit` is reserved from the sender account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "- `index`: the index to be claimed. This must not be in use."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
pub fn claim(
&self,
index: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Indices(
types::pallet_indices::pallet::Call::claim { index },
))
}
#[doc = "Assign an index already owned by the sender to another account. The balance reservation"]
#[doc = "is effectively transferred to the new account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "- `index`: the index to be re-assigned. This must be owned by the sender."]
#[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One transfer operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Indices Accounts, System Account (recipient)"]
#[doc = " - Writes: Indices Accounts, System Account (recipient)"]
#[doc = "# </weight>"]
pub fn transfer(
&self,
new: ::polymesh_api_client::sp_core::crypto::AccountId32,
index: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Indices(
types::pallet_indices::pallet::Call::transfer { new, index },
))
}
#[doc = "Free up an index owned by the sender."]
#[doc = ""]
#[doc = "Payment: Any previous deposit placed for the index is unreserved in the sender account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ and the sender must own the index."]
#[doc = ""]
#[doc = "- `index`: the index to be freed. This must be owned by the sender."]
#[doc = ""]
#[doc = "Emits `IndexFreed` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- One reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
pub fn free(
&self,
index: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Indices(
types::pallet_indices::pallet::Call::free { index },
))
}
#[doc = "Force an index to an account. This doesn't require a deposit. If the index is already"]
#[doc = "held, then any deposit is reimbursed to its current owner."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Root_."]
#[doc = ""]
#[doc = "- `index`: the index to be (re-)assigned."]
#[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."]
#[doc = "- `freeze`: if set to `true`, will freeze the index so it cannot be transferred."]
#[doc = ""]
#[doc = "Emits `IndexAssigned` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- Up to one reserve operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Indices Accounts, System Account (original owner)"]
#[doc = " - Writes: Indices Accounts, System Account (original owner)"]
#[doc = "# </weight>"]
pub fn force_transfer(
&self,
new: ::polymesh_api_client::sp_core::crypto::AccountId32,
index: u32,
freeze: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Indices(
types::pallet_indices::pallet::Call::force_transfer { new, index, freeze },
))
}
#[doc = "Freeze an index so it will always point to the sender account. This consumes the"]
#[doc = "deposit."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ and the signing account must have a"]
#[doc = "non-frozen account `index`."]
#[doc = ""]
#[doc = "- `index`: the index to be frozen in place."]
#[doc = ""]
#[doc = "Emits `IndexFrozen` if successful."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- `O(1)`."]
#[doc = "- One storage mutation (codec `O(1)`)."]
#[doc = "- Up to one slash operation."]
#[doc = "- One event."]
#[doc = "-------------------"]
#[doc = "- DB Weight: 1 Read/Write (Accounts)"]
#[doc = "# </weight>"]
pub fn freeze(
&self,
index: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Indices(
types::pallet_indices::pallet::Call::freeze { index },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The lookup from index to account."]
pub async fn accounts(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<
Option<(
::polymesh_api_client::sp_core::crypto::AccountId32,
u128,
bool,
)>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
26u8, 115u8, 109u8, 55u8, 80u8, 76u8, 46u8, 63u8, 183u8, 61u8, 173u8, 22u8, 12u8, 85u8,
178u8, 145u8, 142u8, 231u8, 65u8, 138u8, 101u8, 49u8, 23u8, 61u8, 96u8, 209u8, 246u8,
168u8, 45u8, 143u8, 77u8, 81u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod authorship {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Provide a set of uncles."]
pub fn set_uncles(
&self,
new_uncles: Vec<sp_runtime::generic::header::Header<u32, sp_runtime::traits::BlakeTwo256>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Authorship(
types::pallet_authorship::pallet::Call::set_uncles { new_uncles },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Uncles"]
pub async fn uncles(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<
pallet_authorship::UncleEntryItem<
u32,
primitive_types::H256,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
213u8, 123u8, 206u8, 84u8, 95u8, 179u8, 130u8, 195u8, 69u8, 112u8, 229u8, 223u8, 191u8,
51u8, 143u8, 94u8, 163u8, 97u8, 128u8, 181u8, 207u8, 185u8, 246u8, 84u8, 31u8, 136u8,
73u8, 223u8, 146u8, 166u8, 236u8, 147u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<
pallet_authorship::UncleEntryItem<
u32,
primitive_types::H256,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Author of current block."]
pub async fn author(
&self,
) -> ::polymesh_api_client::error::Result<
Option<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
213u8, 123u8, 206u8, 84u8, 95u8, 179u8, 130u8, 195u8, 69u8, 112u8, 229u8, 223u8, 191u8,
51u8, 143u8, 94u8, 50u8, 109u8, 33u8, 188u8, 103u8, 164u8, 179u8, 64u8, 35u8, 213u8,
119u8, 88u8, 93u8, 114u8, 191u8, 215u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Whether uncles were already set in this block."]
pub async fn did_set_uncles(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
213u8, 123u8, 206u8, 84u8, 95u8, 179u8, 130u8, 195u8, 69u8, 112u8, 229u8, 223u8, 191u8,
51u8, 143u8, 94u8, 189u8, 223u8, 132u8, 197u8, 235u8, 35u8, 230u8, 245u8, 58u8, 247u8,
37u8, 136u8, 13u8, 143u8, 254u8, 144u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod balances {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Transfer some liquid free balance to another account."]
#[doc = ""]
#[doc = "`transfer` will set the `FreeBalance` of the sender and receiver."]
#[doc = "It will decrease the total issuance of the system by the `TransferFee`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be `Signed` by the transactor."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Dependent on arguments but not critical, given proper implementations for"]
#[doc = " input config types. See related functions below."]
#[doc = "- It contains a limited number of reads and writes internally and no complex computation."]
#[doc = ""]
#[doc = "Related functions:"]
#[doc = ""]
#[doc = " - `ensure_can_withdraw` is always called internally but has a bounded complexity."]
#[doc = " - Transferring balances to accounts that did not exist before will cause"]
#[doc = " `T::OnNewAccount::on_new_account` to be called."]
#[doc = "---------------------------------"]
#[doc = "- Base Weight: 73.64 µs, worst case scenario (account created, account removed)"]
#[doc = "- DB Weight: 1 Read and 1 Write to destination account."]
#[doc = "- Origin account is already in memory, so no DB operations for them."]
#[doc = "# </weight>"]
pub fn transfer(
&self,
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::transfer { dest, value },
))
}
#[doc = "Transfer the native currency with the help of identifier string"]
#[doc = "this functionality can help to differentiate the transfers."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Base Weight: 73.64 µs, worst case scenario (account created, account removed)"]
#[doc = "- DB Weight: 1 Read and 1 Write to destination account."]
#[doc = "- Origin account is already in memory, so no DB operations for them."]
#[doc = "# </weight>"]
pub fn transfer_with_memo(
&self,
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
value: u128,
memo: Option<polymesh_common_utilities::traits::balances::Memo>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::transfer_with_memo { dest, value, memo },
))
}
#[doc = "Move some POLYX from balance of self to balance of BRR."]
pub fn deposit_block_reward_reserve_balance(
&self,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::deposit_block_reward_reserve_balance { value },
))
}
#[doc = "Set the balances of a given account."]
#[doc = ""]
#[doc = "This will alter `FreeBalance` and `ReservedBalance` in storage. it will"]
#[doc = "also decrease the total issuance of the system (`TotalIssuance`)."]
#[doc = ""]
#[doc = "The dispatch origin for this call is `root`."]
pub fn set_balance(
&self,
who: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
new_free: u128,
new_reserved: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::set_balance {
who,
new_free,
new_reserved,
},
))
}
#[doc = "Exactly as `transfer`, except the origin must be root and the source account may be"]
#[doc = "specified."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Same as transfer, but additional read and write because the source account is"]
#[doc = " not assumed to be in the overlay."]
#[doc = "# </weight>"]
pub fn force_transfer(
&self,
source: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::force_transfer {
source,
dest,
value,
},
))
}
#[doc = "Burns the given amount of tokens from the caller's free, unlocked balance."]
pub fn burn_account_balance(
&self,
amount: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Balances(
types::pallet_balances::Call::burn_account_balance { amount },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The total units issued in the system."]
pub async fn total_issuance(&self) -> ::polymesh_api_client::error::Result<u128> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
194u8, 38u8, 18u8, 118u8, 204u8, 157u8, 31u8, 133u8, 152u8, 234u8, 75u8, 106u8, 116u8,
177u8, 92u8, 47u8, 87u8, 200u8, 117u8, 228u8, 207u8, 247u8, 65u8, 72u8, 228u8, 98u8,
143u8, 38u8, 75u8, 151u8, 76u8, 128u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Any liquidity locks on some account balances."]
#[doc = " NOTE: Should only be accessed when setting, changing and freeing a lock."]
pub async fn locks(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Vec<pallet_balances::BalanceLock<u128>>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
194u8, 38u8, 18u8, 118u8, 204u8, 157u8, 31u8, 133u8, 152u8, 234u8, 75u8, 106u8, 116u8,
177u8, 92u8, 47u8, 33u8, 143u8, 38u8, 199u8, 58u8, 221u8, 99u8, 72u8, 151u8, 85u8, 11u8,
64u8, 3u8, 178u8, 107u8, 198u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_balances::BalanceLock<u128>>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod transaction_payment {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
pub async fn next_fee_multiplier(
&self,
) -> ::polymesh_api_client::error::Result<sp_arithmetic::fixed_point::FixedU128> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
63u8, 20u8, 103u8, 160u8, 150u8, 188u8, 215u8, 26u8, 91u8, 106u8, 12u8, 129u8, 85u8,
226u8, 8u8, 16u8, 63u8, 46u8, 223u8, 59u8, 223u8, 56u8, 29u8, 235u8, 227u8, 49u8, 171u8,
116u8, 70u8, 173u8, 223u8, 220u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 100u8, 167u8, 179u8, 182u8, 224u8, 13u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8,
];
<sp_arithmetic::fixed_point::FixedU128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_transaction_payment::Releases> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
63u8, 20u8, 103u8, 160u8, 150u8, 188u8, 215u8, 26u8, 91u8, 106u8, 12u8, 129u8, 85u8,
226u8, 8u8, 16u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_transaction_payment::Releases>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod identity {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Register `target_account` with a new Identity."]
#[doc = ""]
#[doc = "# Failure"]
#[doc = "- `origin` has to be a active CDD provider. Inactive CDD providers cannot add new"]
#[doc = "claims."]
#[doc = "- `target_account` (primary key of the new Identity) can be linked to just one and only"]
#[doc = "one identity."]
#[doc = "- External secondary keys can be linked to just one identity."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`7_000_000_000 + 600_000 * secondary_keys.len()`"]
pub fn cdd_register_did(
&self,
target_account: ::polymesh_api_client::sp_core::crypto::AccountId32,
secondary_keys: Vec<
polymesh_primitives::secondary_key::SecondaryKey<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::cdd_register_did {
target_account,
secondary_keys,
},
))
}
#[doc = "Invalidates any claim generated by `cdd` from `disable_from` timestamps."]
#[doc = ""]
#[doc = "You can also define an expiration time,"]
#[doc = "which will invalidate all claims generated by that `cdd` and remove it as CDD member group."]
pub fn invalidate_cdd_claims(
&self,
cdd: polymesh_primitives::identity_id::IdentityId,
disable_from: u64,
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::invalidate_cdd_claims {
cdd,
disable_from,
expiry,
},
))
}
#[doc = "Deprecated. Use `remove_secondary_keys` instead."]
pub fn remove_secondary_keys_old(
&self,
keys_to_remove: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::remove_secondary_keys_old { keys_to_remove },
))
}
#[doc = "Call this with the new primary key. By invoking this method, caller accepts authorization"]
#[doc = "to become the new primary key of the issuing identity. If a CDD service provider approved"]
#[doc = "this change (or this is not required), primary key of the DID is updated."]
#[doc = ""]
#[doc = "The caller (new primary key) must be either a secondary key of the issuing identity, or"]
#[doc = "unlinked to any identity."]
#[doc = ""]
#[doc = "Differs from rotate_primary_key_to_secondary in that it will unlink the old primary key"]
#[doc = "instead of leaving it as a secondary key."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `owner_auth_id` Authorization from the owner who initiated the change"]
#[doc = "* `cdd_auth_id` Authorization from a CDD service provider"]
pub fn accept_primary_key(
&self,
rotation_auth_id: u64,
optional_cdd_auth_id: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::accept_primary_key {
rotation_auth_id,
optional_cdd_auth_id,
},
))
}
#[doc = "Set if CDD authorization is required for updating primary key of an identity."]
#[doc = "Callable via root (governance)"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_required` CDD Authorization required or not"]
pub fn change_cdd_requirement_for_mk_rotation(
&self,
auth_required: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::change_cdd_requirement_for_mk_rotation { auth_required },
))
}
#[doc = "Join an identity as a secondary key."]
pub fn join_identity_as_key(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::join_identity_as_key { auth_id },
))
}
#[doc = "Leave the secondary key's identity."]
pub fn leave_identity_as_key(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::leave_identity_as_key,
))
}
#[doc = "Adds a new claim record or edits an existing one."]
#[doc = ""]
#[doc = "Only called by did_issuer's secondary key."]
pub fn add_claim(
&self,
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_claim {
target,
claim,
expiry,
},
))
}
#[doc = "Marks the specified claim as revoked."]
pub fn revoke_claim(
&self,
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::revoke_claim { target, claim },
))
}
#[doc = "Deprecated. Use `set_secondary_key_permissions` instead."]
pub fn set_permission_to_signer(
&self,
key: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
perms: polymesh_primitives::secondary_key::Permissions,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::set_permission_to_signer { key, perms },
))
}
#[doc = "Placeholder for removed `legacy_set_permission_to_signer`."]
pub fn placeholder_legacy_set_permission_to_signer(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::placeholder_legacy_set_permission_to_signer,
))
}
#[doc = "It disables all secondary keys at `did` identity."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = ""]
pub fn freeze_secondary_keys(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::freeze_secondary_keys,
))
}
#[doc = "Re-enables all secondary keys of the caller's identity."]
pub fn unfreeze_secondary_keys(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::unfreeze_secondary_keys,
))
}
#[doc = "Adds an authorization."]
pub fn add_authorization(
&self,
target: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
data: polymesh_primitives::authorization::AuthorizationData<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_authorization {
target,
data,
expiry,
},
))
}
#[doc = "Removes an authorization."]
#[doc = "_auth_issuer_pays determines whether the issuer of the authorisation pays the transaction fee"]
pub fn remove_authorization(
&self,
target: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
auth_id: u64,
_auth_issuer_pays: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::remove_authorization {
target,
auth_id,
_auth_issuer_pays,
},
))
}
#[doc = "Deprecated. Use `add_secondary_keys_with_authorization` instead."]
pub fn add_secondary_keys_with_authorization_old(
&self,
additional_keys: Vec<
polymesh_common_utilities::traits::identity::SecondaryKeyWithAuthV1<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
expires_at: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_secondary_keys_with_authorization_old {
additional_keys,
expires_at,
},
))
}
#[doc = "Add `Claim::InvestorUniqueness` claim for a given target identity."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = " Weight of the this extrinsic is depend on the computation that used to validate"]
#[doc = " the proof of claim, which will be a constant independent of user inputs."]
#[doc = "# </weight>"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Who provides the claim to the user? In this case, it's the user's account id as the user provides."]
#[doc = "* target - `IdentityId` to which the claim gets assigned."]
#[doc = "* claim - `InvestorUniqueness` claim details."]
#[doc = "* proof - To validate the self attestation."]
#[doc = "* expiry - Expiry of claim."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `DidMustAlreadyExist` Target should already been a part of the ecosystem."]
#[doc = "* `ClaimVariantNotAllowed` When origin trying to pass claim variant other than `InvestorUniqueness`."]
#[doc = "* `ConfidentialScopeClaimNotAllowed` When issuer is different from target or CDD_ID is invalid for given user."]
#[doc = "* `InvalidScopeClaim When proof is invalid."]
#[doc = "* `InvalidCDDId` when you are not the owner of that CDD_ID."]
pub fn add_investor_uniqueness_claim(
&self,
target: polymesh_primitives::identity_id::IdentityId,
claim: polymesh_primitives::identity_claim::Claim,
proof: [u8; 64usize],
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_investor_uniqueness_claim {
target,
claim,
proof,
expiry,
},
))
}
#[doc = "Assuming this is executed by the GC voting majority, adds a new cdd claim record."]
pub fn gc_add_cdd_claim(
&self,
target: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::gc_add_cdd_claim { target },
))
}
#[doc = "Assuming this is executed by the GC voting majority, removes an existing cdd claim record."]
pub fn gc_revoke_cdd_claim(
&self,
target: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::gc_revoke_cdd_claim { target },
))
}
pub fn add_investor_uniqueness_claim_v2(
&self,
target: polymesh_primitives::identity_id::IdentityId,
scope: polymesh_primitives::identity_claim::Scope,
claim: polymesh_primitives::identity_claim::Claim,
proof: confidential_identity_v2::claim_proofs::ScopeClaimProof,
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_investor_uniqueness_claim_v2 {
target,
scope,
claim,
proof,
expiry,
},
))
}
#[doc = "Revokes a specific claim using its [Claim Unique Index](/pallet_identity/index.html#claim-unique-index) composed by `target`,"]
#[doc = "`claim_type`, and `scope`."]
#[doc = ""]
#[doc = "Please note that `origin` must be the issuer of the target claim."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `TargetHasNonZeroBalanceAtScopeId` when you try to revoke a `InvestorUniqueness*`"]
#[doc = "claim, and `target` identity still have any balance on the given `scope`."]
pub fn revoke_claim_by_index(
&self,
target: polymesh_primitives::identity_id::IdentityId,
claim_type: polymesh_primitives::identity_claim::ClaimType,
scope: Option<polymesh_primitives::identity_claim::Scope>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::revoke_claim_by_index {
target,
claim_type,
scope,
},
))
}
#[doc = "Call this with the new primary key. By invoking this method, caller accepts authorization"]
#[doc = "to become the new primary key of the issuing identity. If a CDD service provider approved"]
#[doc = "this change, (or this is not required), primary key of the DID is updated."]
#[doc = ""]
#[doc = "The caller (new primary key) must be either a secondary key of the issuing identity, or"]
#[doc = "unlinked to any identity."]
#[doc = ""]
#[doc = "Differs from accept_primary_key in that it will leave the old primary key as a secondary"]
#[doc = "key with the permissions specified in the corresponding RotatePrimaryKeyToSecondary authorization"]
#[doc = "instead of unlinking the old primary key."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `owner_auth_id` Authorization from the owner who initiated the change"]
#[doc = "* `cdd_auth_id` Authorization from a CDD service provider"]
pub fn rotate_primary_key_to_secondary(
&self,
auth_id: u64,
optional_cdd_auth_id: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::rotate_primary_key_to_secondary {
auth_id,
optional_cdd_auth_id,
},
))
}
#[doc = "Adds secondary keys to target identity `id`."]
#[doc = ""]
#[doc = "Keys are directly added to identity because each of them has an authorization."]
#[doc = ""]
#[doc = "# Arguments:"]
#[doc = " - `origin` which must be the primary key of the identity `id`."]
#[doc = " - `id` to which new secondary keys will be added."]
#[doc = " - `additional_keys` which includes secondary keys,"]
#[doc = " coupled with authorization data, to add to target identity."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = " - Can only called by primary key owner."]
#[doc = " - Keys should be able to linked to any identity."]
pub fn add_secondary_keys_with_authorization(
&self,
additional_keys: Vec<
polymesh_common_utilities::traits::identity::SecondaryKeyWithAuth<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
expires_at: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::add_secondary_keys_with_authorization {
additional_keys,
expires_at,
},
))
}
#[doc = "Sets permissions for an specific `target_key` key."]
#[doc = ""]
#[doc = "Only the primary key of an identity is able to set secondary key permissions."]
pub fn set_secondary_key_permissions(
&self,
key: ::polymesh_api_client::sp_core::crypto::AccountId32,
perms: polymesh_primitives::secondary_key::Permissions,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::set_secondary_key_permissions { key, perms },
))
}
#[doc = "Removes specified secondary keys of a DID if present."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = ""]
#[doc = "The extrinsic can only called by primary key owner."]
pub fn remove_secondary_keys(
&self,
keys_to_remove: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Identity(
types::pallet_identity::Call::remove_secondary_keys { keys_to_remove },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " DID -> identity info"]
pub async fn did_records(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<
Option<
polymesh_primitives::identity::DidRecord<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 116u8, 80u8, 50u8, 71u8, 155u8, 166u8, 193u8, 20u8, 243u8, 13u8, 15u8,
187u8, 81u8, 210u8, 17u8, 101u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " DID -> bool that indicates if secondary keys are frozen."]
pub async fn is_did_frozen(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 88u8, 25u8, 37u8, 70u8, 145u8, 206u8, 174u8, 76u8, 55u8, 194u8, 155u8,
126u8, 165u8, 90u8, 158u8, 251u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " It stores the current identity for current transaction."]
pub async fn current_did(
&self,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 88u8, 175u8, 95u8, 211u8, 111u8, 160u8, 107u8, 83u8, 194u8, 191u8,
249u8, 86u8, 91u8, 169u8, 181u8, 252u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " It stores the current gas fee payer for the current transaction"]
pub async fn current_payer(
&self,
) -> ::polymesh_api_client::error::Result<
Option<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 223u8, 12u8, 177u8, 135u8, 158u8, 14u8, 195u8, 122u8, 19u8, 92u8,
166u8, 91u8, 51u8, 74u8, 253u8, 115u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " (Target ID, claim type) (issuer,scope) -> Associated claims"]
pub async fn claims(
&self,
key_0: pallet_identity::types::Claim1stKey,
key_1: pallet_identity::types::Claim2ndKey,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_claim::IdentityClaim>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 156u8, 93u8, 121u8, 93u8, 2u8, 151u8, 190u8, 86u8, 2u8, 122u8, 75u8,
36u8, 100u8, 227u8, 51u8, 151u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 10u8,
];
<polymesh_primitives::identity_claim::IdentityClaim>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Map from AccountId to `KeyRecord` that holds the key's identity and permissions."]
pub async fn key_records(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<
polymesh_primitives::secondary_key::KeyRecord<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 140u8, 4u8, 71u8, 134u8, 27u8, 11u8, 130u8, 15u8, 11u8, 176u8, 222u8,
164u8, 7u8, 164u8, 75u8, 52u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A reverse double map to allow finding all keys for an identity."]
pub async fn did_keys(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 48u8, 201u8, 137u8, 112u8, 80u8, 239u8, 164u8, 12u8, 73u8, 173u8,
249u8, 240u8, 185u8, 87u8, 20u8, 244u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Nonce to ensure unique actions. starts from 1."]
pub async fn multi_purpose_nonce(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 136u8, 63u8, 194u8, 107u8, 192u8, 198u8, 19u8, 83u8, 149u8, 2u8, 100u8,
173u8, 112u8, 208u8, 112u8, 17u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Authorization nonce per Identity. Initially is 0."]
pub async fn off_chain_authorization_nonce(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 180u8, 43u8, 244u8, 108u8, 4u8, 166u8, 74u8, 143u8, 8u8, 226u8, 206u8,
196u8, 229u8, 245u8, 62u8, 152u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All authorizations that an identity/key has"]
pub async fn authorizations(
&self,
key_0: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
key_1: u64,
) -> ::polymesh_api_client::error::Result<
Option<
polymesh_primitives::authorization::Authorization<
::polymesh_api_client::sp_core::crypto::AccountId32,
u64,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 104u8, 58u8, 80u8, 244u8, 170u8, 112u8, 186u8, 34u8, 193u8, 127u8,
221u8, 184u8, 141u8, 38u8, 73u8, 43u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " All authorizations that an identity has given. (Authorizer, auth_id -> authorized)"]
pub async fn authorizations_given(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: u64,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 31u8, 154u8, 92u8, 218u8, 166u8, 154u8, 225u8, 139u8, 48u8, 60u8,
199u8, 128u8, 85u8, 224u8, 137u8, 110u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Obsoleted storage variable superceded by `CddAuthForPrimaryKeyRotation`. It is kept here"]
#[doc = " for the purpose of storage migration."]
pub async fn cdd_auth_for_master_key_rotation(
&self,
) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 156u8, 184u8, 109u8, 207u8, 119u8, 173u8, 127u8, 235u8, 153u8, 47u8,
59u8, 11u8, 176u8, 190u8, 39u8, 18u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " A config flag that, if set, instructs an authorization from a CDD provider in order to"]
#[doc = " change the primary key of an identity."]
pub async fn cdd_auth_for_primary_key_rotation(
&self,
) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 114u8, 149u8, 136u8, 2u8, 121u8, 4u8, 72u8, 56u8, 19u8, 118u8, 139u8,
92u8, 202u8, 32u8, 42u8, 41u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_identity::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_identity::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " How many \"strong\" references to the account key."]
#[doc = ""]
#[doc = " Strong references will block a key from leaving it's identity."]
#[doc = ""]
#[doc = " Pallets using \"strong\" references to account keys:"]
#[doc = " * Relayer: For `user_key` and `paying_key`"]
#[doc = ""]
pub async fn account_key_ref_count(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
42u8, 237u8, 220u8, 119u8, 254u8, 88u8, 201u8, 141u8, 80u8, 189u8, 55u8, 241u8, 185u8,
8u8, 64u8, 249u8, 231u8, 18u8, 4u8, 202u8, 201u8, 201u8, 123u8, 37u8, 198u8, 89u8, 13u8,
191u8, 196u8, 34u8, 200u8, 154u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod cdd_service_providers {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change this group's limit for how many concurrent active members they may be."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` - the number of active members there may be concurrently."]
pub fn set_active_members_limit(
&self,
limit: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::set_active_members_limit { limit },
),
)
}
#[doc = "Disables a member at specific moment."]
#[doc = ""]
#[doc = "Please note that if member is already revoked (a \"valid member\"), its revocation"]
#[doc = "time-stamp will be updated."]
#[doc = ""]
#[doc = "Any disabled member should NOT allow to act like an active member of the group. For"]
#[doc = "instance, a disabled CDD member should NOT be able to generate a CDD claim. However any"]
#[doc = "generated claim issued before `at` would be considered as a valid one."]
#[doc = ""]
#[doc = "If you want to invalidate any generated claim, you should use `Self::remove_member`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `at` - Revocation time-stamp."]
#[doc = "* `who` - Target member of the group."]
#[doc = "* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, the"]
#[doc = "generated claims will be \"invalid\" as `who` is not considered a member of the group."]
pub fn disable_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::disable_member { who, expiry, at },
),
)
}
#[doc = "Adds a member `who` to the group. May only be called from `AddOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `AddOrigin` or root"]
#[doc = "* `who` - IdentityId to be added to the group."]
pub fn add_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::add_member { who },
),
)
}
#[doc = "Removes a member `who` from the set. May only be called from `RemoveOrigin` or root."]
#[doc = ""]
#[doc = "Any claim previously generated by this member is not valid as a group claim. For"]
#[doc = "instance, if a CDD member group generated a claim for a target identity and then it is"]
#[doc = "removed, that claim will be invalid. In case you want to keep the validity of generated"]
#[doc = "claims, you have to use `Self::disable_member` function"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `RemoveOrigin` or root"]
#[doc = "* `who` - IdentityId to be removed from the group."]
pub fn remove_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::remove_member { who },
),
)
}
#[doc = "Swaps out one member `remove` for another member `add`."]
#[doc = ""]
#[doc = "May only be called from `SwapOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `SwapOrigin` or root"]
#[doc = "* `remove` - IdentityId to be removed from the group."]
#[doc = "* `add` - IdentityId to be added in place of `remove`."]
pub fn swap_member(
&self,
remove: polymesh_primitives::identity_id::IdentityId,
add: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::swap_member { remove, add },
),
)
}
#[doc = "Changes the membership to a new set, disregarding the existing membership."]
#[doc = "May only be called from `ResetOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `ResetOrigin` or root"]
#[doc = "* `members` - New set of identities"]
pub fn reset_members(
&self,
members: Vec<polymesh_primitives::identity_id::IdentityId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::reset_members { members },
),
)
}
#[doc = "Allows the calling member to *unilaterally quit* without this being subject to a GC"]
#[doc = "vote."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Member of committee who wants to quit."]
#[doc = ""]
#[doc = "# Error"]
#[doc = ""]
#[doc = "* Only primary key can abdicate."]
#[doc = "* Last member of a group cannot abdicate."]
pub fn abdicate_membership(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CddServiceProviders(
types::pallet_group::Call::abdicate_membership,
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The current \"active\" membership, stored as an ordered Vec."]
pub async fn active_members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
78u8, 20u8, 113u8, 165u8, 155u8, 49u8, 65u8, 197u8, 28u8, 64u8, 231u8, 183u8, 195u8,
158u8, 46u8, 25u8, 118u8, 191u8, 62u8, 207u8, 240u8, 38u8, 151u8, 14u8, 138u8, 14u8,
159u8, 240u8, 162u8, 26u8, 38u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current \"inactive\" membership, stored as an ordered Vec."]
pub async fn inactive_members(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
78u8, 20u8, 113u8, 165u8, 155u8, 49u8, 65u8, 197u8, 28u8, 64u8, 231u8, 183u8, 195u8,
158u8, 46u8, 25u8, 192u8, 158u8, 95u8, 137u8, 89u8, 57u8, 167u8, 102u8, 81u8, 34u8,
107u8, 3u8, 94u8, 145u8, 7u8, 20u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Limit of how many \"active\" members there can be."]
pub async fn active_members_limit(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
78u8, 20u8, 113u8, 165u8, 155u8, 49u8, 65u8, 197u8, 28u8, 64u8, 231u8, 183u8, 195u8,
158u8, 46u8, 25u8, 101u8, 218u8, 136u8, 19u8, 44u8, 164u8, 10u8, 73u8, 97u8, 92u8, 160u8,
7u8, 124u8, 249u8, 110u8, 183u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod polymesh_committee {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change the vote threshold the determines the winning proposal."]
#[doc = "For e.g., for a simple majority use (1, 2) which represents the in-equation \">= 1/2\"."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `n` - Numerator of the fraction representing vote threshold."]
#[doc = "* `d` - Denominator of the fraction representing vote threshold."]
pub fn set_vote_threshold(
&self,
n: u32,
d: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshCommittee(
types::pallet_committee::Call::set_vote_threshold { n, d },
),
)
}
#[doc = "Changes the release coordinator."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - The DID of the new release coordinator."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, If the new coordinator `id` is not part of the committee."]
pub fn set_release_coordinator(
&self,
id: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshCommittee(
types::pallet_committee::Call::set_release_coordinator { id },
),
)
}
#[doc = "Changes the time after which a proposal expires."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` - The new expiry time."]
pub fn set_expires_after(
&self,
expiry: polymesh_common_utilities::MaybeBlock<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshCommittee(
types::pallet_committee::Call::set_expires_after { expiry },
),
)
}
#[doc = "Proposes to the committee that `call` should be executed in its name."]
#[doc = "Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,"]
#[doc = "then this call counts as a vote, i.e., as if `vote_by_hash` was called."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = ""]
#[doc = "The weight of this dispatchable is that of `call` as well as the complexity"]
#[doc = "for recording the vote itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `approve` - is this an approving vote?"]
#[doc = " If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`."]
#[doc = "* `call` - the call to propose for execution."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`."]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote_or_propose(
&self,
approve: bool,
call: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshCommittee(
types::pallet_committee::Call::vote_or_propose {
approve,
call: ::std::boxed::Box::new(call),
},
),
)
}
#[doc = "Votes `approve`ingly (or not, if `false`)"]
#[doc = "on an existing `proposal` given by its hash, `index`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposal` - A hash of the proposal to be voted on."]
#[doc = "* `index` - The proposal index."]
#[doc = "* `approve` - If `true` than this is a `for` vote, and `against` otherwise."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote(
&self,
proposal: primitive_types::H256,
index: u32,
approve: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshCommittee(
types::pallet_committee::Call::vote {
proposal,
index,
approve,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The hashes of the active proposals."]
pub async fn proposals(
&self,
) -> ::polymesh_api_client::error::Result<Vec<primitive_types::H256>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 136u8, 194u8, 247u8, 24u8, 140u8, 111u8, 221u8, 29u8, 255u8, 174u8,
47u8, 160u8, 209u8, 113u8, 244u8, 64u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<primitive_types::H256>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Actual proposal for a given hash."]
pub async fn proposal_of(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<polymesh_runtime_develop::runtime::Call>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 233u8, 214u8, 219u8, 136u8, 104u8, 163u8, 125u8, 121u8, 147u8, 11u8,
195u8, 247u8, 243u8, 57u8, 80u8, 209u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " PolymeshVotes on a given proposal, if it is ongoing."]
pub async fn voting(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<pallet_committee::PolymeshVotes<u32>>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 113u8, 205u8, 48u8, 104u8, 230u8, 17u8, 139u8, 251u8, 57u8, 43u8,
121u8, 131u8, 23u8, 246u8, 58u8, 137u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Proposals so far."]
pub async fn proposal_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 98u8, 84u8, 233u8, 213u8, 85u8, 136u8, 120u8, 79u8, 162u8, 166u8,
43u8, 114u8, 102u8, 150u8, 226u8, 177u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current members of the committee."]
pub async fn members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 186u8, 127u8, 184u8, 116u8, 87u8, 53u8, 220u8, 59u8, 226u8, 162u8,
198u8, 26u8, 114u8, 195u8, 158u8, 120u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Vote threshold for an approval."]
pub async fn vote_threshold(&self) -> ::polymesh_api_client::error::Result<(u32, u32)> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 156u8, 139u8, 199u8, 108u8, 52u8, 115u8, 136u8, 113u8, 204u8, 101u8,
23u8, 132u8, 125u8, 93u8, 3u8, 193u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<(u32, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Release coordinator."]
pub async fn release_coordinator(
&self,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 165u8, 39u8, 240u8, 96u8, 78u8, 203u8, 185u8, 53u8, 153u8, 133u8,
116u8, 59u8, 46u8, 180u8, 116u8, 144u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Time after which a proposal will expire."]
pub async fn expires_after(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_common_utilities::MaybeBlock<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 133u8, 201u8, 79u8, 204u8, 159u8, 70u8, 222u8, 61u8, 113u8, 75u8,
210u8, 244u8, 47u8, 119u8, 123u8, 176u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8];
<polymesh_common_utilities::MaybeBlock<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_committee::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
112u8, 60u8, 205u8, 82u8, 123u8, 235u8, 235u8, 221u8, 74u8, 251u8, 195u8, 174u8, 128u8,
103u8, 49u8, 221u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_committee::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod committee_membership {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change this group's limit for how many concurrent active members they may be."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` - the number of active members there may be concurrently."]
pub fn set_active_members_limit(
&self,
limit: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::set_active_members_limit { limit },
),
)
}
#[doc = "Disables a member at specific moment."]
#[doc = ""]
#[doc = "Please note that if member is already revoked (a \"valid member\"), its revocation"]
#[doc = "time-stamp will be updated."]
#[doc = ""]
#[doc = "Any disabled member should NOT allow to act like an active member of the group. For"]
#[doc = "instance, a disabled CDD member should NOT be able to generate a CDD claim. However any"]
#[doc = "generated claim issued before `at` would be considered as a valid one."]
#[doc = ""]
#[doc = "If you want to invalidate any generated claim, you should use `Self::remove_member`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `at` - Revocation time-stamp."]
#[doc = "* `who` - Target member of the group."]
#[doc = "* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, the"]
#[doc = "generated claims will be \"invalid\" as `who` is not considered a member of the group."]
pub fn disable_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::disable_member { who, expiry, at },
),
)
}
#[doc = "Adds a member `who` to the group. May only be called from `AddOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `AddOrigin` or root"]
#[doc = "* `who` - IdentityId to be added to the group."]
pub fn add_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::add_member { who },
),
)
}
#[doc = "Removes a member `who` from the set. May only be called from `RemoveOrigin` or root."]
#[doc = ""]
#[doc = "Any claim previously generated by this member is not valid as a group claim. For"]
#[doc = "instance, if a CDD member group generated a claim for a target identity and then it is"]
#[doc = "removed, that claim will be invalid. In case you want to keep the validity of generated"]
#[doc = "claims, you have to use `Self::disable_member` function"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `RemoveOrigin` or root"]
#[doc = "* `who` - IdentityId to be removed from the group."]
pub fn remove_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::remove_member { who },
),
)
}
#[doc = "Swaps out one member `remove` for another member `add`."]
#[doc = ""]
#[doc = "May only be called from `SwapOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `SwapOrigin` or root"]
#[doc = "* `remove` - IdentityId to be removed from the group."]
#[doc = "* `add` - IdentityId to be added in place of `remove`."]
pub fn swap_member(
&self,
remove: polymesh_primitives::identity_id::IdentityId,
add: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::swap_member { remove, add },
),
)
}
#[doc = "Changes the membership to a new set, disregarding the existing membership."]
#[doc = "May only be called from `ResetOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `ResetOrigin` or root"]
#[doc = "* `members` - New set of identities"]
pub fn reset_members(
&self,
members: Vec<polymesh_primitives::identity_id::IdentityId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::reset_members { members },
),
)
}
#[doc = "Allows the calling member to *unilaterally quit* without this being subject to a GC"]
#[doc = "vote."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Member of committee who wants to quit."]
#[doc = ""]
#[doc = "# Error"]
#[doc = ""]
#[doc = "* Only primary key can abdicate."]
#[doc = "* Last member of a group cannot abdicate."]
pub fn abdicate_membership(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CommitteeMembership(
types::pallet_group::Call::abdicate_membership,
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The current \"active\" membership, stored as an ordered Vec."]
pub async fn active_members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
2u8, 22u8, 215u8, 223u8, 142u8, 27u8, 196u8, 187u8, 21u8, 159u8, 246u8, 26u8, 186u8,
19u8, 204u8, 99u8, 118u8, 191u8, 62u8, 207u8, 240u8, 38u8, 151u8, 14u8, 138u8, 14u8,
159u8, 240u8, 162u8, 26u8, 38u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current \"inactive\" membership, stored as an ordered Vec."]
pub async fn inactive_members(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
2u8, 22u8, 215u8, 223u8, 142u8, 27u8, 196u8, 187u8, 21u8, 159u8, 246u8, 26u8, 186u8,
19u8, 204u8, 99u8, 192u8, 158u8, 95u8, 137u8, 89u8, 57u8, 167u8, 102u8, 81u8, 34u8,
107u8, 3u8, 94u8, 145u8, 7u8, 20u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Limit of how many \"active\" members there can be."]
pub async fn active_members_limit(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
2u8, 22u8, 215u8, 223u8, 142u8, 27u8, 196u8, 187u8, 21u8, 159u8, 246u8, 26u8, 186u8,
19u8, 204u8, 99u8, 101u8, 218u8, 136u8, 19u8, 44u8, 164u8, 10u8, 73u8, 97u8, 92u8, 160u8,
7u8, 124u8, 249u8, 110u8, 183u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod technical_committee {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change the vote threshold the determines the winning proposal."]
#[doc = "For e.g., for a simple majority use (1, 2) which represents the in-equation \">= 1/2\"."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `n` - Numerator of the fraction representing vote threshold."]
#[doc = "* `d` - Denominator of the fraction representing vote threshold."]
pub fn set_vote_threshold(
&self,
n: u32,
d: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommittee(
types::pallet_committee::Call::set_vote_threshold { n, d },
),
)
}
#[doc = "Changes the release coordinator."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - The DID of the new release coordinator."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, If the new coordinator `id` is not part of the committee."]
pub fn set_release_coordinator(
&self,
id: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommittee(
types::pallet_committee::Call::set_release_coordinator { id },
),
)
}
#[doc = "Changes the time after which a proposal expires."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` - The new expiry time."]
pub fn set_expires_after(
&self,
expiry: polymesh_common_utilities::MaybeBlock<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommittee(
types::pallet_committee::Call::set_expires_after { expiry },
),
)
}
#[doc = "Proposes to the committee that `call` should be executed in its name."]
#[doc = "Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,"]
#[doc = "then this call counts as a vote, i.e., as if `vote_by_hash` was called."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = ""]
#[doc = "The weight of this dispatchable is that of `call` as well as the complexity"]
#[doc = "for recording the vote itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `approve` - is this an approving vote?"]
#[doc = " If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`."]
#[doc = "* `call` - the call to propose for execution."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`."]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote_or_propose(
&self,
approve: bool,
call: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommittee(
types::pallet_committee::Call::vote_or_propose {
approve,
call: ::std::boxed::Box::new(call),
},
),
)
}
#[doc = "Votes `approve`ingly (or not, if `false`)"]
#[doc = "on an existing `proposal` given by its hash, `index`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposal` - A hash of the proposal to be voted on."]
#[doc = "* `index` - The proposal index."]
#[doc = "* `approve` - If `true` than this is a `for` vote, and `against` otherwise."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote(
&self,
proposal: primitive_types::H256,
index: u32,
approve: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommittee(
types::pallet_committee::Call::vote {
proposal,
index,
approve,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The hashes of the active proposals."]
pub async fn proposals(
&self,
) -> ::polymesh_api_client::error::Result<Vec<primitive_types::H256>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 136u8, 194u8, 247u8, 24u8, 140u8, 111u8, 221u8, 29u8, 255u8, 174u8,
47u8, 160u8, 209u8, 113u8, 244u8, 64u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<primitive_types::H256>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Actual proposal for a given hash."]
pub async fn proposal_of(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<polymesh_runtime_develop::runtime::Call>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 233u8, 214u8, 219u8, 136u8, 104u8, 163u8, 125u8, 121u8, 147u8, 11u8,
195u8, 247u8, 243u8, 57u8, 80u8, 209u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " PolymeshVotes on a given proposal, if it is ongoing."]
pub async fn voting(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<pallet_committee::PolymeshVotes<u32>>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 113u8, 205u8, 48u8, 104u8, 230u8, 17u8, 139u8, 251u8, 57u8, 43u8,
121u8, 131u8, 23u8, 246u8, 58u8, 137u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Proposals so far."]
pub async fn proposal_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 98u8, 84u8, 233u8, 213u8, 85u8, 136u8, 120u8, 79u8, 162u8, 166u8,
43u8, 114u8, 102u8, 150u8, 226u8, 177u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current members of the committee."]
pub async fn members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 186u8, 127u8, 184u8, 116u8, 87u8, 53u8, 220u8, 59u8, 226u8, 162u8,
198u8, 26u8, 114u8, 195u8, 158u8, 120u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Vote threshold for an approval."]
pub async fn vote_threshold(&self) -> ::polymesh_api_client::error::Result<(u32, u32)> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 156u8, 139u8, 199u8, 108u8, 52u8, 115u8, 136u8, 113u8, 204u8, 101u8,
23u8, 132u8, 125u8, 93u8, 3u8, 193u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<(u32, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Release coordinator."]
pub async fn release_coordinator(
&self,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 165u8, 39u8, 240u8, 96u8, 78u8, 203u8, 185u8, 53u8, 153u8, 133u8,
116u8, 59u8, 46u8, 180u8, 116u8, 144u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Time after which a proposal will expire."]
pub async fn expires_after(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_common_utilities::MaybeBlock<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 133u8, 201u8, 79u8, 204u8, 159u8, 70u8, 222u8, 61u8, 113u8, 75u8,
210u8, 244u8, 47u8, 119u8, 123u8, 176u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8];
<polymesh_common_utilities::MaybeBlock<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_committee::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
164u8, 212u8, 121u8, 249u8, 139u8, 115u8, 252u8, 118u8, 237u8, 236u8, 191u8, 162u8, 90u8,
39u8, 91u8, 219u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_committee::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod technical_committee_membership {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change this group's limit for how many concurrent active members they may be."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` - the number of active members there may be concurrently."]
pub fn set_active_members_limit(
&self,
limit: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::set_active_members_limit { limit },
),
)
}
#[doc = "Disables a member at specific moment."]
#[doc = ""]
#[doc = "Please note that if member is already revoked (a \"valid member\"), its revocation"]
#[doc = "time-stamp will be updated."]
#[doc = ""]
#[doc = "Any disabled member should NOT allow to act like an active member of the group. For"]
#[doc = "instance, a disabled CDD member should NOT be able to generate a CDD claim. However any"]
#[doc = "generated claim issued before `at` would be considered as a valid one."]
#[doc = ""]
#[doc = "If you want to invalidate any generated claim, you should use `Self::remove_member`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `at` - Revocation time-stamp."]
#[doc = "* `who` - Target member of the group."]
#[doc = "* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, the"]
#[doc = "generated claims will be \"invalid\" as `who` is not considered a member of the group."]
pub fn disable_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::disable_member { who, expiry, at },
),
)
}
#[doc = "Adds a member `who` to the group. May only be called from `AddOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `AddOrigin` or root"]
#[doc = "* `who` - IdentityId to be added to the group."]
pub fn add_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::add_member { who },
),
)
}
#[doc = "Removes a member `who` from the set. May only be called from `RemoveOrigin` or root."]
#[doc = ""]
#[doc = "Any claim previously generated by this member is not valid as a group claim. For"]
#[doc = "instance, if a CDD member group generated a claim for a target identity and then it is"]
#[doc = "removed, that claim will be invalid. In case you want to keep the validity of generated"]
#[doc = "claims, you have to use `Self::disable_member` function"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `RemoveOrigin` or root"]
#[doc = "* `who` - IdentityId to be removed from the group."]
pub fn remove_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::remove_member { who },
),
)
}
#[doc = "Swaps out one member `remove` for another member `add`."]
#[doc = ""]
#[doc = "May only be called from `SwapOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `SwapOrigin` or root"]
#[doc = "* `remove` - IdentityId to be removed from the group."]
#[doc = "* `add` - IdentityId to be added in place of `remove`."]
pub fn swap_member(
&self,
remove: polymesh_primitives::identity_id::IdentityId,
add: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::swap_member { remove, add },
),
)
}
#[doc = "Changes the membership to a new set, disregarding the existing membership."]
#[doc = "May only be called from `ResetOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `ResetOrigin` or root"]
#[doc = "* `members` - New set of identities"]
pub fn reset_members(
&self,
members: Vec<polymesh_primitives::identity_id::IdentityId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::reset_members { members },
),
)
}
#[doc = "Allows the calling member to *unilaterally quit* without this being subject to a GC"]
#[doc = "vote."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Member of committee who wants to quit."]
#[doc = ""]
#[doc = "# Error"]
#[doc = ""]
#[doc = "* Only primary key can abdicate."]
#[doc = "* Last member of a group cannot abdicate."]
pub fn abdicate_membership(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::TechnicalCommitteeMembership(
types::pallet_group::Call::abdicate_membership,
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The current \"active\" membership, stored as an ordered Vec."]
pub async fn active_members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
196u8, 55u8, 227u8, 242u8, 203u8, 166u8, 23u8, 60u8, 167u8, 45u8, 15u8, 98u8, 8u8, 213u8,
47u8, 136u8, 118u8, 191u8, 62u8, 207u8, 240u8, 38u8, 151u8, 14u8, 138u8, 14u8, 159u8,
240u8, 162u8, 26u8, 38u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current \"inactive\" membership, stored as an ordered Vec."]
pub async fn inactive_members(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
196u8, 55u8, 227u8, 242u8, 203u8, 166u8, 23u8, 60u8, 167u8, 45u8, 15u8, 98u8, 8u8, 213u8,
47u8, 136u8, 192u8, 158u8, 95u8, 137u8, 89u8, 57u8, 167u8, 102u8, 81u8, 34u8, 107u8, 3u8,
94u8, 145u8, 7u8, 20u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Limit of how many \"active\" members there can be."]
pub async fn active_members_limit(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
196u8, 55u8, 227u8, 242u8, 203u8, 166u8, 23u8, 60u8, 167u8, 45u8, 15u8, 98u8, 8u8, 213u8,
47u8, 136u8, 101u8, 218u8, 136u8, 19u8, 44u8, 164u8, 10u8, 73u8, 97u8, 92u8, 160u8, 7u8,
124u8, 249u8, 110u8, 183u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod upgrade_committee {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change the vote threshold the determines the winning proposal."]
#[doc = "For e.g., for a simple majority use (1, 2) which represents the in-equation \">= 1/2\"."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `n` - Numerator of the fraction representing vote threshold."]
#[doc = "* `d` - Denominator of the fraction representing vote threshold."]
pub fn set_vote_threshold(
&self,
n: u32,
d: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommittee(
types::pallet_committee::Call::set_vote_threshold { n, d },
),
)
}
#[doc = "Changes the release coordinator."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - The DID of the new release coordinator."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, If the new coordinator `id` is not part of the committee."]
pub fn set_release_coordinator(
&self,
id: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommittee(
types::pallet_committee::Call::set_release_coordinator { id },
),
)
}
#[doc = "Changes the time after which a proposal expires."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` - The new expiry time."]
pub fn set_expires_after(
&self,
expiry: polymesh_common_utilities::MaybeBlock<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommittee(
types::pallet_committee::Call::set_expires_after { expiry },
),
)
}
#[doc = "Proposes to the committee that `call` should be executed in its name."]
#[doc = "Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,"]
#[doc = "then this call counts as a vote, i.e., as if `vote_by_hash` was called."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = ""]
#[doc = "The weight of this dispatchable is that of `call` as well as the complexity"]
#[doc = "for recording the vote itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `approve` - is this an approving vote?"]
#[doc = " If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`."]
#[doc = "* `call` - the call to propose for execution."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`."]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote_or_propose(
&self,
approve: bool,
call: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommittee(
types::pallet_committee::Call::vote_or_propose {
approve,
call: ::std::boxed::Box::new(call),
},
),
)
}
#[doc = "Votes `approve`ingly (or not, if `false`)"]
#[doc = "on an existing `proposal` given by its hash, `index`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposal` - A hash of the proposal to be voted on."]
#[doc = "* `index` - The proposal index."]
#[doc = "* `approve` - If `true` than this is a `for` vote, and `against` otherwise."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotAMember`, if the `origin` is not a member of this committee."]
pub fn vote(
&self,
proposal: primitive_types::H256,
index: u32,
approve: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommittee(
types::pallet_committee::Call::vote {
proposal,
index,
approve,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The hashes of the active proposals."]
pub async fn proposals(
&self,
) -> ::polymesh_api_client::error::Result<Vec<primitive_types::H256>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 136u8, 194u8, 247u8, 24u8, 140u8, 111u8, 221u8, 29u8, 255u8, 174u8,
47u8, 160u8, 209u8, 113u8, 244u8, 64u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<primitive_types::H256>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Actual proposal for a given hash."]
pub async fn proposal_of(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<polymesh_runtime_develop::runtime::Call>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 233u8, 214u8, 219u8, 136u8, 104u8, 163u8, 125u8, 121u8, 147u8, 11u8,
195u8, 247u8, 243u8, 57u8, 80u8, 209u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " PolymeshVotes on a given proposal, if it is ongoing."]
pub async fn voting(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<pallet_committee::PolymeshVotes<u32>>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 113u8, 205u8, 48u8, 104u8, 230u8, 17u8, 139u8, 251u8, 57u8, 43u8,
121u8, 131u8, 23u8, 246u8, 58u8, 137u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Proposals so far."]
pub async fn proposal_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 98u8, 84u8, 233u8, 213u8, 85u8, 136u8, 120u8, 79u8, 162u8, 166u8,
43u8, 114u8, 102u8, 150u8, 226u8, 177u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current members of the committee."]
pub async fn members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 186u8, 127u8, 184u8, 116u8, 87u8, 53u8, 220u8, 59u8, 226u8, 162u8,
198u8, 26u8, 114u8, 195u8, 158u8, 120u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Vote threshold for an approval."]
pub async fn vote_threshold(&self) -> ::polymesh_api_client::error::Result<(u32, u32)> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 156u8, 139u8, 199u8, 108u8, 52u8, 115u8, 136u8, 113u8, 204u8, 101u8,
23u8, 132u8, 125u8, 93u8, 3u8, 193u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<(u32, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Release coordinator."]
pub async fn release_coordinator(
&self,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 165u8, 39u8, 240u8, 96u8, 78u8, 203u8, 185u8, 53u8, 153u8, 133u8,
116u8, 59u8, 46u8, 180u8, 116u8, 144u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Time after which a proposal will expire."]
pub async fn expires_after(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_common_utilities::MaybeBlock<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 133u8, 201u8, 79u8, 204u8, 159u8, 70u8, 222u8, 61u8, 113u8, 75u8,
210u8, 244u8, 47u8, 119u8, 123u8, 176u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8];
<polymesh_common_utilities::MaybeBlock<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_committee::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 155u8, 254u8, 225u8, 50u8, 205u8, 88u8, 23u8, 3u8, 164u8, 149u8, 57u8, 253u8,
227u8, 45u8, 185u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_committee::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod upgrade_committee_membership {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change this group's limit for how many concurrent active members they may be."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` - the number of active members there may be concurrently."]
pub fn set_active_members_limit(
&self,
limit: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::set_active_members_limit { limit },
),
)
}
#[doc = "Disables a member at specific moment."]
#[doc = ""]
#[doc = "Please note that if member is already revoked (a \"valid member\"), its revocation"]
#[doc = "time-stamp will be updated."]
#[doc = ""]
#[doc = "Any disabled member should NOT allow to act like an active member of the group. For"]
#[doc = "instance, a disabled CDD member should NOT be able to generate a CDD claim. However any"]
#[doc = "generated claim issued before `at` would be considered as a valid one."]
#[doc = ""]
#[doc = "If you want to invalidate any generated claim, you should use `Self::remove_member`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `at` - Revocation time-stamp."]
#[doc = "* `who` - Target member of the group."]
#[doc = "* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, the"]
#[doc = "generated claims will be \"invalid\" as `who` is not considered a member of the group."]
pub fn disable_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::disable_member { who, expiry, at },
),
)
}
#[doc = "Adds a member `who` to the group. May only be called from `AddOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `AddOrigin` or root"]
#[doc = "* `who` - IdentityId to be added to the group."]
pub fn add_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::add_member { who },
),
)
}
#[doc = "Removes a member `who` from the set. May only be called from `RemoveOrigin` or root."]
#[doc = ""]
#[doc = "Any claim previously generated by this member is not valid as a group claim. For"]
#[doc = "instance, if a CDD member group generated a claim for a target identity and then it is"]
#[doc = "removed, that claim will be invalid. In case you want to keep the validity of generated"]
#[doc = "claims, you have to use `Self::disable_member` function"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `RemoveOrigin` or root"]
#[doc = "* `who` - IdentityId to be removed from the group."]
pub fn remove_member(
&self,
who: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::remove_member { who },
),
)
}
#[doc = "Swaps out one member `remove` for another member `add`."]
#[doc = ""]
#[doc = "May only be called from `SwapOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `SwapOrigin` or root"]
#[doc = "* `remove` - IdentityId to be removed from the group."]
#[doc = "* `add` - IdentityId to be added in place of `remove`."]
pub fn swap_member(
&self,
remove: polymesh_primitives::identity_id::IdentityId,
add: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::swap_member { remove, add },
),
)
}
#[doc = "Changes the membership to a new set, disregarding the existing membership."]
#[doc = "May only be called from `ResetOrigin` or root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Origin representing `ResetOrigin` or root"]
#[doc = "* `members` - New set of identities"]
pub fn reset_members(
&self,
members: Vec<polymesh_primitives::identity_id::IdentityId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::reset_members { members },
),
)
}
#[doc = "Allows the calling member to *unilaterally quit* without this being subject to a GC"]
#[doc = "vote."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - Member of committee who wants to quit."]
#[doc = ""]
#[doc = "# Error"]
#[doc = ""]
#[doc = "* Only primary key can abdicate."]
#[doc = "* Last member of a group cannot abdicate."]
pub fn abdicate_membership(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::UpgradeCommitteeMembership(
types::pallet_group::Call::abdicate_membership,
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The current \"active\" membership, stored as an ordered Vec."]
pub async fn active_members(
&self,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::identity_id::IdentityId>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
182u8, 126u8, 252u8, 69u8, 11u8, 212u8, 60u8, 43u8, 72u8, 78u8, 70u8, 113u8, 3u8, 206u8,
131u8, 172u8, 118u8, 191u8, 62u8, 207u8, 240u8, 38u8, 151u8, 14u8, 138u8, 14u8, 159u8,
240u8, 162u8, 26u8, 38u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::identity_id::IdentityId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current \"inactive\" membership, stored as an ordered Vec."]
pub async fn inactive_members(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
182u8, 126u8, 252u8, 69u8, 11u8, 212u8, 60u8, 43u8, 72u8, 78u8, 70u8, 113u8, 3u8, 206u8,
131u8, 172u8, 192u8, 158u8, 95u8, 137u8, 89u8, 57u8, 167u8, 102u8, 81u8, 34u8, 107u8,
3u8, 94u8, 145u8, 7u8, 20u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_common_utilities::traits::group::InactiveMember<u64>>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Limit of how many \"active\" members there can be."]
pub async fn active_members_limit(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
182u8, 126u8, 252u8, 69u8, 11u8, 212u8, 60u8, 43u8, 72u8, 78u8, 70u8, 113u8, 3u8, 206u8,
131u8, 172u8, 101u8, 218u8, 136u8, 19u8, 44u8, 164u8, 10u8, 73u8, 97u8, 92u8, 160u8, 7u8,
124u8, 249u8, 110u8, 183u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod multi_sig {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Creates a multisig"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signers` - Signers of the multisig (They need to accept authorization before they are actually added)."]
#[doc = "* `sigs_required` - Number of sigs required to process a multi-sig tx."]
pub fn create_multisig(
&self,
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
sigs_required: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::create_multisig {
signers,
sigs_required,
},
))
}
#[doc = "Creates a multisig proposal if it hasn't been created or approves it if it has."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
pub fn create_or_approve_proposal_as_identity(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: polymesh_runtime_develop::runtime::Call,
expiry: Option<u64>,
auto_close: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::create_or_approve_proposal_as_identity {
multisig,
proposal: ::std::boxed::Box::new(proposal),
expiry,
auto_close,
},
))
}
#[doc = "Creates a multisig proposal if it hasn't been created or approves it if it has."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
pub fn create_or_approve_proposal_as_key(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: polymesh_runtime_develop::runtime::Call,
expiry: Option<u64>,
auto_close: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::create_or_approve_proposal_as_key {
multisig,
proposal: ::std::boxed::Box::new(proposal),
expiry,
auto_close,
},
))
}
#[doc = "Creates a multisig proposal"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
pub fn create_proposal_as_identity(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: polymesh_runtime_develop::runtime::Call,
expiry: Option<u64>,
auto_close: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::create_proposal_as_identity {
multisig,
proposal: ::std::boxed::Box::new(proposal),
expiry,
auto_close,
},
))
}
#[doc = "Creates a multisig proposal"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal` - Proposal to be voted on."]
#[doc = "* `expiry` - Optional proposal expiry time."]
#[doc = "* `auto_close` - Close proposal on receiving enough reject votes."]
#[doc = "If this is 1 out of `m` multisig, the proposal will be immediately executed."]
pub fn create_proposal_as_key(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal: polymesh_runtime_develop::runtime::Call,
expiry: Option<u64>,
auto_close: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::create_proposal_as_key {
multisig,
proposal: ::std::boxed::Box::new(proposal),
expiry,
auto_close,
},
))
}
#[doc = "Approves a multisig proposal using the caller's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to approve."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
pub fn approve_as_identity(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::approve_as_identity {
multisig,
proposal_id,
},
))
}
#[doc = "Approves a multisig proposal using the caller's secondary key (`AccountId`)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to approve."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
pub fn approve_as_key(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::approve_as_key {
multisig,
proposal_id,
},
))
}
#[doc = "Rejects a multisig proposal using the caller's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to reject."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
pub fn reject_as_identity(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::reject_as_identity {
multisig,
proposal_id,
},
))
}
#[doc = "Rejects a multisig proposal using the caller's secondary key (`AccountId`)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - MultiSig address."]
#[doc = "* `proposal_id` - Proposal id to reject."]
#[doc = "If quorum is reached, the proposal will be immediately executed."]
pub fn reject_as_key(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::reject_as_key {
multisig,
proposal_id,
},
))
}
#[doc = "Accepts a multisig signer authorization given to signer's identity."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_id` - Auth id of the authorization."]
pub fn accept_multisig_signer_as_identity(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::accept_multisig_signer_as_identity { auth_id },
))
}
#[doc = "Accepts a multisig signer authorization given to signer's key (AccountId)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `auth_id` - Auth id of the authorization."]
pub fn accept_multisig_signer_as_key(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::accept_multisig_signer_as_key { auth_id },
))
}
#[doc = "Adds a signer to the multisig. This must be called by the multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signer` - Signatory to add."]
pub fn add_multisig_signer(
&self,
signer: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::add_multisig_signer { signer },
))
}
#[doc = "Removes a signer from the multisig. This must be called by the multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `signer` - Signatory to remove."]
pub fn remove_multisig_signer(
&self,
signer: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::remove_multisig_signer { signer },
))
}
#[doc = "Adds a signer to the multisig. This must be called by the creator identity of the"]
#[doc = "multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - Address of the multi sig"]
#[doc = "* `signers` - Signatories to add."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`900_000_000 + 3_000_000 * signers.len()`"]
pub fn add_multisig_signers_via_creator(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::add_multisig_signers_via_creator { multisig, signers },
))
}
#[doc = "Removes a signer from the multisig."]
#[doc = "This must be called by the creator identity of the multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - Address of the multisig."]
#[doc = "* `signers` - Signatories to remove."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`900_000_000 + 3_000_000 * signers.len()`"]
pub fn remove_multisig_signers_via_creator(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
signers: Vec<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::remove_multisig_signers_via_creator { multisig, signers },
))
}
#[doc = "Changes the number of signatures required by a multisig. This must be called by the"]
#[doc = "multisig itself."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `sigs_required` - New number of required signatures."]
pub fn change_sigs_required(
&self,
sigs_required: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::change_sigs_required { sigs_required },
))
}
#[doc = "Adds a multisig as a secondary key of current did if the current did is the creator of the"]
#[doc = "multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multisig` - multi sig address"]
pub fn make_multisig_secondary(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::make_multisig_secondary { multisig },
))
}
#[doc = "Adds a multisig as the primary key of the current did if the current DID is the creator"]
#[doc = "of the multisig."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `multi_sig` - multi sig address"]
pub fn make_multisig_primary(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
optional_cdd_auth_id: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::make_multisig_primary {
multisig,
optional_cdd_auth_id,
},
))
}
#[doc = "Root callable extrinsic, used as an internal call for executing scheduled multisig proposal."]
pub fn execute_scheduled_proposal(
&self,
multisig: ::polymesh_api_client::sp_core::crypto::AccountId32,
proposal_id: u64,
multisig_did: polymesh_primitives::identity_id::IdentityId,
_proposal_weight: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::MultiSig(
types::pallet_multisig::Call::execute_scheduled_proposal {
multisig,
proposal_id,
multisig_did,
_proposal_weight,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Nonce to ensure unique MultiSig addresses are generated; starts from 1."]
pub async fn multi_sig_nonce(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 10u8, 14u8, 167u8, 96u8, 87u8, 167u8, 154u8, 118u8, 104u8, 172u8,
98u8, 216u8, 200u8, 251u8, 224u8, 34u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Signers of a multisig. (multisig, signer) => signer."]
pub async fn multi_sig_signers(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
key_1: polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 87u8, 55u8, 48u8, 162u8, 27u8, 187u8, 140u8, 140u8, 243u8, 200u8,
51u8, 112u8, 105u8, 135u8, 190u8, 191u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Number of approved/accepted signers of a multisig."]
pub async fn number_of_signers(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 71u8, 130u8, 22u8, 60u8, 187u8, 185u8, 53u8, 64u8, 248u8, 2u8, 20u8,
216u8, 127u8, 68u8, 253u8, 226u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Confirmations required before processing a multisig tx."]
pub async fn multi_sig_signs_required(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 186u8, 252u8, 143u8, 56u8, 160u8, 191u8, 27u8, 28u8, 14u8, 157u8,
223u8, 36u8, 138u8, 28u8, 207u8, 150u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Number of transactions proposed in a multisig. Used as tx id; starts from 0."]
pub async fn multi_sig_tx_done(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 79u8, 31u8, 81u8, 244u8, 28u8, 45u8, 127u8, 189u8, 55u8, 203u8, 110u8,
144u8, 201u8, 64u8, 76u8, 148u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Proposals presented for voting to a multisig (multisig, proposal id) => Option<T::Proposal>."]
pub async fn proposals(
&self,
key_0: (::polymesh_api_client::sp_core::crypto::AccountId32, u64),
) -> ::polymesh_api_client::error::Result<Option<polymesh_runtime_develop::runtime::Call>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 136u8, 194u8, 247u8, 24u8, 140u8, 111u8, 221u8, 29u8, 255u8, 174u8,
47u8, 160u8, 209u8, 113u8, 244u8, 64u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A mapping of proposals to their IDs."]
pub async fn proposal_ids(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
key_1: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<Option<u64>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 149u8, 230u8, 68u8, 209u8, 93u8, 43u8, 168u8, 123u8, 142u8, 97u8,
255u8, 121u8, 47u8, 101u8, 10u8, 146u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Individual multisig signer votes. (multi sig, signer, proposal) => vote."]
pub async fn votes(
&self,
key_0: (
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_primitives::secondary_key::Signatory<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
u64,
),
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 180u8, 173u8, 198u8, 161u8, 206u8, 79u8, 124u8, 194u8, 230u8, 150u8,
237u8, 15u8, 208u8, 107u8, 208u8, 28u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Maps a multisig account to its identity."]
pub async fn multi_sig_to_identity(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_id::IdentityId>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 140u8, 115u8, 230u8, 224u8, 53u8, 243u8, 38u8, 176u8, 80u8, 75u8,
73u8, 102u8, 20u8, 63u8, 143u8, 252u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<polymesh_primitives::identity_id::IdentityId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Details of a multisig proposal"]
pub async fn proposal_detail(
&self,
key_0: (::polymesh_api_client::sp_core::crypto::AccountId32, u64),
) -> ::polymesh_api_client::error::Result<pallet_multisig::ProposalDetails<u64>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 31u8, 32u8, 177u8, 185u8, 65u8, 92u8, 211u8, 48u8, 162u8, 227u8,
178u8, 217u8, 224u8, 146u8, 100u8, 61u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8,
];
<pallet_multisig::ProposalDetails<u64>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The last transaction version, used for `on_runtime_upgrade`."]
pub async fn transaction_version(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 136u8, 215u8, 103u8, 226u8, 158u8, 158u8, 152u8, 49u8, 187u8, 71u8,
177u8, 173u8, 103u8, 53u8, 72u8, 253u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_multisig::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
232u8, 14u8, 200u8, 196u8, 228u8, 213u8, 75u8, 150u8, 203u8, 167u8, 42u8, 186u8, 133u8,
109u8, 50u8, 47u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_multisig::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod bridge {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Changes the controller account as admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn change_controller(
&self,
controller: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::change_controller { controller },
))
}
#[doc = "Changes the bridge admin key."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn change_admin(
&self,
admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::change_admin { admin },
))
}
#[doc = "Changes the timelock period."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn change_timelock(
&self,
timelock: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::change_timelock { timelock },
))
}
#[doc = "Freezes transaction handling in the bridge module if it is not already frozen. When the"]
#[doc = "bridge is frozen, attempted transactions get postponed instead of getting handled."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn freeze(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::freeze,
))
}
#[doc = "Unfreezes transaction handling in the bridge module if it is frozen."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn unfreeze(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::unfreeze,
))
}
#[doc = "Changes the bridge limits."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `DivisionByZero` if `duration` is zero."]
pub fn change_bridge_limit(
&self,
amount: u128,
duration: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::change_bridge_limit { amount, duration },
))
}
#[doc = "Changes the bridge limit exempted list."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn change_bridge_exempted(
&self,
exempted: Vec<(polymesh_primitives::identity_id::IdentityId, bool)>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::change_bridge_exempted { exempted },
))
}
#[doc = "Forces handling a transaction by bypassing the bridge limit and timelock."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `NoValidCdd` if `bridge_tx.recipient` does not have a valid CDD claim."]
pub fn force_handle_bridge_tx(
&self,
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::force_handle_bridge_tx { bridge_tx },
))
}
#[doc = "Proposes a vector of bridge transactions. The vector is processed until the first"]
#[doc = "proposal which causes an error, in which case the error is returned and the rest of"]
#[doc = "proposals are not processed."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `ControllerNotSet` if `Controllers` was not set."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`500_000_000 + 7_000_000 * bridge_txs.len()`"]
pub fn batch_propose_bridge_tx(
&self,
bridge_txs: Vec<
pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::batch_propose_bridge_tx { bridge_txs },
))
}
#[doc = "Proposes a bridge transaction, which amounts to making a multisig proposal for the"]
#[doc = "bridge transaction if the transaction is new or approving an existing proposal if the"]
#[doc = "transaction has already been proposed."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `ControllerNotSet` if `Controllers` was not set."]
pub fn propose_bridge_tx(
&self,
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::propose_bridge_tx { bridge_tx },
))
}
#[doc = "Handles an approved bridge transaction proposal."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadCaller` if `origin` is not `Self::controller` or `Self::admin`."]
#[doc = "- `TimelockedTx` if the transaction status is `Timelocked`."]
#[doc = "- `ProposalAlreadyHandled` if the transaction status is `Handled`."]
pub fn handle_bridge_tx(
&self,
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::handle_bridge_tx { bridge_tx },
))
}
#[doc = "Freezes given bridge transactions."]
#[doc = "If any bridge txn is already handled then this function will just ignore it and process next one."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`400_000_000 + 2_000_000 * bridge_txs.len()`"]
pub fn freeze_txs(
&self,
bridge_txs: Vec<
pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::freeze_txs { bridge_txs },
))
}
#[doc = "Unfreezes given bridge transactions."]
#[doc = "If any bridge txn is already handled then this function will just ignore it and process next one."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`400_000_000 + 7_000_000 * bridge_txs.len()`"]
pub fn unfreeze_txs(
&self,
bridge_txs: Vec<
pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::unfreeze_txs { bridge_txs },
))
}
#[doc = "Root callable extrinsic, used as an internal call to handle a scheduled timelocked bridge transaction."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `BadOrigin` if `origin` is not root."]
#[doc = "- `ProposalAlreadyHandled` if transaction status is `Handled`."]
#[doc = "- `FrozenTx` if transaction status is `Frozen`."]
pub fn handle_scheduled_bridge_tx(
&self,
bridge_tx: pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::handle_scheduled_bridge_tx { bridge_tx },
))
}
#[doc = "Add a freeze admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn add_freeze_admin(
&self,
freeze_admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::add_freeze_admin { freeze_admin },
))
}
#[doc = "Remove a freeze admin."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
pub fn remove_freeze_admin(
&self,
freeze_admin: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::remove_freeze_admin { freeze_admin },
))
}
#[doc = "Remove given bridge transactions."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `BadAdmin` if `origin` is not `Self::admin()` account."]
#[doc = "- `NotFrozen` if a tx in `bridge_txs` is not frozen."]
pub fn remove_txs(
&self,
bridge_txs: Vec<
pallet_bridge::BridgeTx<::polymesh_api_client::sp_core::crypto::AccountId32>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Bridge(
types::pallet_bridge::Call::remove_txs { bridge_txs },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The multisig account of the bridge controller. The genesis signers accept their"]
#[doc = " authorizations and are able to get their proposals delivered. The bridge creator"]
#[doc = " transfers some POLY to their identity."]
pub async fn controller(
&self,
) -> ::polymesh_api_client::error::Result<::polymesh_api_client::sp_core::crypto::AccountId32>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 183u8, 204u8, 54u8, 145u8, 109u8, 19u8, 45u8, 59u8, 195u8, 248u8,
242u8, 199u8, 1u8, 23u8, 109u8, 66u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<::polymesh_api_client::sp_core::crypto::AccountId32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Details of bridge transactions identified with pairs of the recipient account and the"]
#[doc = " bridge transaction nonce."]
pub async fn bridge_tx_details(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
key_1: u32,
) -> ::polymesh_api_client::error::Result<pallet_bridge::BridgeTxDetail<u32>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 160u8, 171u8, 250u8, 46u8, 255u8, 186u8, 133u8, 70u8, 5u8, 113u8,
106u8, 184u8, 89u8, 221u8, 9u8, 230u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8,
];
<pallet_bridge::BridgeTxDetail<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The admin key."]
pub async fn admin(
&self,
) -> ::polymesh_api_client::error::Result<::polymesh_api_client::sp_core::crypto::AccountId32>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 173u8, 16u8, 141u8, 89u8, 159u8, 82u8, 234u8, 243u8, 141u8, 183u8,
130u8, 149u8, 229u8, 208u8, 119u8, 7u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<::polymesh_api_client::sp_core::crypto::AccountId32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Whether or not the bridge operation is frozen."]
pub async fn frozen(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 113u8, 75u8, 228u8, 71u8, 135u8, 205u8, 51u8, 93u8, 238u8, 240u8,
115u8, 32u8, 236u8, 125u8, 7u8, 114u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Freeze bridge admins. These accounts can only freeze the bridge."]
pub async fn freeze_admins(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 46u8, 14u8, 105u8, 223u8, 24u8, 9u8, 5u8, 55u8, 62u8, 201u8, 158u8,
14u8, 181u8, 153u8, 155u8, 227u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The bridge transaction timelock period, in blocks, since the acceptance of the"]
#[doc = " transaction proposal during which the admin key can freeze the transaction."]
pub async fn timelock(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 165u8, 103u8, 110u8, 43u8, 52u8, 147u8, 66u8, 159u8, 203u8, 158u8,
136u8, 171u8, 49u8, 13u8, 97u8, 241u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The maximum number of bridged POLYX per identity within a set interval of"]
#[doc = " blocks. Fields: POLYX amount and the block interval duration."]
pub async fn bridge_limit(&self) -> ::polymesh_api_client::error::Result<(u128, u32)> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 132u8, 135u8, 62u8, 163u8, 160u8, 182u8, 134u8, 35u8, 36u8, 148u8,
56u8, 64u8, 19u8, 139u8, 235u8, 155u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8,
];
<(u128, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Amount of POLYX bridged by the identity in last block interval. Fields: the bridged"]
#[doc = " amount and the last interval number."]
pub async fn polyx_bridged(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<(u128, u32)> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 153u8, 172u8, 54u8, 12u8, 240u8, 75u8, 42u8, 186u8, 164u8, 214u8,
162u8, 172u8, 42u8, 252u8, 113u8, 145u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8,
];
<(u128, u32)>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Identities not constrained by the bridge limit."]
pub async fn bridge_limit_exempted(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 108u8, 105u8, 144u8, 154u8, 14u8, 188u8, 102u8, 133u8, 14u8, 53u8,
105u8, 27u8, 178u8, 56u8, 52u8, 155u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_bridge::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
107u8, 189u8, 52u8, 241u8, 88u8, 169u8, 225u8, 165u8, 229u8, 96u8, 11u8, 3u8, 173u8,
238u8, 121u8, 50u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_bridge::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod staking {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Take the origin account as a stash and lock up `value` of its balance. `controller` will"]
#[doc = "be the account that controls it."]
#[doc = ""]
#[doc = "`value` must be more than the `minimum_balance` specified by `T::Currency`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash account."]
#[doc = ""]
#[doc = "Emits `Bonded`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Moderate complexity."]
#[doc = "- O(1)."]
#[doc = "- Three extra DB entries."]
#[doc = ""]
#[doc = "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned"]
#[doc = "unless the `origin` falls below _existential deposit_ and gets removed as dust."]
#[doc = "------------------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Bonded, Ledger, [Origin Account], Current Era, History Depth, Locks"]
#[doc = "- Write: Bonded, Payee, [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
pub fn bond(
&self,
controller: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
value: u128,
payee: pallet_staking::RewardDestination<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::bond {
controller,
value,
payee,
},
))
}
#[doc = "Add some extra amount that have appeared in the stash `free_balance` into the balance up"]
#[doc = "for staking."]
#[doc = ""]
#[doc = "Use this if there are additional funds in your stash account that you wish to bond."]
#[doc = "Unlike [`bond`] or [`unbond`] this function does not impose any limitation on the amount"]
#[doc = "that can be added."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller and"]
#[doc = "it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Bonded`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- O(1)."]
#[doc = "- One DB entry."]
#[doc = "------------"]
#[doc = "DB Weight:"]
#[doc = "- Read: Era Election Status, Bonded, Ledger, [Origin Account], Locks"]
#[doc = "- Write: [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
pub fn bond_extra(
&self,
max_additional: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::bond_extra { max_additional },
))
}
#[doc = "Schedule a portion of the stash to be unlocked ready for transfer out after the bond"]
#[doc = "period ends. If this leaves an amount actively bonded less than"]
#[doc = "T::Currency::minimum_balance(), then it is increased to the full amount."]
#[doc = ""]
#[doc = "Once the unlock period is done, you can call `withdraw_unbonded` to actually move"]
#[doc = "the funds out of management ready for transfer."]
#[doc = ""]
#[doc = "No more than a limited number of unlocking chunks (see `MAX_UNLOCKING_CHUNKS`)"]
#[doc = "can co-exists at the same time. In that case, [`Call::withdraw_unbonded`] need"]
#[doc = "to be called first to remove some of the chunks (if possible)."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Unbonded`."]
#[doc = ""]
#[doc = "See also [`Call::withdraw_unbonded`]."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Limited but potentially exploitable complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Each call (requires the remainder of the bonded balance to be above `minimum_balance`)"]
#[doc = " will cause a new entry to be inserted into a vector (`Ledger.unlocking`) kept in storage."]
#[doc = " The only way to clean the aforementioned storage item is also user-controlled via"]
#[doc = " `withdraw_unbonded`."]
#[doc = "- One DB entry."]
#[doc = "----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, Ledger, CurrentEra, Locks, \\[Origin Account\\]"]
#[doc = "- Write: Locks, Ledger, \\[Origin Account\\]"]
#[doc = "</weight>"]
pub fn unbond(
&self,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::unbond { value },
))
}
#[doc = "Remove any unlocked chunks from the `unlocking` queue from our management."]
#[doc = ""]
#[doc = "This essentially frees up that balance to be used by the stash account to do"]
#[doc = "whatever it wants."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "Emits `Withdrawn`."]
#[doc = ""]
#[doc = "See also [`Call::unbond`]."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Could be dependent on the `origin` argument and how much `unlocking` chunks exist."]
#[doc = " It implies `consolidate_unlocked` which loops over `Ledger.unlocking`, which is"]
#[doc = " indirectly user-controlled. See [`unbond`] for more detail."]
#[doc = "- Contains a limited number of reads, yet the size of which could be large based on `ledger`."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "---------------"]
#[doc = "Complexity O(S) where S is the number of slashing spans to remove"]
#[doc = "Update:"]
#[doc = "- Reads: EraElectionStatus, Ledger, Current Era, Locks, [Origin Account]"]
#[doc = "- Writes: [Origin Account], Locks, Ledger"]
#[doc = "Kill:"]
#[doc = "- Reads: EraElectionStatus, Ledger, Current Era, Bonded, Slashing Spans, [Origin"]
#[doc = " Account], Locks"]
#[doc = "- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators,"]
#[doc = " [Origin Account], Locks"]
#[doc = "- Writes Each: SpanSlash * S"]
#[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."]
#[doc = "# </weight>"]
pub fn withdraw_unbonded(
&self,
num_slashing_spans: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::withdraw_unbonded { num_slashing_spans },
))
}
#[doc = "Declare the desire to validate for the origin controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "-----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Era Election Status, Ledger"]
#[doc = "- Write: Nominators, Validators"]
#[doc = "# </weight>"]
pub fn validate(
&self,
prefs: pallet_staking::ValidatorPrefs,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::validate { prefs },
))
}
#[doc = "Declare the desire to nominate `targets` for the origin controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era. This can only be called when"]
#[doc = "[`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- The transaction's complexity is proportional to the size of `targets` (N)"]
#[doc = "which is capped at CompactAssignments::LIMIT (MAX_NOMINATIONS)."]
#[doc = "- Both the reads and writes follow a similar pattern."]
#[doc = "---------"]
#[doc = "Weight: O(N)"]
#[doc = "where N is the number of targets"]
#[doc = "DB Weight:"]
#[doc = "- Reads: Era Election Status, Ledger, Current Era"]
#[doc = "- Writes: Validators, Nominators"]
#[doc = "# </weight>"]
pub fn nominate(
&self,
targets: Vec<
::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::nominate { targets },
))
}
#[doc = "Declare no desire to either validate or nominate."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = "And, it can be only called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains one read."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "--------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, Ledger"]
#[doc = "- Write: Validators, Nominators"]
#[doc = "# </weight>"]
pub fn chill(&self) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::chill,
))
}
#[doc = "(Re-)set the payment target for a controller."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "---------"]
#[doc = "- Weight: O(1)"]
#[doc = "- DB Weight:"]
#[doc = " - Read: Ledger"]
#[doc = " - Write: Payee"]
#[doc = "# </weight>"]
pub fn set_payee(
&self,
payee: pallet_staking::RewardDestination<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_payee { payee },
))
}
#[doc = "(Re-)set the controller of a stash."]
#[doc = ""]
#[doc = "Effects will be felt at the beginning of the next era."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Independent of the arguments. Insignificant complexity."]
#[doc = "- Contains a limited number of reads."]
#[doc = "- Writes are limited to the `origin` account key."]
#[doc = "----------"]
#[doc = "Weight: O(1)"]
#[doc = "DB Weight:"]
#[doc = "- Read: Bonded, Ledger New Controller, Ledger Old Controller"]
#[doc = "- Write: Bonded, Ledger New Controller, Ledger Old Controller"]
#[doc = "# </weight>"]
pub fn set_controller(
&self,
controller: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_controller { controller },
))
}
#[doc = "Sets the ideal number of validators."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Weight: O(1)"]
#[doc = "Write: Validator Count"]
#[doc = "# </weight>"]
pub fn set_validator_count(
&self,
new: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_validator_count { new },
))
}
#[doc = "Increments the ideal number of validators."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`set_validator_count`]."]
#[doc = "# </weight>"]
pub fn increase_validator_count(
&self,
additional: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::increase_validator_count { additional },
))
}
#[doc = "Scale up the ideal number of validators by a factor."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`set_validator_count`]."]
#[doc = "# </weight>"]
pub fn scale_validator_count(
&self,
factor: sp_arithmetic::per_things::Percent,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::scale_validator_count { factor },
))
}
#[doc = "Governance committee on 2/3 rds majority can introduce a new potential identity"]
#[doc = "to the pool of permissioned entities who can run validators. Staking module uses `PermissionedIdentity`"]
#[doc = "to ensure validators have completed KYB compliance and considers them for validation."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin Required origin for adding a potential validator."]
#[doc = "* identity Validator's IdentityId."]
#[doc = "* intended_count No. of validators given identity intends to run."]
pub fn add_permissioned_validator(
&self,
identity: polymesh_primitives::identity_id::IdentityId,
intended_count: Option<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::add_permissioned_validator {
identity,
intended_count,
},
))
}
#[doc = "Remove an identity from the pool of (wannabe) validator identities. Effects are known in the next session."]
#[doc = "Staking module checks `PermissionedIdentity` to ensure validators have"]
#[doc = "completed KYB compliance"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin Required origin for removing a potential validator."]
#[doc = "* identity Validator's IdentityId."]
pub fn remove_permissioned_validator(
&self,
identity: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::remove_permissioned_validator { identity },
))
}
#[doc = "Validate the nominators CDD expiry time."]
#[doc = ""]
#[doc = "If an account from a given set of address is nominating then"]
#[doc = "check the CDD expiry time of it and if it is expired"]
#[doc = "then the account should be unbonded and removed from the nominating process."]
#[doc = ""]
#[doc = "#<weight>"]
#[doc = "- Depends on passed list of AccountId."]
#[doc = "- Depends on the no. of claim issuers an accountId has for the CDD expiry."]
#[doc = "#</weight>"]
pub fn validate_cdd_expiry_nominators(
&self,
targets: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::validate_cdd_expiry_nominators { targets },
))
}
#[doc = "Changes commission rate which applies to all validators. Only Governance"]
#[doc = "committee is allowed to change this value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `new_cap` the new commission cap."]
pub fn set_commission_cap(
&self,
new_cap: sp_arithmetic::per_things::Perbill,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_commission_cap { new_cap },
))
}
#[doc = "Changes min bond value to be used in validate(). Only Governance"]
#[doc = "committee is allowed to change this value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `new_value` the new minimum"]
pub fn set_min_bond_threshold(
&self,
new_value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_min_bond_threshold { new_value },
))
}
#[doc = "Force there to be no new eras indefinitely."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- No arguments."]
#[doc = "- Weight: O(1)"]
#[doc = "- Write: ForceEra"]
#[doc = "# </weight>"]
pub fn force_no_eras(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::force_no_eras,
))
}
#[doc = "Force there to be a new era at the end of the next session. After this, it will be"]
#[doc = "reset to normal (non-forced) behaviour."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- No arguments."]
#[doc = "- Weight: O(1)"]
#[doc = "- Write ForceEra"]
#[doc = "# </weight>"]
pub fn force_new_era(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::force_new_era,
))
}
#[doc = "Set the validators who cannot be slashed (if any)."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(V)"]
#[doc = "- Write: Invulnerables"]
#[doc = "# </weight>"]
pub fn set_invulnerables(
&self,
invulnerables: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_invulnerables { invulnerables },
))
}
#[doc = "Force a current staker to become completely unstaked, immediately."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "O(S) where S is the number of slashing spans to be removed"]
#[doc = "Reads: Bonded, Slashing Spans, Account, Locks"]
#[doc = "Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Account, Locks"]
#[doc = "Writes Each: SpanSlash * S"]
#[doc = "# </weight>"]
pub fn force_unstake(
&self,
stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
num_slashing_spans: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::force_unstake {
stash,
num_slashing_spans,
},
))
}
#[doc = "Force there to be a new era at the end of sessions indefinitely."]
#[doc = ""]
#[doc = "The dispatch origin must be Root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Weight: O(1)"]
#[doc = "- Write: ForceEra"]
#[doc = "# </weight>"]
pub fn force_new_era_always(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::force_new_era_always,
))
}
#[doc = "Cancel enactment of a deferred slash."]
#[doc = ""]
#[doc = "Can be called by the `T::SlashCancelOrigin`."]
#[doc = ""]
#[doc = "Parameters: era and indices of the slashes for that era to kill."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Complexity: O(U + S)"]
#[doc = "with U unapplied slashes weighted with U=1000"]
#[doc = "and S is the number of slash indices to be canceled."]
#[doc = "- Read: Unapplied Slashes"]
#[doc = "- Write: Unapplied Slashes"]
#[doc = "# </weight>"]
pub fn cancel_deferred_slash(
&self,
era: u32,
slash_indices: Vec<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::cancel_deferred_slash { era, slash_indices },
))
}
#[doc = "Pay out all the stakers behind a single validator for a single era."]
#[doc = ""]
#[doc = "- `validator_stash` is the stash account of the validator. Their nominators, up to"]
#[doc = " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards."]
#[doc = "- `era` may be any era between `[current_era - history_depth; current_era]`."]
#[doc = ""]
#[doc = "The origin of this call must be _Signed_. Any account can call this function, even if"]
#[doc = "it is not one of the stakers."]
#[doc = ""]
#[doc = "This can only be called when [`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Time complexity: at most O(MaxNominatorRewardedPerValidator)."]
#[doc = "- Contains a limited number of reads and writes."]
#[doc = "-----------"]
#[doc = "N is the Number of payouts for the validator (including the validator)"]
#[doc = "Weight:"]
#[doc = "- Reward Destination Staked: O(N)"]
#[doc = "- Reward Destination Controller (Creating): O(N)"]
#[doc = "DB Weight:"]
#[doc = "- Read: EraElectionStatus, CurrentEra, HistoryDepth, ErasValidatorReward,"]
#[doc = " ErasStakersClipped, ErasRewardPoints, ErasValidatorPrefs (8 items)"]
#[doc = "- Read Each: Bonded, Ledger, Payee, Locks, System Account (5 items)"]
#[doc = "- Write Each: System Account, Locks, Ledger (3 items)"]
#[doc = "# </weight>"]
pub fn payout_stakers(
&self,
validator_stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
era: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::payout_stakers {
validator_stash,
era,
},
))
}
#[doc = "Rebond a portion of the stash scheduled to be unlocked."]
#[doc = ""]
#[doc = "The dispatch origin must be signed by the controller, and it can be only called when"]
#[doc = "[`EraElectionStatus`] is `Closed`."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Time complexity: O(L), where L is unlocking chunks"]
#[doc = "- Bounded by `MAX_UNLOCKING_CHUNKS`."]
#[doc = "- Storage changes: Can't increase storage, only decrease it."]
#[doc = "---------------"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: EraElectionStatus, Ledger, Locks, [Origin Account]"]
#[doc = " - Writes: [Origin Account], Locks, Ledger"]
#[doc = "# </weight>"]
pub fn rebond(
&self,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::rebond { value },
))
}
#[doc = "Set `HistoryDepth` value. This function will delete any history information"]
#[doc = "when `HistoryDepth` is reduced."]
#[doc = ""]
#[doc = "Parameters:"]
#[doc = "- `new_history_depth`: The new history depth you would like to set."]
#[doc = "- `era_items_deleted`: The number of items that will be deleted by this dispatch."]
#[doc = " This should report all the storage items that will be deleted by clearing old"]
#[doc = " era history. Needed to report an accurate weight for the dispatch. Trusted by"]
#[doc = " `Root` to report an accurate number."]
#[doc = ""]
#[doc = "Origin must be root."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- E: Number of history depths removed, i.e. 10 -> 7 = 3"]
#[doc = "- Weight: O(E)"]
#[doc = "- DB Weight:"]
#[doc = " - Reads: Current Era, History Depth"]
#[doc = " - Writes: History Depth"]
#[doc = " - Clear Prefix Each: Era Stakers, EraStakersClipped, ErasValidatorPrefs"]
#[doc = " - Writes Each: ErasValidatorReward, ErasRewardPoints, ErasTotalStake, ErasStartSessionIndex"]
#[doc = "# </weight>"]
pub fn set_history_depth(
&self,
new_history_depth: u32,
_era_items_deleted: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::set_history_depth {
new_history_depth,
_era_items_deleted,
},
))
}
#[doc = "Remove all data structure concerning a staker/stash once its balance is at the minimum."]
#[doc = "This is essentially equivalent to `withdraw_unbonded` except it can be called by anyone"]
#[doc = "and the target `stash` must have no funds left beyond the ED."]
#[doc = ""]
#[doc = "This can be called from any origin."]
#[doc = ""]
#[doc = "- `stash`: The stash account to reap. Its balance must be zero."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Complexity: O(S) where S is the number of slashing spans on the account."]
#[doc = "DB Weight:"]
#[doc = "- Reads: Stash Account, Bonded, Slashing Spans, Locks"]
#[doc = "- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Stash Account, Locks"]
#[doc = "- Writes Each: SpanSlash * S"]
#[doc = "# </weight>"]
pub fn reap_stash(
&self,
stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
num_slashing_spans: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::reap_stash {
stash,
num_slashing_spans,
},
))
}
#[doc = "Submit an election result to the chain. If the solution:"]
#[doc = ""]
#[doc = "1. is valid."]
#[doc = "2. has a better score than a potentially existing solution on chain."]
#[doc = ""]
#[doc = "then, it will be _put_ on chain."]
#[doc = ""]
#[doc = "A solution consists of two pieces of data:"]
#[doc = ""]
#[doc = "1. `winners`: a flat vector of all the winners of the round."]
#[doc = "2. `assignments`: the compact version of an assignment vector that encodes the edge"]
#[doc = " weights."]
#[doc = ""]
#[doc = "Both of which may be computed using _phragmen_, or any other algorithm."]
#[doc = ""]
#[doc = "Additionally, the submitter must provide:"]
#[doc = ""]
#[doc = "- The `score` that they claim their solution has."]
#[doc = ""]
#[doc = "Both validators and nominators will be represented by indices in the solution. The"]
#[doc = "indices should respect the corresponding types ([`ValidatorIndex`] and"]
#[doc = "[`NominatorIndex`]). Moreover, they should be valid when used to index into"]
#[doc = "[`SnapshotValidators`] and [`SnapshotNominators`]. Any invalid index will cause the"]
#[doc = "solution to be rejected. These two storage items are set during the election window and"]
#[doc = "may be used to determine the indices."]
#[doc = ""]
#[doc = "A solution is valid if:"]
#[doc = ""]
#[doc = "0. It is submitted when [`EraElectionStatus`] is `Open`."]
#[doc = "1. Its claimed score is equal to the score computed on-chain."]
#[doc = "2. Presents the correct number of winners."]
#[doc = "3. All indexes must be value according to the snapshot vectors. All edge values must"]
#[doc = " also be correct and should not overflow the granularity of the ratio type (i.e. 256"]
#[doc = " or billion)."]
#[doc = "4. For each edge, all targets are actually nominated by the voter."]
#[doc = "5. Has correct self-votes."]
#[doc = ""]
#[doc = "A solutions score is consisted of 3 parameters:"]
#[doc = ""]
#[doc = "1. `min { support.total }` for each support of a winner. This value should be maximized."]
#[doc = "2. `sum { support.total }` for each support of a winner. This value should be minimized."]
#[doc = "3. `sum { support.total^2 }` for each support of a winner. This value should be"]
#[doc = " minimized (to ensure less variance)"]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "The transaction is assumed to be the longest path, a better solution."]
#[doc = " - Initial solution is almost the same."]
#[doc = " - Worse solution is retraced in pre-dispatch-checks which sets its own weight."]
#[doc = "# </weight>"]
pub fn submit_election_solution(
&self,
winners: Vec<u16>,
compact: pallet_staking::CompactAssignments,
score: sp_npos_elections::ElectionScore,
era: u32,
size: pallet_staking::ElectionSize,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::submit_election_solution {
winners,
compact,
score,
era,
size,
},
))
}
#[doc = "Unsigned version of `submit_election_solution`."]
#[doc = ""]
#[doc = "Note that this must pass the [`ValidateUnsigned`] check which only allows transactions"]
#[doc = "from the local node to be included. In other words, only the block author can include a"]
#[doc = "transaction in the block."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "See [`submit_election_solution`]."]
#[doc = "# </weight>"]
pub fn submit_election_solution_unsigned(
&self,
winners: Vec<u16>,
compact: pallet_staking::CompactAssignments,
score: sp_npos_elections::ElectionScore,
era: u32,
size: pallet_staking::ElectionSize,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::submit_election_solution_unsigned {
winners,
compact,
score,
era,
size,
},
))
}
#[doc = "System version of `payout_stakers()`. Only be called by the root origin."]
pub fn payout_stakers_by_system(
&self,
validator_stash: ::polymesh_api_client::sp_core::crypto::AccountId32,
era: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::payout_stakers_by_system {
validator_stash,
era,
},
))
}
#[doc = "Switch slashing status on the basis of given `SlashingSwitch`. Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - AccountId of root."]
#[doc = "* slashing_switch - Switch used to set the targets for slashing."]
pub fn change_slashing_allowed_for(
&self,
slashing_switch: pallet_staking::SlashingSwitch,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::change_slashing_allowed_for { slashing_switch },
))
}
#[doc = "Update the intended validator count for a given DID."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin which must be the required origin for adding a potential validator."]
#[doc = "* identity to add as a validator."]
#[doc = "* new_intended_count New value of intended count."]
pub fn update_permissioned_validator_intended_count(
&self,
identity: polymesh_primitives::identity_id::IdentityId,
new_intended_count: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Staking(
types::pallet_staking::Call::update_permissioned_validator_intended_count {
identity,
new_intended_count,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Number of eras to keep in history."]
#[doc = ""]
#[doc = " Information is kept for eras in `[current_era - history_depth; current_era]`."]
#[doc = ""]
#[doc = " Must be more than the number of eras delayed by session otherwise. I.e. active era must"]
#[doc = " always be in history. I.e. `active_era > current_era - history_depth` must be"]
#[doc = " guaranteed."]
pub async fn history_depth(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 172u8, 10u8, 44u8, 191u8, 142u8, 53u8, 95u8, 94u8, 166u8, 203u8, 45u8,
232u8, 114u8, 123u8, 251u8, 12u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[84u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The ideal number of staking participants."]
pub async fn validator_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 19u8, 142u8, 113u8, 97u8, 36u8, 145u8, 25u8, 45u8, 104u8, 222u8, 171u8,
126u8, 111u8, 86u8, 63u8, 225u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Minimum number of staking participants before emergency conditions are imposed."]
pub async fn minimum_validator_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 180u8, 154u8, 39u8, 56u8, 238u8, 179u8, 8u8, 150u8, 170u8, 203u8, 139u8,
63u8, 180u8, 100u8, 113u8, 189u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Any validators that may never be slashed or forcibly kicked. It's a Vec since they're"]
#[doc = " easy to initialize and the performance hit is minimal (we expect no more than four"]
#[doc = " invulnerables) and restricted to testnets."]
pub async fn invulnerables(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 85u8, 121u8, 41u8, 127u8, 77u8, 251u8, 150u8, 9u8, 231u8, 228u8, 194u8,
235u8, 171u8, 156u8, 228u8, 10u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<::polymesh_api_client::sp_core::crypto::AccountId32>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Map from all locked \"stash\" accounts to the controller account."]
pub async fn bonded(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 62u8, 209u8, 75u8, 69u8, 237u8, 32u8, 208u8, 84u8, 240u8, 94u8, 55u8,
226u8, 84u8, 44u8, 254u8, 112u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Map from all (unlocked) \"controller\" accounts to the info regarding the staking."]
pub async fn ledger(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<
pallet_staking::StakingLedger<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 66u8, 42u8, 219u8, 87u8, 159u8, 29u8, 191u8, 79u8, 56u8, 134u8, 197u8,
207u8, 163u8, 187u8, 140u8, 196u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Where the reward payment should be made. Keyed by stash."]
pub async fn payee(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
pallet_staking::RewardDestination<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 146u8, 32u8, 225u8, 114u8, 190u8, 211u8, 22u8, 96u8, 95u8, 115u8, 241u8,
255u8, 123u8, 74u8, 222u8, 152u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_staking::RewardDestination<
::polymesh_api_client::sp_core::crypto::AccountId32,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " The map from (wannabe) validator stash key to the preferences of that validator."]
pub async fn validators(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<pallet_staking::ValidatorPrefs> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 136u8, 220u8, 222u8, 147u8, 76u8, 101u8, 130u8, 39u8, 238u8, 29u8, 250u8,
252u8, 214u8, 225u8, 105u8, 3u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8];
<pallet_staking::ValidatorPrefs>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The map from nominator stash key to the set of stash keys of all validators to nominate."]
pub async fn nominators(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<pallet_staking::Nominations<::polymesh_api_client::sp_core::crypto::AccountId32>>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 156u8, 106u8, 99u8, 127u8, 98u8, 174u8, 42u8, 241u8, 199u8, 227u8, 30u8,
237u8, 126u8, 150u8, 190u8, 4u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The current era index."]
#[doc = ""]
#[doc = " This is the latest planned era, depending on how the Session pallet queues the validator"]
#[doc = " set, it might be active or not."]
pub async fn current_era(&self) -> ::polymesh_api_client::error::Result<Option<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 11u8, 106u8, 69u8, 50u8, 30u8, 250u8, 233u8, 42u8, 234u8, 21u8, 224u8,
116u8, 14u8, 199u8, 175u8, 231u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The active era information, it holds index and start."]
#[doc = ""]
#[doc = " The active era is the era being currently rewarded. Validator set of this era must be"]
#[doc = " equal to [`SessionInterface::validators`]."]
pub async fn active_era(
&self,
) -> ::polymesh_api_client::error::Result<Option<pallet_staking::ActiveEraInfo>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 72u8, 125u8, 244u8, 100u8, 228u8, 74u8, 83u8, 75u8, 166u8, 176u8, 203u8,
179u8, 36u8, 7u8, 181u8, 135u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The session index at which the era start for the last `HISTORY_DEPTH` eras."]
#[doc = ""]
#[doc = " Note: This tracks the starting session (i.e. session index when era start being active)"]
#[doc = " for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`."]
pub async fn eras_start_session_index(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<Option<u32>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 173u8, 129u8, 28u8, 214u8, 90u8, 71u8, 13u8, 220u8, 95u8, 29u8, 98u8,
143u8, 240u8, 85u8, 9u8, 130u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Exposure of validator at era."]
#[doc = ""]
#[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."]
#[doc = ""]
#[doc = " Is it removed after `HISTORY_DEPTH` eras."]
#[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."]
pub async fn eras_stakers(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
pallet_staking::Exposure<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 139u8, 222u8, 10u8, 14u8, 168u8, 134u8, 70u8, 5u8, 227u8, 182u8, 142u8,
217u8, 203u8, 45u8, 160u8, 27u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8];
<pallet_staking::Exposure<
::polymesh_api_client::sp_core::crypto::AccountId32,
u128,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Clipped Exposure of validator at era."]
#[doc = ""]
#[doc = " This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the"]
#[doc = " `T::MaxNominatorRewardedPerValidator` biggest stakers."]
#[doc = " (Note: the field `total` and `own` of the exposure remains unchanged)."]
#[doc = " This is used to limit the i/o cost for the nominator payout."]
#[doc = ""]
#[doc = " This is keyed fist by the era index to allow bulk deletion and then the stash account."]
#[doc = ""]
#[doc = " Is it removed after `HISTORY_DEPTH` eras."]
#[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."]
pub async fn eras_stakers_clipped(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
pallet_staking::Exposure<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 66u8, 152u8, 43u8, 157u8, 108u8, 122u8, 204u8, 153u8, 250u8, 169u8, 9u8,
76u8, 145u8, 35u8, 114u8, 194u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8];
<pallet_staking::Exposure<
::polymesh_api_client::sp_core::crypto::AccountId32,
u128,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Similar to `ErasStakers`, this holds the preferences of validators."]
#[doc = ""]
#[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."]
#[doc = ""]
#[doc = " Is it removed after `HISTORY_DEPTH` eras."]
pub async fn eras_validator_prefs(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<pallet_staking::ValidatorPrefs> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 104u8, 45u8, 185u8, 45u8, 222u8, 32u8, 161u8, 13u8, 150u8, 208u8, 15u8,
240u8, 233u8, 226u8, 33u8, 192u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8];
<pallet_staking::ValidatorPrefs>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The total validator era payout for the last `HISTORY_DEPTH` eras."]
#[doc = ""]
#[doc = " Eras that haven't finished yet or has been removed doesn't have reward."]
pub async fn eras_validator_reward(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<Option<u128>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 126u8, 110u8, 210u8, 238u8, 80u8, 124u8, 123u8, 68u8, 65u8, 213u8, 158u8,
77u8, 237u8, 68u8, 184u8, 162u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Rewards for the last `HISTORY_DEPTH` eras."]
#[doc = " If reward hasn't been set or has been removed then 0 reward is returned."]
pub async fn eras_reward_points(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<
pallet_staking::EraRewardPoints<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 128u8, 204u8, 101u8, 116u8, 40u8, 22u8, 113u8, 178u8, 153u8, 193u8, 114u8,
125u8, 122u8, 198u8, 140u8, 171u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8];
<pallet_staking::EraRewardPoints<
::polymesh_api_client::sp_core::crypto::AccountId32,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " The total amount staked for the last `HISTORY_DEPTH` eras."]
#[doc = " If total hasn't been set or has been removed then 0 stake is returned."]
pub async fn eras_total_stake(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 161u8, 65u8, 196u8, 254u8, 103u8, 194u8, 209u8, 31u8, 74u8, 16u8, 198u8,
172u8, 167u8, 167u8, 154u8, 4u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Mode of era forcing."]
pub async fn force_era(
&self,
) -> ::polymesh_api_client::error::Result<pallet_staking::Forcing> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 247u8, 218u8, 208u8, 49u8, 115u8, 36u8, 174u8, 202u8, 232u8, 116u8, 75u8,
135u8, 252u8, 149u8, 242u8, 243u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_staking::Forcing>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The percentage of the slash that is distributed to reporters."]
#[doc = ""]
#[doc = " The rest of the slashed value is handled by the `Slash`."]
pub async fn slash_reward_fraction(
&self,
) -> ::polymesh_api_client::error::Result<sp_arithmetic::per_things::Perbill> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 194u8, 154u8, 3u8, 16u8, 225u8, 187u8, 69u8, 210u8, 12u8, 172u8, 231u8,
124u8, 203u8, 98u8, 201u8, 125u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<sp_arithmetic::per_things::Perbill>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The amount of currency given to reporters of a slash event which was"]
#[doc = " canceled by extraordinary circumstances (e.g. governance)."]
pub async fn canceled_slash_payout(&self) -> ::polymesh_api_client::error::Result<u128> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 40u8, 220u8, 203u8, 85u8, 155u8, 149u8, 196u8, 1u8, 104u8, 161u8, 178u8,
105u8, 101u8, 129u8, 181u8, 167u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All unapplied slashes that are queued for later."]
pub async fn unapplied_slashes(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<
Vec<
pallet_staking::UnappliedSlash<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 4u8, 40u8, 36u8, 23u8, 10u8, 93u8, 180u8, 56u8, 31u8, 227u8, 57u8, 80u8,
57u8, 202u8, 189u8, 36u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<
pallet_staking::UnappliedSlash<
::polymesh_api_client::sp_core::crypto::AccountId32,
u128,
>,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " A mapping from still-bonded eras to the first session index of that era."]
#[doc = ""]
#[doc = " Must contains information for eras for the range:"]
#[doc = " `[active_era - bounding_duration; active_era]`"]
pub async fn bonded_eras(&self) -> ::polymesh_api_client::error::Result<Vec<(u32, u32)>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 234u8, 7u8, 222u8, 43u8, 143u8, 1u8, 5u8, 22u8, 220u8, 163u8, 247u8, 239u8,
82u8, 247u8, 172u8, 90u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(u32, u32)>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All slashing events on validators, mapped by era to the highest slash proportion"]
#[doc = " and slash value of the era."]
pub async fn validator_slash_in_era(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Option<(sp_arithmetic::per_things::Perbill, u128)>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 173u8, 110u8, 21u8, 238u8, 123u8, 253u8, 93u8, 85u8, 235u8, 161u8, 1u8,
36u8, 135u8, 211u8, 175u8, 84u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " All slashing events on nominators, mapped by era to the highest slash value of the era."]
pub async fn nominator_slash_in_era(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Option<u128>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 129u8, 80u8, 8u8, 232u8, 33u8, 11u8, 109u8, 108u8, 247u8, 1u8, 226u8, 46u8,
91u8, 242u8, 113u8, 65u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Slashing spans for stash accounts."]
pub async fn slashing_spans(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Option<pallet_staking::slashing::SlashingSpans>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 171u8, 106u8, 33u8, 43u8, 192u8, 138u8, 86u8, 3u8, 130u8, 143u8, 51u8,
249u8, 14u8, 196u8, 161u8, 57u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Records information about the maximum slash of a stash within a slashing span,"]
#[doc = " as well as how much reward has been paid out."]
pub async fn span_slash(
&self,
key_0: (::polymesh_api_client::sp_core::crypto::AccountId32, u32),
) -> ::polymesh_api_client::error::Result<pallet_staking::slashing::SpanRecord<u128>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 230u8, 47u8, 111u8, 121u8, 126u8, 190u8, 145u8, 56u8, 223u8, 206u8, 217u8,
66u8, 151u8, 127u8, 234u8, 80u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_staking::slashing::SpanRecord<u128>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The earliest era for which we have a pending, unapplied slash."]
pub async fn earliest_unapplied_slash(
&self,
) -> ::polymesh_api_client::error::Result<Option<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 96u8, 91u8, 44u8, 4u8, 107u8, 85u8, 9u8, 3u8, 127u8, 63u8, 21u8, 139u8,
151u8, 65u8, 208u8, 55u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Snapshot of validators at the beginning of the current election window. This should only"]
#[doc = " have a value when [`EraElectionStatus`] == `ElectionStatus::Open(_)`."]
pub async fn snapshot_validators(
&self,
) -> ::polymesh_api_client::error::Result<
Option<Vec<::polymesh_api_client::sp_core::crypto::AccountId32>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 126u8, 0u8, 108u8, 38u8, 214u8, 156u8, 76u8, 151u8, 246u8, 86u8, 72u8,
171u8, 129u8, 90u8, 39u8, 68u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Snapshot of nominators at the beginning of the current election window. This should only"]
#[doc = " have a value when [`EraElectionStatus`] == `ElectionStatus::Open(_)`."]
pub async fn snapshot_nominators(
&self,
) -> ::polymesh_api_client::error::Result<
Option<Vec<::polymesh_api_client::sp_core::crypto::AccountId32>>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 247u8, 226u8, 87u8, 201u8, 67u8, 111u8, 230u8, 126u8, 44u8, 77u8, 157u8,
76u8, 237u8, 125u8, 69u8, 76u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The next validator set. At the end of an era, if this is available (potentially from the"]
#[doc = " result of an offchain worker), it is immediately used. Otherwise, the on-chain election"]
#[doc = " is executed."]
pub async fn queued_elected(
&self,
) -> ::polymesh_api_client::error::Result<
Option<
pallet_staking::ElectionResult<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 80u8, 109u8, 34u8, 179u8, 53u8, 5u8, 182u8, 127u8, 82u8, 93u8, 129u8,
189u8, 0u8, 91u8, 22u8, 135u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The score of the current [`QueuedElected`]."]
pub async fn queued_score(
&self,
) -> ::polymesh_api_client::error::Result<Option<sp_npos_elections::ElectionScore>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 179u8, 182u8, 147u8, 10u8, 243u8, 119u8, 186u8, 116u8, 247u8, 232u8, 55u8,
158u8, 68u8, 178u8, 199u8, 127u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Flag to control the execution of the offchain election. When `Open(_)`, we accept"]
#[doc = " solutions to be submitted."]
pub async fn era_election_status(
&self,
) -> ::polymesh_api_client::error::Result<pallet_staking::ElectionStatus<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 225u8, 121u8, 21u8, 119u8, 228u8, 239u8, 203u8, 8u8, 63u8, 220u8, 60u8,
178u8, 30u8, 133u8, 178u8, 228u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_staking::ElectionStatus<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " True if the current **planned** session is final. Note that this does not take era"]
#[doc = " forcing into account."]
pub async fn is_current_session_final(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 163u8, 246u8, 221u8, 41u8, 154u8, 211u8, 175u8, 166u8, 133u8, 128u8, 162u8,
90u8, 115u8, 246u8, 234u8, 191u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Entities that are allowed to run operator/validator nodes."]
pub async fn permissioned_identity(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<Option<pallet_staking::PermissionedIdentityPrefs>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 43u8, 183u8, 3u8, 134u8, 104u8, 250u8, 251u8, 247u8, 56u8, 149u8, 104u8,
159u8, 128u8, 103u8, 131u8, 19u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Every validator has commission that should be in the range [0, Cap]."]
pub async fn validator_commission_cap(
&self,
) -> ::polymesh_api_client::error::Result<sp_arithmetic::per_things::Perbill> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 153u8, 11u8, 115u8, 89u8, 10u8, 47u8, 61u8, 123u8, 111u8, 250u8, 62u8, 6u8,
47u8, 110u8, 11u8, 162u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<sp_arithmetic::per_things::Perbill>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The minimum amount with which a validator can bond."]
pub async fn minimum_bond_threshold(&self) -> ::polymesh_api_client::error::Result<u128> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 241u8, 1u8, 231u8, 252u8, 155u8, 88u8, 8u8, 104u8, 205u8, 239u8, 247u8,
179u8, 33u8, 130u8, 44u8, 147u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
pub async fn slashing_allowed_for(
&self,
) -> ::polymesh_api_client::error::Result<pallet_staking::SlashingSwitch> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 231u8, 118u8, 103u8, 194u8, 236u8, 24u8, 122u8, 5u8, 185u8, 143u8, 2u8,
137u8, 239u8, 72u8, 161u8, 77u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[2u8];
<pallet_staking::SlashingSwitch>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " True if network has been upgraded to this version."]
#[doc = " Storage version of the pallet."]
#[doc = ""]
#[doc = " This is set to v6.0.1 for new networks."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_staking::Releases> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 62u8, 73u8, 7u8, 247u8, 22u8, 172u8, 137u8, 182u8, 52u8, 125u8, 21u8, 236u8, 236u8,
237u8, 202u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8, 169u8,
77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[6u8];
<pallet_staking::Releases>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod offences {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The primary structure that holds all offence records keyed by report identifiers."]
pub async fn reports(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<
Option<
sp_staking::offence::OffenceDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
(
::polymesh_api_client::sp_core::crypto::AccountId32,
pallet_staking::Exposure<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
),
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
213u8, 196u8, 27u8, 82u8, 163u8, 113u8, 170u8, 54u8, 201u8, 37u8, 76u8, 227u8, 67u8,
36u8, 242u8, 165u8, 178u8, 98u8, 233u8, 35u8, 143u8, 164u8, 2u8, 84u8, 12u8, 37u8, 11u8,
195u8, 245u8, 214u8, 24u8, 141u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A vector of reports of the same kind that happened at the same time slot."]
pub async fn concurrent_reports_index(
&self,
key_0: [u8; 16usize],
key_1: Vec<u8>,
) -> ::polymesh_api_client::error::Result<Vec<primitive_types::H256>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
213u8, 196u8, 27u8, 82u8, 163u8, 113u8, 170u8, 54u8, 201u8, 37u8, 76u8, 227u8, 67u8,
36u8, 242u8, 165u8, 96u8, 220u8, 142u8, 240u8, 0u8, 205u8, 189u8, 200u8, 89u8, 221u8,
53u8, 34u8, 41u8, 206u8, 22u8, 251u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<primitive_types::H256>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Enumerates all reports of a kind along with the time they happened."]
#[doc = ""]
#[doc = " All reports are sorted by the time of offence."]
#[doc = ""]
#[doc = " Note that the actual type of this mapping is `Vec<u8>`, this is because values of"]
#[doc = " different types are not supported at the moment so we are doing the manual serialization."]
pub async fn reports_by_kind_index(
&self,
key_0: [u8; 16usize],
) -> ::polymesh_api_client::error::Result<Vec<u8>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
213u8, 196u8, 27u8, 82u8, 163u8, 113u8, 170u8, 54u8, 201u8, 37u8, 76u8, 227u8, 67u8,
36u8, 242u8, 165u8, 53u8, 137u8, 192u8, 218u8, 197u8, 13u8, 166u8, 251u8, 58u8, 54u8,
17u8, 235u8, 50u8, 188u8, 210u8, 126u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u8>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod session {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Sets the session key(s) of the function caller to `keys`."]
#[doc = "Allows an account to set its session key prior to becoming a validator."]
#[doc = "This doesn't take effect until the next session."]
#[doc = ""]
#[doc = "The dispatch origin of this function must be signed."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(1)`. Actual cost depends on the number of length of"]
#[doc = " `T::Keys::key_ids()` which is fixed."]
#[doc = "- DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys`"]
#[doc = "- DbWrites: `origin account`, `NextKeys`"]
#[doc = "- DbReads per key id: `KeyOwner`"]
#[doc = "- DbWrites per key id: `KeyOwner`"]
#[doc = "# </weight>"]
pub fn set_keys(
&self,
keys: polymesh_runtime_develop::runtime::SessionKeys,
proof: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Session(
types::pallet_session::pallet::Call::set_keys { keys, proof },
))
}
#[doc = "Removes any session key(s) of the function caller."]
#[doc = ""]
#[doc = "This doesn't take effect until the next session."]
#[doc = ""]
#[doc = "The dispatch origin of this function must be Signed and the account must be either be"]
#[doc = "convertible to a validator ID using the chain's typical addressing system (this usually"]
#[doc = "means being a controller account) or directly convertible into a validator ID (which"]
#[doc = "usually means being a stash account)."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(1)` in number of key types. Actual cost depends on the number of length"]
#[doc = " of `T::Keys::key_ids()` which is fixed."]
#[doc = "- DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account`"]
#[doc = "- DbWrites: `NextKeys`, `origin account`"]
#[doc = "- DbWrites per key id: `KeyOwner`"]
#[doc = "# </weight>"]
pub fn purge_keys(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Session(
types::pallet_session::pallet::Call::purge_keys,
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The current set of validators."]
pub async fn validators(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 136u8, 220u8, 222u8, 147u8, 76u8, 101u8, 130u8, 39u8, 238u8, 29u8,
250u8, 252u8, 214u8, 225u8, 105u8, 3u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<::polymesh_api_client::sp_core::crypto::AccountId32>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Current index of the session."]
pub async fn current_index(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 114u8, 118u8, 56u8, 0u8, 163u8, 106u8, 153u8, 253u8, 252u8, 124u8,
16u8, 246u8, 65u8, 95u8, 110u8, 230u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " True if the underlying economic identities or weighting behind the validators"]
#[doc = " has changed in the queued validator set."]
pub async fn queued_changed(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 148u8, 80u8, 191u8, 164u8, 185u8, 106u8, 63u8, 167u8, 163u8, 200u8,
244u8, 13u8, 166u8, 191u8, 50u8, 225u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The queued keys for the next session. When the next session begins, these keys"]
#[doc = " will be used to determine the validator's session keys."]
pub async fn queued_keys(
&self,
) -> ::polymesh_api_client::error::Result<
Vec<(
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::SessionKeys,
)>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 224u8, 205u8, 208u8, 98u8, 230u8, 234u8, 242u8, 66u8, 149u8, 173u8,
76u8, 207u8, 196u8, 29u8, 70u8, 9u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(
::polymesh_api_client::sp_core::crypto::AccountId32,
polymesh_runtime_develop::runtime::SessionKeys,
)>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Indices of disabled validators."]
#[doc = ""]
#[doc = " The vec is always kept sorted so that we can find whether a given validator is"]
#[doc = " disabled using binary search. It gets cleared when `on_session_ending` returns"]
#[doc = " a new set of identities."]
pub async fn disabled_validators(&self) -> ::polymesh_api_client::error::Result<Vec<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 90u8, 154u8, 116u8, 190u8, 74u8, 90u8, 125u8, 246u8, 11u8, 1u8,
166u8, 192u8, 50u8, 108u8, 94u8, 32u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The next session keys for a validator."]
pub async fn next_keys(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_runtime_develop::runtime::SessionKeys>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 76u8, 1u8, 78u8, 107u8, 248u8, 184u8, 194u8, 192u8, 17u8, 231u8,
41u8, 11u8, 133u8, 105u8, 107u8, 179u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The owner of a key. The key is the `KeyTypeId` + the encoded key."]
pub async fn key_owner(
&self,
key_0: (sp_core::crypto::KeyTypeId, Vec<u8>),
) -> ::polymesh_api_client::error::Result<
Option<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
206u8, 197u8, 7u8, 13u8, 96u8, 157u8, 211u8, 73u8, 127u8, 114u8, 189u8, 224u8, 127u8,
201u8, 107u8, 160u8, 114u8, 99u8, 128u8, 64u8, 70u8, 131u8, 252u8, 137u8, 232u8, 35u8,
52u8, 80u8, 200u8, 170u8, 25u8, 80u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod authority_discovery {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod grandpa {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Report voter equivocation/misbehavior. This method will verify the"]
#[doc = "equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence"]
#[doc = "will be reported."]
pub fn report_equivocation(
&self,
equivocation_proof: sp_finality_grandpa::EquivocationProof<primitive_types::H256, u32>,
key_owner_proof: sp_session::MembershipProof,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Grandpa(
types::pallet_grandpa::pallet::Call::report_equivocation {
equivocation_proof: ::std::boxed::Box::new(equivocation_proof),
key_owner_proof,
},
))
}
#[doc = "Report voter equivocation/misbehavior. This method will verify the"]
#[doc = "equivocation proof and validate the given key ownership proof"]
#[doc = "against the extracted offender. If both are valid, the offence"]
#[doc = "will be reported."]
#[doc = ""]
#[doc = "This extrinsic must be called unsigned and it is expected that only"]
#[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"]
#[doc = "if the block author is defined it will be defined as the equivocation"]
#[doc = "reporter."]
pub fn report_equivocation_unsigned(
&self,
equivocation_proof: sp_finality_grandpa::EquivocationProof<primitive_types::H256, u32>,
key_owner_proof: sp_session::MembershipProof,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Grandpa(
types::pallet_grandpa::pallet::Call::report_equivocation_unsigned {
equivocation_proof: ::std::boxed::Box::new(equivocation_proof),
key_owner_proof,
},
))
}
#[doc = "Note that the current authority set of the GRANDPA finality gadget has"]
#[doc = "stalled. This will trigger a forced authority set change at the beginning"]
#[doc = "of the next session, to be enacted `delay` blocks after that. The delay"]
#[doc = "should be high enough to safely assume that the block signalling the"]
#[doc = "forced change will not be re-orged (e.g. 1000 blocks). The GRANDPA voters"]
#[doc = "will start the new authority set using the given finalized block as base."]
#[doc = "Only callable by root."]
pub fn note_stalled(
&self,
delay: u32,
best_finalized_block_number: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Grandpa(
types::pallet_grandpa::pallet::Call::note_stalled {
delay,
best_finalized_block_number,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " State of the current authority set."]
pub async fn state(
&self,
) -> ::polymesh_api_client::error::Result<pallet_grandpa::StoredState<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 243u8, 154u8, 16u8, 127u8, 45u8, 141u8, 56u8, 84u8, 201u8, 171u8,
169u8, 176u8, 33u8, 244u8, 61u8, 156u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_grandpa::StoredState<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Pending change: (signaled at, scheduled change)."]
pub async fn pending_change(
&self,
) -> ::polymesh_api_client::error::Result<Option<pallet_grandpa::StoredPendingChange<u32>>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 47u8, 246u8, 89u8, 145u8, 177u8, 201u8, 21u8, 221u8, 108u8, 200u8,
212u8, 130u8, 94u8, 172u8, 252u8, 180u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " next block number where we can force a change."]
pub async fn next_forced(&self) -> ::polymesh_api_client::error::Result<Option<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 1u8, 215u8, 129u8, 129u8, 38u8, 189u8, 155u8, 48u8, 116u8, 128u8,
62u8, 145u8, 244u8, 201u8, 27u8, 89u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " `true` if we are currently stalled."]
pub async fn stalled(&self) -> ::polymesh_api_client::error::Result<Option<(u32, u32)>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 125u8, 221u8, 1u8, 52u8, 97u8, 183u8, 44u8, 48u8, 4u8, 249u8, 192u8,
202u8, 63u8, 175u8, 158u8, 190u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The number of changes (both in terms of keys and underlying economic responsibilities)"]
#[doc = " in the \"set\" of Grandpa validators from genesis."]
pub async fn current_set_id(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 138u8, 45u8, 9u8, 70u8, 62u8, 255u8, 204u8, 120u8, 162u8, 45u8,
117u8, 185u8, 203u8, 135u8, 223u8, 252u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " A mapping from grandpa set ID to the index of the *most recent* session for which its"]
#[doc = " members were responsible."]
#[doc = ""]
#[doc = " TWOX-NOTE: `SetId` is not under user control."]
pub async fn set_id_session(
&self,
key_0: u64,
) -> ::polymesh_api_client::error::Result<Option<u32>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
95u8, 156u8, 196u8, 91u8, 122u8, 0u8, 197u8, 137u8, 147u8, 97u8, 225u8, 198u8, 9u8,
150u8, 120u8, 220u8, 212u8, 124u8, 184u8, 245u8, 50u8, 138u8, 247u8, 67u8, 221u8, 251u8,
54u8, 30u8, 113u8, 128u8, 231u8, 252u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod historical {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod im_online {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "# <weight>"]
#[doc = "- Complexity: `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is"]
#[doc = " length of `heartbeat.network_state.external_address`"]
#[doc = " - `O(K)`: decoding of length `K`"]
#[doc = " - `O(E)`: decoding/encoding of length `E`"]
#[doc = "- DbReads: pallet_session `Validators`, pallet_session `CurrentIndex`, `Keys`,"]
#[doc = " `ReceivedHeartbeats`"]
#[doc = "- DbWrites: `ReceivedHeartbeats`"]
#[doc = "# </weight>"]
pub fn heartbeat(
&self,
heartbeat: pallet_im_online::Heartbeat<u32>,
signature: pallet_im_online::sr25519::app_sr25519::Signature,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::ImOnline(
types::pallet_im_online::pallet::Call::heartbeat {
heartbeat,
signature,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The block number after which it's ok to send heartbeats in the current"]
#[doc = " session."]
#[doc = ""]
#[doc = " At the beginning of each session we set this to a value that should fall"]
#[doc = " roughly in the middle of the session duration. The idea is to first wait for"]
#[doc = " the validators to produce a block in the current session, so that the"]
#[doc = " heartbeat later on will not be necessary."]
#[doc = ""]
#[doc = " This value will only be used as a fallback if we fail to get a proper session"]
#[doc = " progress estimate from `NextSessionRotation`, as those estimates should be"]
#[doc = " more accurate then the value we calculate for `HeartbeatAfter`."]
pub async fn heartbeat_after(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
43u8, 6u8, 175u8, 151u8, 25u8, 172u8, 100u8, 215u8, 85u8, 98u8, 60u8, 218u8, 141u8,
221u8, 155u8, 148u8, 138u8, 161u8, 242u8, 201u8, 132u8, 79u8, 17u8, 2u8, 76u8, 29u8,
32u8, 78u8, 112u8, 90u8, 98u8, 23u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The current set of keys that may issue a heartbeat."]
pub async fn keys(
&self,
) -> ::polymesh_api_client::error::Result<Vec<pallet_im_online::sr25519::app_sr25519::Public>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
43u8, 6u8, 175u8, 151u8, 25u8, 172u8, 100u8, 215u8, 85u8, 98u8, 60u8, 218u8, 141u8,
221u8, 155u8, 148u8, 159u8, 153u8, 162u8, 206u8, 113u8, 31u8, 58u8, 49u8, 178u8, 252u8,
5u8, 96u8, 76u8, 147u8, 241u8, 121u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_im_online::sr25519::app_sr25519::Public>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to"]
#[doc = " `WrapperOpaque<BoundedOpaqueNetworkState>`."]
pub async fn received_heartbeats(
&self,
key_0: u32,
key_1: u32,
) -> ::polymesh_api_client::error::Result<
Option<
frame_support::traits::misc::WrapperOpaque<pallet_im_online::BoundedOpaqueNetworkState>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
43u8, 6u8, 175u8, 151u8, 25u8, 172u8, 100u8, 215u8, 85u8, 98u8, 60u8, 218u8, 141u8,
221u8, 155u8, 148u8, 204u8, 90u8, 26u8, 166u8, 227u8, 113u8, 99u8, 114u8, 243u8, 110u8,
241u8, 3u8, 183u8, 227u8, 174u8, 103u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " For each session index, we keep a mapping of `ValidatorId<T>` to the"]
#[doc = " number of blocks authored by the given authority."]
pub async fn authored_blocks(
&self,
key_0: u32,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u32> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
43u8, 6u8, 175u8, 151u8, 25u8, 172u8, 100u8, 215u8, 85u8, 98u8, 60u8, 218u8, 141u8,
221u8, 155u8, 148u8, 177u8, 195u8, 113u8, 222u8, 217u8, 233u8, 197u8, 101u8, 232u8,
155u8, 167u8, 131u8, 196u8, 213u8, 245u8, 249u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod randomness_collective_flip {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Series of block headers from the last 81 blocks that acts as random seed material. This"]
#[doc = " is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of"]
#[doc = " the oldest hash."]
pub async fn random_material(
&self,
) -> ::polymesh_api_client::error::Result<Vec<primitive_types::H256>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
189u8, 42u8, 82u8, 147u8, 121u8, 71u8, 80u8, 136u8, 211u8, 226u8, 154u8, 145u8, 140u8,
212u8, 120u8, 114u8, 26u8, 57u8, 236u8, 118u8, 123u8, 213u8, 38u8, 145u8, 17u8, 230u8,
73u8, 42u8, 22u8, 117u8, 112u8, 42u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<primitive_types::H256>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod sudo {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB write (event)."]
#[doc = "- Weight of derivative `call` execution + 10,000."]
#[doc = "# </weight>"]
pub fn sudo(
&self,
call: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sudo(
types::pallet_sudo::Call::sudo {
call: ::std::boxed::Box::new(call),
},
))
}
#[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."]
#[doc = "This function does not check the weight of the call, and instead allows the"]
#[doc = "Sudo user to specify the weight of the call."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- The weight of this call is defined by the caller."]
#[doc = "# </weight>"]
pub fn sudo_unchecked_weight(
&self,
call: polymesh_runtime_develop::runtime::Call,
_weight: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sudo(
types::pallet_sudo::Call::sudo_unchecked_weight {
call: ::std::boxed::Box::new(call),
_weight,
},
))
}
#[doc = "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo key."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB change."]
#[doc = "# </weight>"]
pub fn set_key(
&self,
new: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sudo(
types::pallet_sudo::Call::set_key { new },
))
}
#[doc = "Authenticates the sudo key and dispatches a function call with `Signed` origin from"]
#[doc = "a given account."]
#[doc = ""]
#[doc = "The dispatch origin for this call must be _Signed_."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "- O(1)."]
#[doc = "- Limited storage reads."]
#[doc = "- One DB write (event)."]
#[doc = "- Weight of derivative `call` execution + 10,000."]
#[doc = "# </weight>"]
pub fn sudo_as(
&self,
who: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
call: polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sudo(
types::pallet_sudo::Call::sudo_as {
who,
call: ::std::boxed::Box::new(call),
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The `AccountId` of the sudo key."]
pub async fn key(
&self,
) -> ::polymesh_api_client::error::Result<::polymesh_api_client::sp_core::crypto::AccountId32>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
92u8, 13u8, 17u8, 118u8, 165u8, 104u8, 193u8, 249u8, 41u8, 68u8, 52u8, 13u8, 191u8,
237u8, 158u8, 156u8, 83u8, 14u8, 188u8, 167u8, 3u8, 200u8, 89u8, 16u8, 231u8, 22u8, 76u8,
183u8, 209u8, 201u8, 228u8, 123u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<::polymesh_api_client::sp_core::crypto::AccountId32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod asset {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Registers a new ticker or extends validity of an existing ticker."]
#[doc = "NB: Ticker validity does not get carry forward when renewing ticker."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `ticker` ticker to register."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn register_ticker(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::register_ticker { ticker },
))
}
#[doc = "Accepts a ticker transfer."]
#[doc = ""]
#[doc = "Consumes the authorization `auth_id` (see `pallet_identity::consume_auth`)."]
#[doc = "NB: To reject the transfer, call remove auth function in identity module."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `auth_id` Authorization ID of ticker transfer authorization."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AuthorizationError::BadType` if `auth_id` is not a valid ticket transfer authorization."]
#[doc = ""]
pub fn accept_ticker_transfer(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::accept_ticker_transfer { auth_id },
))
}
#[doc = "This function is used to accept a token ownership transfer."]
#[doc = "NB: To reject the transfer, call remove auth function in identity module."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` It contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `auth_id` Authorization ID of the token ownership transfer authorization."]
pub fn accept_asset_ownership_transfer(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::accept_asset_ownership_transfer { auth_id },
))
}
#[doc = "Initializes a new security token, with the initiating account as its owner."]
#[doc = "The total supply will initially be zero. To mint tokens, use `issue`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - contains the secondary key of the caller (i.e. who signed the transaction to execute this function)."]
#[doc = "* `name` - the name of the token."]
#[doc = "* `ticker` - the ticker symbol of the token."]
#[doc = "* `divisible` - a boolean to identify the divisibility status of the token."]
#[doc = "* `asset_type` - the asset type."]
#[doc = "* `identifiers` - a vector of asset identifiers."]
#[doc = "* `funding_round` - name of the funding round."]
#[doc = "* `disable_iu` - whether or not investor uniqueness enforcement should be disabled."]
#[doc = " This cannot be changed after creating the asset."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `InvalidAssetIdentifier` if any of `identifiers` are invalid."]
#[doc = "- `MaxLengthOfAssetNameExceeded` if `name`'s length exceeds `T::AssetNameMaxLength`."]
#[doc = "- `FundingRoundNameMaxLengthExceeded` if the name of the funding round is longer that"]
#[doc = "`T::FundingRoundNameMaxLength`."]
#[doc = "- `AssetAlreadyCreated` if asset was already created."]
#[doc = "- `TickerTooLong` if `ticker`'s length is greater than `config.max_ticker_length` chain"]
#[doc = "parameter."]
#[doc = "- `TickerNotAscii` if `ticker` is not yet registered, and contains non-ascii printable characters (from code 32 to 126) or any character after first occurrence of `\\0`."]
#[doc = ""]
#[doc = "## Permissions"]
#[doc = "* Portfolio"]
pub fn create_asset(
&self,
name: polymesh_primitives::asset::AssetName,
ticker: polymesh_primitives::ticker::Ticker,
divisible: bool,
asset_type: polymesh_primitives::asset::AssetType,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
funding_round: Option<polymesh_primitives::asset::FundingRoundName>,
disable_iu: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::create_asset {
name,
ticker,
divisible,
asset_type,
identifiers,
funding_round,
disable_iu,
},
))
}
#[doc = "Freezes transfers and minting of a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AlreadyFrozen` if `ticker` is already frozen."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn freeze(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::freeze { ticker },
))
}
#[doc = "Unfreezes transfers and minting of a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the frozen token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `NotFrozen` if `ticker` is not frozen yet."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn unfreeze(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::unfreeze { ticker },
))
}
#[doc = "Renames a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - the secondary key of the sender."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `name` - the new name of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `MaxLengthOfAssetNameExceeded` if length of `name` is greater than"]
#[doc = "`T::AssetNameMaxLength`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn rename_asset(
&self,
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset::AssetName,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::rename_asset { ticker, name },
))
}
#[doc = "Issue, or mint, new tokens to the caller,"]
#[doc = "which must be an authorized external agent."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` of the token."]
#[doc = "* `amount` of tokens that get issued."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
pub fn issue(
&self,
ticker: polymesh_primitives::ticker::Ticker,
amount: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::issue { ticker, amount },
))
}
#[doc = "Redeems existing tokens by reducing the balance of the caller's default portfolio and the total supply of the token"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `value` Amount of tokens to redeem."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `Unauthorized` If called by someone without the appropriate external agent permissions"]
#[doc = "- `InvalidGranularity` If the amount is not divisible by 10^6 for non-divisible tokens"]
#[doc = "- `InsufficientPortfolioBalance` If the caller's default portfolio doesn't have enough free balance"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
pub fn redeem(
&self,
ticker: polymesh_primitives::ticker::Ticker,
value: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::redeem { ticker, value },
))
}
#[doc = "Makes an indivisible token divisible."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `AssetAlreadyDivisible` if `ticker` is already divisible."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn make_divisible(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::make_divisible { ticker },
))
}
#[doc = "Add documents for a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `docs` Documents to be attached to `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn add_documents(
&self,
docs: Vec<polymesh_primitives::document::Document>,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::add_documents { docs, ticker },
))
}
#[doc = "Remove documents for a given token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `ids` Documents ids to be removed from `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn remove_documents(
&self,
ids: Vec<polymesh_primitives::document::DocumentId>,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::remove_documents { ids, ticker },
))
}
#[doc = "Sets the name of the current funding round."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `name` - the desired name of the current funding round."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `FundingRoundNameMaxLengthExceeded` if length of `name` is greater than"]
#[doc = "`T::FundingRoundNameMaxLength`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn set_funding_round(
&self,
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset::FundingRoundName,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::set_funding_round { ticker, name },
))
}
#[doc = "Updates the asset identifiers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` - a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` - the ticker of the token."]
#[doc = "* `identifiers` - the asset identifiers to be updated in the form of a vector of pairs"]
#[doc = " of `IdentifierType` and `AssetIdentifier` value."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `InvalidAssetIdentifier` if `identifiers` contains any invalid identifier."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn update_identifiers(
&self,
ticker: polymesh_primitives::ticker::Ticker,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::update_identifiers {
ticker,
identifiers,
},
))
}
#[doc = "Claim a systematically reserved Polymath Classic (PMC) `ticker`"]
#[doc = "and transfer it to the `origin`'s identity."]
#[doc = ""]
#[doc = "To verify that the `origin` is in control of the Ethereum account on the books,"]
#[doc = "an `ethereum_signature` containing the `origin`'s DID as the message"]
#[doc = "must be provided by that Ethereum account."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchClassicTicker` if this is not a systematically reserved PMC ticker."]
#[doc = "- `TickerAlreadyRegistered` if the ticker was already registered, e.g., by `origin`."]
#[doc = "- `TickerRegistrationExpired` if the ticker's registration has expired."]
#[doc = "- `BadOrigin` if not signed."]
#[doc = "- `InvalidEthereumSignature` if the `ethereum_signature` is not valid."]
#[doc = "- `NotAnOwner` if the ethereum account is not the owner of the PMC ticker."]
pub fn claim_classic_ticker(
&self,
ticker: polymesh_primitives::ticker::Ticker,
ethereum_signature: polymesh_primitives::ethereum::EcdsaSignature,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::claim_classic_ticker {
ticker,
ethereum_signature,
},
))
}
#[doc = "Reserve a Polymath Classic (PMC) ticker."]
#[doc = "Must be called by root, and assigns the ticker to a systematic DID."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` which must be root."]
#[doc = "* `classic_ticker_import` specification for the PMC ticker."]
#[doc = "* `contract_did` to reserve the ticker to if `classic_ticker_import.is_contract` holds."]
#[doc = "* `config` to use for expiry and ticker length."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetAlreadyCreated` if `classic_ticker_import.ticker` was created as an asset."]
#[doc = "* `TickerTooLong` if the `config` considers the `classic_ticker_import.ticker` too long."]
#[doc = "* `TickerAlreadyRegistered` if `classic_ticker_import.ticker` was already registered."]
pub fn reserve_classic_ticker(
&self,
classic_ticker_import: pallet_asset::ClassicTickerImport,
contract_did: polymesh_primitives::identity_id::IdentityId,
config: pallet_asset::TickerRegistrationConfig<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::reserve_classic_ticker {
classic_ticker_import,
contract_did,
config,
},
))
}
#[doc = "Forces a transfer of token from `from_portfolio` to the caller's default portfolio."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` Must be an external agent with appropriate permissions for a given ticker."]
#[doc = "* `ticker` Ticker symbol of the asset."]
#[doc = "* `value` Amount of tokens need to force transfer."]
#[doc = "* `from_portfolio` From whom portfolio tokens gets transferred."]
pub fn controller_transfer(
&self,
ticker: polymesh_primitives::ticker::Ticker,
value: u128,
from_portfolio: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::controller_transfer {
ticker,
value,
from_portfolio,
},
))
}
#[doc = "Registers a custom asset type."]
#[doc = ""]
#[doc = "The provided `ty` will be bound to an ID in storage."]
#[doc = "The ID can then be used in `AssetType::Custom`."]
#[doc = "Should the `ty` already exist in storage, no second ID is assigned to it."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` who called the extrinsic."]
#[doc = "* `ty` contains the string representation of the asset type."]
pub fn register_custom_asset_type(
&self,
ty: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::register_custom_asset_type { ty },
))
}
#[doc = "Utility extrinsic to batch `create_asset` and `register_custom_asset_type`."]
pub fn create_asset_with_custom_type(
&self,
name: polymesh_primitives::asset::AssetName,
ticker: polymesh_primitives::ticker::Ticker,
divisible: bool,
custom_asset_type: Vec<u8>,
identifiers: Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
funding_round: Option<polymesh_primitives::asset::FundingRoundName>,
disable_iu: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::create_asset_with_custom_type {
name,
ticker,
divisible,
custom_asset_type,
identifiers,
funding_round,
disable_iu,
},
))
}
#[doc = "Set asset metadata value."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `key` Metadata key."]
#[doc = "* `value` Metadata value."]
#[doc = "* `details` Optional Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataKeyIsMissing` if the metadata type key doesn't exist."]
#[doc = "* `AssetMetadataValueIsLocked` if the metadata value for `key` is locked."]
#[doc = "* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
pub fn set_asset_metadata(
&self,
ticker: polymesh_primitives::ticker::Ticker,
key: polymesh_primitives::asset_metadata::AssetMetadataKey,
value: polymesh_primitives::asset_metadata::AssetMetadataValue,
detail: Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::set_asset_metadata {
ticker,
key,
value,
detail,
},
))
}
#[doc = "Set asset metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `key` Metadata key."]
#[doc = "* `details` Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataKeyIsMissing` if the metadata type key doesn't exist."]
#[doc = "* `AssetMetadataValueIsLocked` if the metadata value for `key` is locked."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
pub fn set_asset_metadata_details(
&self,
ticker: polymesh_primitives::ticker::Ticker,
key: polymesh_primitives::asset_metadata::AssetMetadataKey,
detail: polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::set_asset_metadata_details {
ticker,
key,
detail,
},
))
}
#[doc = "Registers and set local asset metadata."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = "* `value` Metadata value."]
#[doc = "* `details` Optional Metadata value details (expire, lock status)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
#[doc = "* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
pub fn register_and_set_local_asset_metadata(
&self,
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
value: polymesh_primitives::asset_metadata::AssetMetadataValue,
detail: Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::register_and_set_local_asset_metadata {
ticker,
name,
spec,
value,
detail,
},
))
}
#[doc = "Registers asset metadata local type."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `ticker` Ticker of the token."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
#[doc = "* Asset"]
pub fn register_asset_metadata_local_type(
&self,
ticker: polymesh_primitives::ticker::Ticker,
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::register_asset_metadata_local_type { ticker, name, spec },
))
}
#[doc = "Registers asset metadata global type."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "* `name` Metadata name."]
#[doc = "* `spec` Metadata type definition."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `AssetMetadataGlobalKeyAlreadyExists` if a globa metadata type with `name` already exists."]
#[doc = "* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length."]
#[doc = "* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length."]
pub fn register_asset_metadata_global_type(
&self,
name: polymesh_primitives::asset_metadata::AssetMetadataName,
spec: polymesh_primitives::asset_metadata::AssetMetadataSpec,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Asset(
types::pallet_asset::Call::register_asset_metadata_global_type { name, spec },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Ticker registration details."]
#[doc = " (ticker) -> TickerRegistration"]
pub async fn tickers(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_asset::TickerRegistration<u64>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 79u8, 99u8, 172u8, 50u8, 155u8, 165u8, 225u8, 25u8, 154u8, 107u8,
42u8, 66u8, 52u8, 112u8, 140u8, 188u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_asset::TickerRegistration<u64>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Ticker registration config."]
#[doc = " (ticker) -> TickerRegistrationConfig"]
pub async fn ticker_config(
&self,
) -> ::polymesh_api_client::error::Result<pallet_asset::TickerRegistrationConfig<u64>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 185u8, 113u8, 30u8, 121u8, 127u8, 46u8, 243u8, 186u8, 159u8, 108u8,
75u8, 247u8, 236u8, 154u8, 169u8, 176u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8];
<pallet_asset::TickerRegistrationConfig<u64>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Details of the token corresponding to the token ticker."]
#[doc = " (ticker) -> SecurityToken details [returns SecurityToken struct]"]
pub async fn tokens(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_asset::SecurityToken> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 153u8, 151u8, 27u8, 87u8, 73u8, 172u8, 67u8, 224u8, 35u8, 94u8, 65u8,
176u8, 211u8, 120u8, 105u8, 24u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_asset::SecurityToken>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Asset name of the token corresponding to the token ticker."]
#[doc = " (ticker) -> `AssetName`"]
pub async fn asset_names(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::asset::AssetName> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 123u8, 195u8, 250u8, 203u8, 235u8, 133u8, 90u8, 23u8, 143u8, 10u8,
8u8, 53u8, 96u8, 109u8, 5u8, 206u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<polymesh_primitives::asset::AssetName>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The total asset ticker balance per identity."]
#[doc = " (ticker, DID) -> Balance"]
pub async fn balance_of(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 106u8, 75u8, 187u8, 251u8, 206u8, 1u8, 124u8, 102u8, 14u8, 227u8,
176u8, 68u8, 23u8, 115u8, 19u8, 64u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
buf.extend(key_1.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " A map of a ticker name and asset identifiers."]
pub async fn identifiers(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_primitives::asset_identifier::AssetIdentifier>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 249u8, 164u8, 131u8, 240u8, 209u8, 227u8, 62u8, 56u8, 212u8, 69u8,
56u8, 130u8, 119u8, 235u8, 13u8, 237u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::asset_identifier::AssetIdentifier>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " The next `AssetType::Custom` ID in the sequence."]
#[doc = ""]
#[doc = " Numbers in the sequence start from 1 rather than 0."]
pub async fn custom_type_id_sequence(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::asset::CustomAssetTypeId>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 16u8, 121u8, 19u8, 48u8, 14u8, 106u8, 39u8, 83u8, 29u8, 145u8, 209u8,
187u8, 190u8, 66u8, 165u8, 176u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::asset::CustomAssetTypeId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Maps custom asset type ids to the registered string contents."]
pub async fn custom_types(
&self,
key_0: polymesh_primitives::asset::CustomAssetTypeId,
) -> ::polymesh_api_client::error::Result<Vec<u8>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 214u8, 35u8, 90u8, 254u8, 57u8, 243u8, 210u8, 34u8, 193u8, 0u8, 96u8,
131u8, 116u8, 109u8, 49u8, 166u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u8>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Inverse map of `CustomTypes`, from registered string contents to custom asset type ids."]
pub async fn custom_types_inverse(
&self,
key_0: Vec<u8>,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::asset::CustomAssetTypeId>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 2u8, 147u8, 168u8, 237u8, 90u8, 35u8, 218u8, 237u8, 169u8, 231u8,
223u8, 32u8, 46u8, 15u8, 228u8, 85u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::asset::CustomAssetTypeId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The name of the current funding round."]
#[doc = " ticker -> funding round"]
pub async fn funding_round(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::asset::FundingRoundName>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 93u8, 34u8, 9u8, 253u8, 168u8, 224u8, 203u8, 196u8, 69u8, 133u8, 25u8,
204u8, 124u8, 207u8, 104u8, 5u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<polymesh_primitives::asset::FundingRoundName>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The total balances of tokens issued in all recorded funding rounds."]
#[doc = " (ticker, funding round) -> balance"]
pub async fn issued_in_funding_round(
&self,
key_0: (
polymesh_primitives::ticker::Ticker,
polymesh_primitives::asset::FundingRoundName,
),
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 215u8, 137u8, 60u8, 134u8, 127u8, 54u8, 56u8, 208u8, 215u8, 148u8,
185u8, 185u8, 12u8, 48u8, 135u8, 44u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The set of frozen assets implemented as a membership map."]
#[doc = " ticker -> bool"]
pub async fn frozen(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 113u8, 75u8, 228u8, 71u8, 135u8, 205u8, 51u8, 93u8, 238u8, 240u8,
115u8, 32u8, 236u8, 125u8, 7u8, 114u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Tickers and token owned by a user"]
#[doc = " (user, ticker) -> AssetOwnership"]
pub async fn asset_ownership_relations(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_asset::AssetOwnershipRelation> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 120u8, 175u8, 65u8, 84u8, 91u8, 225u8, 83u8, 120u8, 92u8, 157u8, 17u8,
119u8, 178u8, 122u8, 105u8, 103u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_asset::AssetOwnershipRelation>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Documents attached to an Asset"]
#[doc = " (ticker, doc_id) -> document"]
pub async fn asset_documents(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::document::DocumentId,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::document::Document> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 166u8, 167u8, 74u8, 143u8, 116u8, 237u8, 66u8, 137u8, 149u8, 40u8,
102u8, 20u8, 236u8, 96u8, 52u8, 9u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::document::Document>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Per-ticker document ID counter."]
#[doc = " (ticker) -> doc_id"]
pub async fn asset_documents_id_sequence(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::document::DocumentId> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 201u8, 198u8, 40u8, 95u8, 195u8, 158u8, 100u8, 69u8, 247u8, 3u8, 87u8,
5u8, 57u8, 71u8, 8u8, 63u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::document::DocumentId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Ticker registration details on Polymath Classic / Ethereum."]
pub async fn classic_tickers(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<Option<pallet_asset::ClassicTickerRegistration>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 172u8, 242u8, 196u8, 175u8, 39u8, 4u8, 210u8, 72u8, 225u8, 213u8,
209u8, 150u8, 114u8, 197u8, 147u8, 182u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Balances get stored on the basis of the `ScopeId`."]
#[doc = " Right now it is only helpful for the UI purposes but in future it can be used to do miracles on-chain."]
#[doc = " (ScopeId, IdentityId) => Balance."]
pub async fn balance_of_at_scope(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 14u8, 34u8, 163u8, 28u8, 102u8, 117u8, 178u8, 253u8, 78u8, 45u8, 73u8,
176u8, 129u8, 188u8, 84u8, 23u8,
]);
buf.extend(key_0.encode());
buf.extend(key_1.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Store aggregate balance of those identities that has the same `ScopeId`."]
#[doc = " (Ticker, ScopeId) => Balance."]
pub async fn aggregate_balance(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 129u8, 67u8, 184u8, 193u8, 110u8, 255u8, 22u8, 84u8, 149u8, 67u8,
99u8, 103u8, 206u8, 205u8, 97u8, 162u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
buf.extend(key_1.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Tracks the ScopeId of the identity for a given ticker."]
#[doc = " (Ticker, IdentityId) => ScopeId."]
pub async fn scope_id_of(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_id::IdentityId>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 0u8, 141u8, 222u8, 224u8, 133u8, 138u8, 193u8, 36u8, 202u8, 19u8,
245u8, 55u8, 125u8, 42u8, 40u8, 90u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
buf.extend(key_1.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<polymesh_primitives::identity_id::IdentityId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Decides whether investor uniqueness requirement is enforced for this asset."]
#[doc = " `false` means that it is enforced."]
#[doc = ""]
#[doc = " Ticker => bool."]
pub async fn disable_investor_uniqueness(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 235u8, 24u8, 209u8, 226u8, 101u8, 212u8, 17u8, 236u8, 12u8, 149u8,
25u8, 162u8, 244u8, 78u8, 246u8, 171u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Metatdata values for an asset."]
pub async fn asset_metadata_values(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::asset_metadata::AssetMetadataKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataValue>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 12u8, 236u8, 10u8, 112u8, 182u8, 190u8, 51u8, 243u8, 171u8, 240u8,
46u8, 214u8, 255u8, 55u8, 188u8, 48u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Details for an asset's Metadata values."]
pub async fn asset_metadata_value_details(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::asset_metadata::AssetMetadataKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataValueDetail<u64>>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 177u8, 107u8, 241u8, 225u8, 188u8, 86u8, 141u8, 84u8, 219u8, 116u8,
115u8, 57u8, 230u8, 243u8, 42u8, 93u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Local Name -> Key."]
pub async fn asset_metadata_local_name_to_key(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::asset_metadata::AssetMetadataName,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataLocalKey>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 132u8, 79u8, 149u8, 0u8, 75u8, 89u8, 31u8, 241u8, 75u8, 208u8, 41u8,
159u8, 32u8, 36u8, 73u8, 8u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Global Name -> Key."]
pub async fn asset_metadata_global_name_to_key(
&self,
key_0: polymesh_primitives::asset_metadata::AssetMetadataName,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataGlobalKey>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 27u8, 55u8, 255u8, 139u8, 76u8, 15u8, 234u8, 246u8, 25u8, 194u8,
110u8, 238u8, 121u8, 209u8, 31u8, 28u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Local Key -> Name."]
pub async fn asset_metadata_local_key_to_name(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::asset_metadata::AssetMetadataLocalKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataName>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 15u8, 104u8, 156u8, 10u8, 116u8, 95u8, 149u8, 200u8, 0u8, 202u8,
149u8, 7u8, 13u8, 176u8, 112u8, 120u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Global Key -> Name."]
pub async fn asset_metadata_global_key_to_name(
&self,
key_0: polymesh_primitives::asset_metadata::AssetMetadataGlobalKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataName>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 34u8, 54u8, 201u8, 61u8, 167u8, 233u8, 191u8, 146u8, 116u8, 241u8,
41u8, 22u8, 57u8, 221u8, 39u8, 238u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Local Key specs."]
pub async fn asset_metadata_local_specs(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::asset_metadata::AssetMetadataLocalKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataSpec>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 142u8, 233u8, 192u8, 135u8, 176u8, 130u8, 140u8, 179u8, 147u8, 154u8,
225u8, 87u8, 146u8, 146u8, 58u8, 218u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Asset Metadata Global Key specs."]
pub async fn asset_metadata_global_specs(
&self,
key_0: polymesh_primitives::asset_metadata::AssetMetadataGlobalKey,
) -> ::polymesh_api_client::error::Result<
Option<polymesh_primitives::asset_metadata::AssetMetadataSpec>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 68u8, 154u8, 137u8, 212u8, 2u8, 194u8, 202u8, 170u8, 149u8, 44u8,
16u8, 103u8, 57u8, 78u8, 188u8, 125u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Next Asset Metadata Local Key."]
pub async fn asset_metadata_next_local_key(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::asset_metadata::AssetMetadataLocalKey,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 227u8, 167u8, 30u8, 21u8, 95u8, 214u8, 84u8, 40u8, 18u8, 4u8, 97u8,
135u8, 56u8, 213u8, 243u8, 59u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::asset_metadata::AssetMetadataLocalKey>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Next Asset Metadata Global Key."]
pub async fn asset_metadata_next_global_key(
&self,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::asset_metadata::AssetMetadataGlobalKey,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 65u8, 13u8, 61u8, 170u8, 126u8, 198u8, 120u8, 78u8, 47u8, 160u8,
108u8, 155u8, 20u8, 24u8, 193u8, 5u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::asset_metadata::AssetMetadataGlobalKey>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_asset::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
211u8, 67u8, 113u8, 161u8, 147u8, 167u8, 81u8, 238u8, 165u8, 136u8, 62u8, 149u8, 83u8,
69u8, 123u8, 46u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_asset::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod capital_distribution {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Start and attach a capital distribution, to the CA identified by `ca_id`,"]
#[doc = "with `amount` funds in `currency` withdrawn from `portfolio` belonging to `origin`'s DID."]
#[doc = ""]
#[doc = "The distribution will commence at `payment_at` and expire at `expires_at`,"]
#[doc = "if provided, or if `None`, then there's no expiry."]
#[doc = ""]
#[doc = "The funds will be locked in `portfolio` from when `distribute` is called."]
#[doc = "When there's no expiry, some funds may be locked indefinitely in `portfolio`,"]
#[doc = "due to claimants not withdrawing or no benefits being pushed to them."]
#[doc = "For indivisible currencies, unlocked amounts, of less than one whole unit,"]
#[doc = "will not be transferable from `portfolio`."]
#[doc = "However, if we imagine that users `Alice` and `Bob` both are entitled to 1.5 units,"]
#[doc = "and only receive `1` units each, then `0.5 + 0.5 = 1` units are left in `portfolio`,"]
#[doc = "which is now transferrable."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA to start a capital distribution for."]
#[doc = "- `portfolio` specifies the portfolio number of the agent to distribute `amount` from."]
#[doc = "- `currency` to withdraw and distribute from the `portfolio`."]
#[doc = "- `per_share` amount of `currency` to withdraw and distribute."]
#[doc = " Specified as a per-million, i.e. `1 / 10^6`th of one `currency` token."]
#[doc = "- `amount` of `currency` to withdraw and distribute at most."]
#[doc = "- `payment_at` specifies when benefits may first be pushed or claimed."]
#[doc = "- `expires_at` specifies, if provided, when remaining benefits are forfeit"]
#[doc = " and may be reclaimed by `origin`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `ExpiryBeforePayment` if `expires_at.unwrap() <= payment_at`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NoRecordDate` if CA has no record date."]
#[doc = "- `RecordDateAfterStart` if CA's record date > payment_at."]
#[doc = "- `UnauthorizedCustodian` if the caller is not the custodian of `portfolio`."]
#[doc = "- `InsufficientPortfolioBalance` if `portfolio` has less than `amount` of `currency`."]
#[doc = "- `InsufficientBalance` if the protocol fee couldn't be charged."]
#[doc = "- `CANotBenefit` if the CA is not of kind PredictableBenefit/UnpredictableBenefit"]
#[doc = "- `DistributionAmountIsZero` if the `amount` is zero."]
#[doc = "- `DistributionPerShareIsZero` if the `per_share` is zero."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
pub fn distribute(
&self,
ca_id: pallet_corporate_actions::CAId,
portfolio: Option<polymesh_primitives::identity_id::PortfolioNumber>,
currency: polymesh_primitives::ticker::Ticker,
per_share: u128,
amount: u128,
payment_at: u64,
expires_at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CapitalDistribution(
types::pallet_corporate_actions::distribution::Call::distribute {
ca_id,
portfolio,
currency,
per_share,
amount,
payment_at,
expires_at,
},
),
)
}
#[doc = "Claim a benefit of the capital distribution attached to `ca_id`."]
#[doc = ""]
#[doc = "Taxes are withheld as specified by the CA."]
#[doc = "Post-tax earnings are then transferred to the default portfolio of the `origin`'s DID."]
#[doc = ""]
#[doc = "All benefits are rounded by truncation, down to first integer below."]
#[doc = "Moreover, before post-tax earnings, in indivisible currencies are transferred,"]
#[doc = "they are rounded down to a whole unit."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be a holder of the asset and eligible for the distribution."]
#[doc = "- `ca_id` identifies the CA to start a capital distribution for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `HolderAlreadyPaid` if `origin`'s DID has already received its benefit."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `CannotClaimBeforeStart` if `now < payment_at`."]
#[doc = "- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `origin`'s DID."]
#[doc = "- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow."]
#[doc = "- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow."]
#[doc = "- Other errors can occur if the compliance manager rejects the transfer."]
pub fn claim(
&self,
ca_id: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CapitalDistribution(
types::pallet_corporate_actions::distribution::Call::claim { ca_id },
),
)
}
#[doc = "Push benefit of an ongoing distribution to the given `holder`."]
#[doc = ""]
#[doc = "Taxes are withheld as specified by the CA."]
#[doc = "Post-tax earnings are then transferred to the default portfolio of the `origin`'s DID."]
#[doc = ""]
#[doc = "All benefits are rounded by truncation, down to first integer below."]
#[doc = "Moreover, before post-tax earnings, in indivisible currencies are transferred,"]
#[doc = "they are rounded down to a whole unit."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA with a capital distributions to push benefits for."]
#[doc = "- `holder` to push benefits to."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `CannotClaimBeforeStart` if `now < payment_at`."]
#[doc = "- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `holder`."]
#[doc = "- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow."]
#[doc = "- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow."]
#[doc = "- Other errors can occur if the compliance manager rejects the transfer."]
pub fn push_benefit(
&self,
ca_id: pallet_corporate_actions::CAId,
holder: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CapitalDistribution(
types::pallet_corporate_actions::distribution::Call::push_benefit { ca_id, holder },
),
)
}
#[doc = "Assuming a distribution has expired,"]
#[doc = "unlock the remaining amount in the distributor portfolio."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be the creator of the capital distribution tied to `ca_id`."]
#[doc = "- `ca_id` identifies the CA with a capital distribution to reclaim for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `AlreadyReclaimed` if this function has already been called successfully."]
#[doc = "- `NotExpired` if `now < expiry`."]
pub fn reclaim(
&self,
ca_id: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CapitalDistribution(
types::pallet_corporate_actions::distribution::Call::reclaim { ca_id },
),
)
}
#[doc = "Removes a distribution that hasn't started yet,"]
#[doc = "unlocking the full amount in the distributor portfolio."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA with a not-yet-started capital distribution to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchDistribution` if there's no capital distribution for `ca_id`."]
#[doc = "- `DistributionStarted` if `payment_at <= now`."]
pub fn remove_distribution(
&self,
ca_id: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CapitalDistribution(
types::pallet_corporate_actions::distribution::Call::remove_distribution { ca_id },
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " All capital distributions, tied to their respective corporate actions (CAs)."]
#[doc = ""]
#[doc = " (CAId) => Distribution"]
pub async fn distributions(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<
Option<pallet_corporate_actions::distribution::Distribution>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
81u8, 154u8, 187u8, 138u8, 109u8, 32u8, 81u8, 139u8, 168u8, 202u8, 75u8, 130u8, 52u8,
39u8, 59u8, 17u8, 106u8, 209u8, 103u8, 105u8, 114u8, 107u8, 158u8, 5u8, 125u8, 150u8,
235u8, 86u8, 125u8, 11u8, 175u8, 145u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Has an asset holder been paid yet?"]
#[doc = ""]
#[doc = " (CAId, DID) -> Was DID paid in the CAId?"]
pub async fn holder_paid(
&self,
key_0: (
pallet_corporate_actions::CAId,
polymesh_primitives::identity_id::IdentityId,
),
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
81u8, 154u8, 187u8, 138u8, 109u8, 32u8, 81u8, 139u8, 168u8, 202u8, 75u8, 130u8, 52u8,
39u8, 59u8, 17u8, 55u8, 215u8, 43u8, 172u8, 158u8, 205u8, 29u8, 130u8, 146u8, 125u8,
52u8, 215u8, 183u8, 138u8, 60u8, 26u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_corporate_actions::distribution::Version>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
81u8, 154u8, 187u8, 138u8, 109u8, 32u8, 81u8, 139u8, 168u8, 202u8, 75u8, 130u8, 52u8,
39u8, 59u8, 17u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_corporate_actions::distribution::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod checkpoint {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Creates a single checkpoint at the current time."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ticker`."]
#[doc = "- `ticker` to create the checkpoint for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `CounterOverflow` if the total checkpoint counter would overflow."]
pub fn create_checkpoint(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Checkpoint(
types::pallet_asset::checkpoint::Call::create_checkpoint { ticker },
))
}
#[doc = "Sets the max complexity of a schedule set for an arbitrary ticker to `max_complexity`."]
#[doc = "The new maximum is not enforced retroactively,"]
#[doc = "and only applies once new schedules are made."]
#[doc = ""]
#[doc = "Must be called as a PIP (requires \"root\")."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is the root origin."]
#[doc = "- `max_complexity` allowed for an arbitrary ticker's schedule set."]
pub fn set_schedules_max_complexity(
&self,
max_complexity: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Checkpoint(
types::pallet_asset::checkpoint::Call::set_schedules_max_complexity { max_complexity },
))
}
#[doc = "Creates a schedule generating checkpoints"]
#[doc = "in the future at either a fixed time or at intervals."]
#[doc = ""]
#[doc = "The schedule starts out with `strong_ref_count(schedule_id) <- 0`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as owner of `ticker`."]
#[doc = "- `ticker` to create the schedule for."]
#[doc = "- `schedule` that will generate checkpoints."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `ScheduleDurationTooShort` if the schedule duration is too short."]
#[doc = "- `InsufficientAccountBalance` if the protocol fee could not be charged."]
#[doc = "- `CounterOverflow` if the schedule ID or total checkpoint counters would overflow."]
#[doc = "- `FailedToComputeNextCheckpoint` if the next checkpoint for `schedule` is in the past."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn create_schedule(
&self,
ticker: polymesh_primitives::ticker::Ticker,
schedule: pallet_asset::checkpoint::ScheduleSpec,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Checkpoint(
types::pallet_asset::checkpoint::Call::create_schedule { ticker, schedule },
))
}
#[doc = "Removes the checkpoint schedule of an asset identified by `id`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as owner of `ticker`."]
#[doc = "- `ticker` to remove the schedule from."]
#[doc = "- `id` of the schedule, when it was created by `created_schedule`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`."]
#[doc = "- `NoCheckpointSchedule` if `id` does not identify a schedule for this `ticker`."]
#[doc = "- `ScheduleNotRemovable` if `id` exists but is not removable."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn remove_schedule(
&self,
ticker: polymesh_primitives::ticker::Ticker,
id: polymesh_common_utilities::traits::checkpoint::ScheduleId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Checkpoint(
types::pallet_asset::checkpoint::Call::remove_schedule { ticker, id },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Total supply of the token at the checkpoint."]
#[doc = ""]
#[doc = " (ticker, checkpointId) -> total supply at given checkpoint"]
pub async fn total_supply(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::calendar::CheckpointId,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 89u8, 148u8, 207u8, 218u8, 20u8, 205u8, 103u8, 225u8, 88u8, 102u8,
71u8, 212u8, 0u8, 8u8, 171u8, 170u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Balance of a DID at a checkpoint."]
#[doc = ""]
#[doc = " (ticker, did, checkpoint ID) -> Balance of a DID at a checkpoint"]
pub async fn balance(
&self,
key_0: (
polymesh_primitives::ticker::Ticker,
polymesh_primitives::calendar::CheckpointId,
),
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 78u8, 168u8, 234u8, 12u8, 1u8, 250u8, 164u8, 43u8, 110u8, 179u8,
68u8, 168u8, 92u8, 71u8, 179u8, 135u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Checkpoints ID generator sequence."]
#[doc = " ID of first checkpoint is 1 instead of 0."]
#[doc = ""]
#[doc = " (ticker) -> no. of checkpoints"]
pub async fn checkpoint_id_sequence(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::calendar::CheckpointId> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 125u8, 12u8, 59u8, 36u8, 10u8, 236u8, 235u8, 137u8, 107u8, 225u8,
196u8, 253u8, 46u8, 38u8, 239u8, 219u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::calendar::CheckpointId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Checkpoints where a DID's balance was updated."]
#[doc = " (ticker, did) -> [checkpoint ID where user balance changed]"]
pub async fn balance_updates(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::calendar::CheckpointId>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 143u8, 217u8, 170u8, 216u8, 91u8, 210u8, 121u8, 231u8, 28u8, 142u8,
98u8, 99u8, 214u8, 201u8, 229u8, 250u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::calendar::CheckpointId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Checkpoint timestamps."]
#[doc = ""]
#[doc = " Every schedule-originated checkpoint maps its ID to its due time."]
#[doc = " Every checkpoint manually created maps its ID to the time of recording."]
#[doc = ""]
#[doc = " (ticker) -> (checkpoint ID) -> checkpoint timestamp"]
pub async fn timestamps(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::calendar::CheckpointId,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 212u8, 135u8, 3u8, 189u8, 214u8, 233u8, 162u8, 207u8, 215u8, 14u8,
169u8, 158u8, 121u8, 254u8, 114u8, 232u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The maximum complexity allowed for an arbitrary ticker's schedule set"]
#[doc = " (i.e. `Schedules` storage item below)."]
pub async fn schedules_max_complexity(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 157u8, 164u8, 151u8, 8u8, 64u8, 141u8, 200u8, 122u8, 167u8, 39u8,
230u8, 249u8, 114u8, 60u8, 67u8, 180u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Checkpoint schedule ID sequence for tickers."]
#[doc = ""]
#[doc = " (ticker) -> schedule ID"]
pub async fn schedule_id_sequence(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
polymesh_common_utilities::traits::checkpoint::ScheduleId,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 105u8, 127u8, 108u8, 151u8, 163u8, 248u8, 224u8, 135u8, 154u8, 147u8,
248u8, 192u8, 179u8, 162u8, 41u8, 13u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_common_utilities::traits::checkpoint::ScheduleId>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Checkpoint schedules for tickers."]
#[doc = ""]
#[doc = " (ticker) -> [schedule]"]
pub async fn schedules(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
Vec<polymesh_common_utilities::traits::checkpoint::StoredSchedule>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 52u8, 125u8, 146u8, 8u8, 195u8, 161u8, 45u8, 171u8, 132u8, 104u8,
102u8, 66u8, 103u8, 39u8, 250u8, 11u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_common_utilities::traits::checkpoint::StoredSchedule>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " How many \"strong\" references are there to a given `ScheduleId`?"]
#[doc = ""]
#[doc = " The presence of a \"strong\" reference, in the sense of `Rc<T>`,"]
#[doc = " entails that the referenced schedule cannot be removed."]
#[doc = " Thus, as long as `strong_ref_count(schedule_id) > 0`,"]
#[doc = " `remove_schedule(schedule_id)` will error."]
#[doc = ""]
#[doc = " (ticker, schedule ID) -> strong ref count"]
pub async fn schedule_ref_count(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_common_utilities::traits::checkpoint::ScheduleId,
) -> ::polymesh_api_client::error::Result<u32> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 237u8, 119u8, 84u8, 159u8, 230u8, 166u8, 65u8, 61u8, 186u8, 244u8,
172u8, 93u8, 185u8, 128u8, 39u8, 122u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All the checkpoints a given schedule originated."]
#[doc = ""]
#[doc = " (ticker, schedule ID) -> [checkpoint ID]"]
pub async fn schedule_points(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_common_utilities::traits::checkpoint::ScheduleId,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::calendar::CheckpointId>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 169u8, 253u8, 229u8, 218u8, 162u8, 17u8, 213u8, 206u8, 52u8, 53u8,
24u8, 44u8, 3u8, 149u8, 70u8, 134u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::calendar::CheckpointId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_asset::checkpoint::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
195u8, 146u8, 155u8, 32u8, 184u8, 204u8, 94u8, 128u8, 197u8, 29u8, 170u8, 187u8, 151u8,
103u8, 187u8, 14u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_asset::checkpoint::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod compliance_manager {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Adds a compliance requirement to an asset's compliance by ticker."]
#[doc = "If the compliance requirement is a duplicate, it does nothing."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = "* sender_conditions - Sender transfer conditions."]
#[doc = "* receiver_conditions - Receiver transfer conditions."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn add_compliance_requirement(
&self,
ticker: polymesh_primitives::ticker::Ticker,
sender_conditions: Vec<polymesh_primitives::condition::Condition>,
receiver_conditions: Vec<polymesh_primitives::condition::Condition>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::add_compliance_requirement {
ticker,
sender_conditions,
receiver_conditions,
},
),
)
}
#[doc = "Removes a compliance requirement from an asset's compliance."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = "* id - Compliance requirement id which is need to be removed"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn remove_compliance_requirement(
&self,
ticker: polymesh_primitives::ticker::Ticker,
id: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::remove_compliance_requirement { ticker, id },
),
)
}
#[doc = "Replaces an asset's compliance by ticker with a new compliance."]
#[doc = ""]
#[doc = "Compliance requirements will be sorted (ascending by id) before"]
#[doc = "replacing the current requirements."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `ticker` - the asset ticker,"]
#[doc = "* `asset_compliance - the new asset compliance."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `Unauthorized` if `origin` is not the owner of the ticker."]
#[doc = "* `DuplicateAssetCompliance` if `asset_compliance` contains multiple entries with the same `requirement_id`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn replace_asset_compliance(
&self,
ticker: polymesh_primitives::ticker::Ticker,
asset_compliance: Vec<polymesh_primitives::compliance_manager::ComplianceRequirement>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::replace_asset_compliance {
ticker,
asset_compliance,
},
),
)
}
#[doc = "Removes an asset's compliance"]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn reset_asset_compliance(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::reset_asset_compliance { ticker },
),
)
}
#[doc = "Pauses the verification of conditions for `ticker` during transfers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn pause_asset_compliance(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::pause_asset_compliance { ticker },
),
)
}
#[doc = "Resumes the verification of conditions for `ticker` during transfers."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker"]
#[doc = "* ticker - Symbol of the asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn resume_asset_compliance(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::resume_asset_compliance { ticker },
),
)
}
#[doc = "Adds another default trusted claim issuer at the ticker level."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* issuer - IdentityId of the trusted claim issuer."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn add_default_trusted_claim_issuer(
&self,
ticker: polymesh_primitives::ticker::Ticker,
issuer: polymesh_primitives::condition::TrustedIssuer,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::add_default_trusted_claim_issuer {
ticker,
issuer,
},
),
)
}
#[doc = "Removes the given `issuer` from the set of default trusted claim issuers at the ticker level."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* issuer - IdentityId of the trusted claim issuer."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn remove_default_trusted_claim_issuer(
&self,
ticker: polymesh_primitives::ticker::Ticker,
issuer: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::remove_default_trusted_claim_issuer {
ticker,
issuer,
},
),
)
}
#[doc = "Modify an existing compliance requirement of a given ticker."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* origin - Signer of the dispatchable. It should be the owner of the ticker."]
#[doc = "* ticker - Symbol of the asset."]
#[doc = "* new_req - Compliance requirement."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn change_compliance_requirement(
&self,
ticker: polymesh_primitives::ticker::Ticker,
new_req: polymesh_primitives::compliance_manager::ComplianceRequirement,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ComplianceManager(
types::pallet_compliance_manager::Call::change_compliance_requirement {
ticker,
new_req,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Asset compliance for a ticker (Ticker -> AssetCompliance)"]
pub async fn asset_compliances(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::compliance_manager::AssetCompliance,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
255u8, 219u8, 199u8, 116u8, 193u8, 144u8, 129u8, 130u8, 221u8, 228u8, 247u8, 53u8, 193u8,
10u8, 8u8, 220u8, 174u8, 4u8, 188u8, 209u8, 112u8, 119u8, 72u8, 235u8, 75u8, 159u8, 89u8,
9u8, 248u8, 244u8, 242u8, 195u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8];
<polymesh_primitives::compliance_manager::AssetCompliance>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " List of trusted claim issuer Ticker -> Issuer Identity"]
pub async fn trusted_claim_issuer(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::condition::TrustedIssuer>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
255u8, 219u8, 199u8, 116u8, 193u8, 144u8, 129u8, 130u8, 221u8, 228u8, 247u8, 53u8, 193u8,
10u8, 8u8, 220u8, 7u8, 112u8, 219u8, 149u8, 59u8, 221u8, 90u8, 127u8, 146u8, 167u8, 42u8,
117u8, 122u8, 15u8, 129u8, 253u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::condition::TrustedIssuer>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_compliance_manager::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
255u8, 219u8, 199u8, 116u8, 193u8, 144u8, 129u8, 130u8, 221u8, 228u8, 247u8, 53u8, 193u8,
10u8, 8u8, 220u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_compliance_manager::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod corporate_action {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Set the max `length` of `details` in terms of bytes."]
#[doc = "May only be called via a PIP."]
pub fn set_max_details_length(
&self,
length: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::set_max_details_length { length },
),
)
}
#[doc = "Set the default CA `TargetIdentities` to `targets`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` for which the default identities are changing."]
#[doc = "- `targets` the default target identities for a CA."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `TooManyTargetIds` if `targets.identities.len() > T::MaxTargetIds::get()`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn set_default_targets(
&self,
ticker: polymesh_primitives::ticker::Ticker,
targets: pallet_corporate_actions::TargetIdentities,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::set_default_targets { ticker, targets },
),
)
}
#[doc = "Set the default withholding tax for all DIDs and CAs relevant to this `ticker`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the withholding tax will apply to."]
#[doc = "- `tax` that should be withheld when distributing dividends, etc."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn set_default_withholding_tax(
&self,
ticker: polymesh_primitives::ticker::Ticker,
tax: sp_arithmetic::per_things::Permill,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::set_default_withholding_tax { ticker, tax },
),
)
}
#[doc = "Set the withholding tax of `ticker` for `taxed_did` to `tax`."]
#[doc = "If `Some(tax)`, this overrides the default withholding tax of `ticker` to `tax` for `taxed_did`."]
#[doc = "Otherwise, if `None`, the default withholding tax will be used."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the withholding tax will apply to."]
#[doc = "- `taxed_did` that will have its withholding tax updated."]
#[doc = "- `tax` that should be withheld when distributing dividends, etc."]
#[doc = ""]
#[doc = "## Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `TooManyDidTaxes` if `Some(tax)` and adding the override would go over the limit `MaxDidWhts`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn set_did_withholding_tax(
&self,
ticker: polymesh_primitives::ticker::Ticker,
taxed_did: polymesh_primitives::identity_id::IdentityId,
tax: Option<sp_arithmetic::per_things::Permill>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::set_did_withholding_tax {
ticker,
taxed_did,
tax,
},
),
)
}
#[doc = "Initiates a CA for `ticker` of `kind` with `details` and other provided arguments."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ticker` with relevant permissions."]
#[doc = "- `ticker` that the CA is made for."]
#[doc = "- `kind` of CA being initiated."]
#[doc = "- `decl_date` of CA bring initialized."]
#[doc = "- `record_date`, if any, to calculate the impact of this CA."]
#[doc = " If provided, this results in a scheduled balance snapshot (\"checkpoint\") at the date."]
#[doc = "- `details` of the CA in free-text form, up to a certain number of bytes in length."]
#[doc = "- `targets`, if any, which this CA is relevant/irrelevant to."]
#[doc = " Overrides, if provided, the default at the asset level (`set_default_targets`)."]
#[doc = "- `default_withholding_tax`, if any, is the default withholding tax to use for this CA."]
#[doc = " Overrides, if provided, the default at the asset level (`set_default_withholding_tax`)."]
#[doc = "- `withholding_tax`, if any, provides per-DID withholding tax overrides."]
#[doc = " Overrides, if provided, the default at the asset level (`set_did_withholding_tax`)."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `DetailsTooLong` if `details.len()` goes beyond `max_details_length`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `CounterOverflow` in the unlikely event that so many CAs were created for this `ticker`,"]
#[doc = " that integer overflow would have occured if instead allowed."]
#[doc = "- `TooManyDidTaxes` if `withholding_tax.unwrap().len()` would go over the limit `MaxDidWhts`."]
#[doc = "- `DuplicateDidTax` if a DID is included more than once in `wt`."]
#[doc = "- `TooManyTargetIds` if `targets.unwrap().identities.len() > T::MaxTargetIds::get()`."]
#[doc = "- `DeclDateInFuture` if the declaration date is not in the past."]
#[doc = "- When `record_date.is_some()`, other errors due to checkpoint scheduling may occur."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn initiate_corporate_action(
&self,
ticker: polymesh_primitives::ticker::Ticker,
kind: pallet_corporate_actions::CAKind,
decl_date: u64,
record_date: Option<pallet_corporate_actions::RecordDateSpec>,
details: pallet_corporate_actions::CADetails,
targets: Option<pallet_corporate_actions::TargetIdentities>,
default_withholding_tax: Option<sp_arithmetic::per_things::Permill>,
withholding_tax: Option<
Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::initiate_corporate_action {
ticker,
kind,
decl_date,
record_date,
details,
targets,
default_withholding_tax,
withholding_tax,
},
),
)
}
#[doc = "Link the given CA `id` to the given `docs`."]
#[doc = "Any previous links for the CA are removed in favor of `docs`."]
#[doc = ""]
#[doc = "The workflow here is to add the documents and initiating the CA in any order desired."]
#[doc = "Once both exist, they can now be linked together."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `id.ticker` with relevant permissions."]
#[doc = "- `id` of the CA to associate with `docs`."]
#[doc = "- `docs` to associate with the CA with `id`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = "- `NoSuchDoc` if any of `docs` does not identify an existing document."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn link_ca_doc(
&self,
id: pallet_corporate_actions::CAId,
docs: Vec<polymesh_primitives::document::DocumentId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::link_ca_doc { id, docs },
),
)
}
#[doc = "Removes the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "Associated data, such as document links, ballots,"]
#[doc = "and capital distributions are also removed."]
#[doc = ""]
#[doc = "Any schedule associated with the record date will see"]
#[doc = "`strong_ref_count(schedule_id)` decremented."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ca_id.ticker` with relevant permissions."]
#[doc = "- `ca_id` of the CA to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn remove_ca(
&self,
ca_id: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::remove_ca { ca_id },
),
)
}
#[doc = "Changes the record date of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be an external agent of `ca_id.ticker` with relevant permissions."]
#[doc = "- `ca_id` of the CA to alter."]
#[doc = "- `record_date`, if any, to calculate the impact of the CA."]
#[doc = " If provided, this results in a scheduled balance snapshot (\"checkpoint\") at the date."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `id` does not identify an existing CA."]
#[doc = "- When `record_date.is_some()`, other errors due to checkpoint scheduling may occur."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn change_record_date(
&self,
ca_id: pallet_corporate_actions::CAId,
record_date: Option<pallet_corporate_actions::RecordDateSpec>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::change_record_date { ca_id, record_date },
),
)
}
#[doc = "Utility extrinsic to batch `initiate_corporate_action` and `distribute`"]
pub fn initiate_corporate_action_and_distribute(
&self,
ca_args: pallet_corporate_actions::InitiateCorporateActionArgs,
portfolio: Option<polymesh_primitives::identity_id::PortfolioNumber>,
currency: polymesh_primitives::ticker::Ticker,
per_share: u128,
amount: u128,
payment_at: u64,
expires_at: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateAction(
types::pallet_corporate_actions::Call::initiate_corporate_action_and_distribute {
ca_args,
portfolio,
currency,
per_share,
amount,
payment_at,
expires_at,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Determines the maximum number of bytes that the free-form `details` of a CA can store."]
#[doc = ""]
#[doc = " Note that this is not the number of `char`s or the number of [graphemes]."]
#[doc = " While this may be unnatural in terms of human understanding of a text's length,"]
#[doc = " it more closely reflects actual storage costs (`'a'` is cheaper to store than an emoji)."]
#[doc = ""]
#[doc = " [graphemes]: https://en.wikipedia.org/wiki/Grapheme"]
pub async fn max_details_length(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 35u8, 28u8, 123u8, 214u8, 108u8, 218u8, 59u8, 20u8, 118u8, 8u8, 139u8,
67u8, 69u8, 136u8, 180u8, 5u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The identities targeted by default for CAs for this ticker,"]
#[doc = " either to be excluded or included."]
#[doc = ""]
#[doc = " (ticker => target identities)"]
pub async fn default_target_identities(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_corporate_actions::TargetIdentities> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 77u8, 99u8, 45u8, 196u8, 84u8, 74u8, 106u8, 171u8, 172u8, 166u8,
213u8, 51u8, 51u8, 209u8, 34u8, 188u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 1u8];
<pallet_corporate_actions::TargetIdentities>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The default amount of tax to withhold (\"withholding tax\", WT) for this ticker when distributing dividends."]
#[doc = ""]
#[doc = " To understand withholding tax, e.g., let's assume that you hold ACME shares."]
#[doc = " ACME now decides to distribute 100 SEK to Alice."]
#[doc = " Alice lives in Sweden, so Skatteverket (the Swedish tax authority) wants 30% of that."]
#[doc = " Then those 100 * 30% are withheld from Alice, and ACME will send them to Skatteverket."]
#[doc = ""]
#[doc = " (ticker => % to withhold)"]
pub async fn default_withholding_tax(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<sp_arithmetic::per_things::Permill> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 170u8, 50u8, 103u8, 81u8, 229u8, 40u8, 244u8, 16u8, 164u8, 129u8,
103u8, 210u8, 52u8, 41u8, 13u8, 197u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<sp_arithmetic::per_things::Permill>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The amount of tax to withhold (\"withholding tax\", WT) for a certain ticker x DID."]
#[doc = " If an entry exists for a certain DID, it overrides the default in `DefaultWithholdingTax`."]
#[doc = ""]
#[doc = " (ticker => [(did, % to withhold)]"]
pub async fn did_withholding_tax(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<
Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 224u8, 222u8, 223u8, 202u8, 239u8, 39u8, 125u8, 98u8, 152u8, 237u8,
195u8, 114u8, 134u8, 40u8, 221u8, 13u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<(
polymesh_primitives::identity_id::IdentityId,
sp_arithmetic::per_things::Permill,
)>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " The next per-`Ticker` CA ID in the sequence."]
#[doc = " The full ID is defined as a combination of `Ticker` and a number in this sequence."]
pub async fn ca_id_sequence(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_corporate_actions::LocalCAId> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 82u8, 91u8, 86u8, 204u8, 80u8, 123u8, 119u8, 166u8, 116u8, 44u8,
136u8, 13u8, 78u8, 115u8, 129u8, 34u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<pallet_corporate_actions::LocalCAId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All recorded CAs thus far."]
#[doc = " Only generic information is stored here."]
#[doc = " Specific `CAKind`s, e.g., benefits and corporate ballots, may use additional on-chain storage."]
#[doc = ""]
#[doc = " (ticker => local ID => the corporate action)"]
pub async fn corporate_actions(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: pallet_corporate_actions::LocalCAId,
) -> ::polymesh_api_client::error::Result<Option<pallet_corporate_actions::CorporateAction>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 14u8, 36u8, 40u8, 25u8, 103u8, 79u8, 185u8, 193u8, 131u8, 31u8, 153u8,
37u8, 135u8, 74u8, 8u8, 159u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Associations from CAs to `Document`s via their IDs."]
#[doc = " (CAId => [DocumentId])"]
#[doc = ""]
#[doc = " The `CorporateActions` map stores `Ticker => LocalId => The CA`,"]
#[doc = " so we can infer `Ticker => CAId`. Therefore, we don't need a double map."]
pub async fn ca_doc_link(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<Vec<polymesh_primitives::document::DocumentId>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 120u8, 114u8, 125u8, 160u8, 162u8, 78u8, 111u8, 100u8, 74u8, 192u8,
8u8, 173u8, 45u8, 35u8, 163u8, 153u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<polymesh_primitives::document::DocumentId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Associates details in free-form text with a CA by its ID."]
#[doc = " (CAId => CADetails)"]
pub async fn details(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<pallet_corporate_actions::CADetails> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 38u8, 140u8, 214u8, 5u8, 85u8, 135u8, 135u8, 226u8, 198u8, 220u8,
28u8, 194u8, 130u8, 139u8, 228u8, 24u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_corporate_actions::CADetails>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_corporate_actions::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
220u8, 91u8, 74u8, 49u8, 243u8, 242u8, 170u8, 172u8, 182u8, 184u8, 60u8, 136u8, 217u8,
32u8, 99u8, 238u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_corporate_actions::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod corporate_ballot {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Attach a corporate ballot to the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "The ballot will admit votes within `range`."]
#[doc = "The ballot's metadata is provided by `meta`,"]
#[doc = "which includes the ballot title, the motions, their choices, etc."]
#[doc = "See the `BallotMeta` for more."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the CA to attach the ballot to."]
#[doc = "- `range` specifies when voting starts and ends."]
#[doc = "- `meta` specifies the ballot's metadata as aforementioned."]
#[doc = "- `rcv` specifies whether RCV is enabled for this ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `CANotNotice` if the CA is not of the `IssuerNotice` kind."]
#[doc = "- `StartAfterEnd` if `range.start > range.end`."]
#[doc = "- `NowAfterEnd` if `now > range.end` where `now` is the current timestamp."]
#[doc = "- `NoRecordDate` if CA has no record date."]
#[doc = "- `RecordDateAfterStart` if `date > range.start` where `date` is the CA's record date."]
#[doc = "- `AlreadyExists` if there's a ballot already."]
#[doc = "- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`."]
#[doc = "- `TooLong` if any of the embedded strings in `meta` are too long."]
#[doc = "- `InsufficientBalance` if the protocol fee couldn't be charged."]
pub fn attach_ballot(
&self,
ca_id: pallet_corporate_actions::CAId,
range: pallet_corporate_actions::ballot::BallotTimeRange,
meta: pallet_corporate_actions::ballot::BallotMeta,
rcv: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::attach_ballot {
ca_id,
range,
meta,
rcv,
},
),
)
}
#[doc = "Cast `votes` in the ballot attached to the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` which must be a permissioned signer targeted by the CA."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `votes` specifies the balances to assign to each choice in the ballot."]
#[doc = " The full voting power of `origin`'s DID may be used for each motion in the ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingNotStarted` if the voting period hasn't commenced yet."]
#[doc = "- `VotingAlreadyEnded` if the voting period has ended."]
#[doc = "- `WrongVoteCount` if the number of choices in the ballot does not match `votes.len()`."]
#[doc = "- `NoSuchCA` if `ca_id` does not identify an existing CA."]
#[doc = "- `NotTargetedByCA` if the CA does not target `origin`'s DID."]
#[doc = "- `InsufficientVotes` if the voting power used for any motion in `votes`"]
#[doc = " exceeds `origin`'s DID's voting power."]
pub fn vote(
&self,
ca_id: pallet_corporate_actions::CAId,
votes: Vec<pallet_corporate_actions::ballot::BallotVote>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::vote { ca_id, votes },
),
)
}
#[doc = "Amend the end date of the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `end` specifies the new end date of the ballot."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[doc = "- `StartAfterEnd` if `start > end`."]
pub fn change_end(
&self,
ca_id: pallet_corporate_actions::CAId,
end: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::change_end { ca_id, end },
),
)
}
#[doc = "Amend the metadata (title, motions, etc.) of the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `meta` specifies the new metadata."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
#[doc = "- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`."]
#[doc = "- `TooLong` if any of the embedded strings in `meta` are too long."]
pub fn change_meta(
&self,
ca_id: pallet_corporate_actions::CAId,
meta: pallet_corporate_actions::ballot::BallotMeta,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::change_meta { ca_id, meta },
),
)
}
#[doc = "Amend RCV support for the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = "- `rcv` specifies if RCV is to be supported or not."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
pub fn change_rcv(
&self,
ca_id: pallet_corporate_actions::CAId,
rcv: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::change_rcv { ca_id, rcv },
),
)
}
#[doc = "Remove the ballot of the CA identified by `ca_id`."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`."]
#[doc = "- `ca_id` identifies the attached ballot's CA."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`."]
#[doc = "- `NoSuchBallot` if `ca_id` does not identify a ballot."]
#[doc = "- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time."]
pub fn remove_ballot(
&self,
ca_id: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::CorporateBallot(
types::pallet_corporate_actions::ballot::Call::remove_ballot { ca_id },
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Metadata of a corporate ballot."]
#[doc = ""]
#[doc = " (CAId) => BallotMeta"]
pub async fn metas(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<Option<pallet_corporate_actions::ballot::BallotMeta>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 156u8, 233u8, 150u8, 83u8, 80u8, 111u8, 149u8, 210u8, 238u8, 76u8,
158u8, 22u8, 106u8, 202u8, 6u8, 64u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Time details of a corporate ballot associated with a CA."]
#[doc = " The timestamps denote when voting starts and stops."]
#[doc = ""]
#[doc = " (CAId) => BallotTimeRange"]
pub async fn time_ranges(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<
Option<pallet_corporate_actions::ballot::BallotTimeRange>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 224u8, 44u8, 93u8, 167u8, 153u8, 243u8, 193u8, 143u8, 81u8, 133u8,
254u8, 177u8, 13u8, 204u8, 115u8, 80u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Stores how many choices there are in each motion."]
#[doc = ""]
#[doc = " At all times, the invariant holds that `motion_choices[idx]` is equal to"]
#[doc = " `metas.unwrap().motions[idx].choices.len()`. That is, this is just a cache,"]
#[doc = " used to avoid fetching all the motions with their associated texts."]
#[doc = ""]
#[doc = " `u16` choices should be more than enough to fit real use cases."]
#[doc = ""]
#[doc = " (CAId) => Number of choices in each motion."]
pub async fn motion_num_choices(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<Vec<u16>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 128u8, 121u8, 46u8, 246u8, 146u8, 237u8, 189u8, 150u8, 253u8, 219u8,
95u8, 102u8, 195u8, 212u8, 151u8, 27u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u16>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Is ranked choice voting (RCV) enabled for this ballot?"]
#[doc = " For an understanding of how RCV is handled, see note on `BallotVote`'s `fallback` field."]
#[doc = ""]
#[doc = " (CAId) => bool"]
pub async fn rcv(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 255u8, 206u8, 156u8, 27u8, 141u8, 170u8, 167u8, 14u8, 136u8, 113u8,
191u8, 30u8, 171u8, 45u8, 90u8, 96u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Stores the total vote tally on each choice."]
#[doc = ""]
#[doc = " RCV is not accounted for,"]
#[doc = " as there are too many wants to interpret the graph,"]
#[doc = " and because it would not be efficient."]
#[doc = ""]
#[doc = " (CAId) => [current vote weights]"]
pub async fn results(
&self,
key_0: pallet_corporate_actions::CAId,
) -> ::polymesh_api_client::error::Result<Vec<u128>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 2u8, 53u8, 15u8, 184u8, 68u8, 197u8, 167u8, 101u8, 105u8, 101u8,
134u8, 40u8, 189u8, 68u8, 197u8, 62u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<u128>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Stores each DID's votes in a given ballot."]
#[doc = " See the documentation of `BallotVote` for notes on semantics."]
#[doc = ""]
#[doc = " (CAId) => (DID) => [vote weight]"]
#[doc = ""]
#[doc = " User must enter 0 vote weight if they don't want to vote for a choice."]
pub async fn votes(
&self,
key_0: pallet_corporate_actions::CAId,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<Vec<pallet_corporate_actions::ballot::BallotVote>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
231u8, 254u8, 118u8, 5u8, 155u8, 236u8, 50u8, 215u8, 156u8, 69u8, 147u8, 235u8, 7u8,
48u8, 134u8, 127u8, 180u8, 173u8, 198u8, 161u8, 206u8, 79u8, 124u8, 194u8, 230u8, 150u8,
237u8, 15u8, 208u8, 107u8, 208u8, 28u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
buf.extend(key_1.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_corporate_actions::ballot::BallotVote>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod permissions {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod pips {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Change whether completed PIPs are pruned."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `prune` specifies whether completed PIPs should be pruned."]
pub fn set_prune_historical_pips(
&self,
prune: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_prune_historical_pips { prune },
))
}
#[doc = "Change the minimum proposal deposit amount required to start a proposal."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `deposit` the new min deposit required to start a proposal"]
pub fn set_min_proposal_deposit(
&self,
deposit: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_min_proposal_deposit { deposit },
))
}
#[doc = "Change the default enactment period."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `duration` the new default enactment period it takes for a scheduled PIP to be executed."]
pub fn set_default_enactment_period(
&self,
duration: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_default_enactment_period { duration },
))
}
#[doc = "Change the amount of blocks after which a pending PIP is expired."]
#[doc = "If `expiry` is `None` then PIPs never expire."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `expiry` the block-time it takes for a still-`Pending` PIP to expire."]
pub fn set_pending_pip_expiry(
&self,
expiry: polymesh_common_utilities::MaybeBlock<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_pending_pip_expiry { expiry },
))
}
#[doc = "Change the maximum skip count (`max_pip_skip_count`)."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `max` skips before a PIP cannot be skipped by GC anymore."]
pub fn set_max_pip_skip_count(
&self,
max: u8,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_max_pip_skip_count { max },
))
}
#[doc = "Change the maximum number of active PIPs before community members cannot propose anything."]
#[doc = "Can only be called by root."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `limit` of concurrent active PIPs."]
pub fn set_active_pip_limit(
&self,
limit: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::set_active_pip_limit { limit },
))
}
#[doc = "A network member creates a PIP by submitting a dispatchable which"]
#[doc = "changes the network in someway. A minimum deposit is required to open a new proposal."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `proposer` is either a signing key or committee."]
#[doc = " Used to understand whether this is a committee proposal and verified against `origin`."]
#[doc = "* `proposal` a dispatchable call"]
#[doc = "* `deposit` minimum deposit value, which is ignored if `proposer` is a committee."]
#[doc = "* `url` a link to a website for proposal discussion"]
pub fn propose(
&self,
proposal: polymesh_runtime_develop::runtime::Call,
deposit: u128,
url: Option<polymesh_primitives::Url>,
description: Option<pallet_pips::PipDescription>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::propose {
proposal: ::std::boxed::Box::new(proposal),
deposit,
url,
description,
},
))
}
#[doc = "Vote either in favor (`aye_or_nay` == true) or against a PIP with `id`."]
#[doc = "The \"convinction\" or strength of the vote is given by `deposit`, which is reserved."]
#[doc = ""]
#[doc = "Note that `vote` is *not* additive."]
#[doc = "That is, `vote(id, true, 50)` followed by `vote(id, true, 40)`"]
#[doc = "will first reserve `50` and then refund `50 - 10`, ending up with `40` in deposit."]
#[doc = "To add atop of existing votes, you'll need `existing_deposit + addition`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id`, proposal id"]
#[doc = "* `aye_or_nay`, a bool representing for or against vote"]
#[doc = "* `deposit`, the \"conviction\" with which the vote is made."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NoSuchProposal` if `id` doesn't reference a valid PIP."]
#[doc = "* `NotFromCommunity` if proposal was made by a committee."]
#[doc = "* `IncorrectProposalState` if PIP isn't pending."]
#[doc = "* `InsufficientDeposit` if `origin` cannot reserve `deposit - old_deposit`."]
pub fn vote(
&self,
id: pallet_pips::PipId,
aye_or_nay: bool,
deposit: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::vote {
id,
aye_or_nay,
deposit,
},
))
}
#[doc = "Approves the pending committee PIP given by the `id`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal isn't pending."]
#[doc = "* `NotByCommittee` if the proposal isn't by a committee."]
pub fn approve_committee_proposal(
&self,
id: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::approve_committee_proposal { id },
))
}
#[doc = "Rejects the PIP given by the `id`, refunding any bonded funds,"]
#[doc = "assuming it hasn't been cancelled or executed."]
#[doc = "Note that proposals scheduled-for-execution can also be rejected."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal was cancelled or executed."]
pub fn reject_proposal(
&self,
id: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::reject_proposal { id },
))
}
#[doc = "Prune the PIP given by the `id`, refunding any funds not already refunded."]
#[doc = "The PIP may not be active"]
#[doc = ""]
#[doc = "This function is intended for storage garbage collection purposes."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` unless a GC voting majority executes this function."]
#[doc = "* `NoSuchProposal` if the PIP with `id` doesn't exist."]
#[doc = "* `IncorrectProposalState` if the proposal is active."]
pub fn prune_proposal(
&self,
id: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::prune_proposal { id },
))
}
#[doc = "Updates the execution schedule of the PIP given by `id`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `until` defines the future block where the enactment period will finished."]
#[doc = " `None` value means that enactment period is going to finish in the next block."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `RescheduleNotByReleaseCoordinator` unless triggered by release coordinator."]
#[doc = "* `IncorrectProposalState` unless the proposal was in a scheduled state."]
pub fn reschedule_execution(
&self,
id: pallet_pips::PipId,
until: Option<u32>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::reschedule_execution { id, until },
))
}
#[doc = "Clears the snapshot and emits the event `SnapshotCleared`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotACommitteeMember` - triggered when a non-GC-member executes the function."]
pub fn clear_snapshot(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::clear_snapshot,
))
}
#[doc = "Takes a new snapshot of the current list of active && pending PIPs."]
#[doc = "The PIPs are then sorted into a priority queue based on each PIP's weight."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `NotACommitteeMember` - triggered when a non-GC-member executes the function."]
pub fn snapshot(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::snapshot,
))
}
#[doc = "Enacts `results` for the PIPs in the snapshot queue."]
#[doc = "The snapshot will be available for further enactments until it is cleared."]
#[doc = ""]
#[doc = "The `results` are encoded a list of `(id, result)` where `result` is applied to `id`."]
#[doc = "Note that the snapshot priority queue is encoded with the *lowest priority first*."]
#[doc = "so `results = [(id, Approve)]` will approve `SnapshotQueue[SnapshotQueue.len() - 1]`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - unless a GC voting majority executes this function."]
#[doc = "* `CannotSkipPip` - a given PIP has already been skipped too many times."]
#[doc = "* `SnapshotResultTooLarge` - on len(results) > len(snapshot_queue)."]
#[doc = "* `SnapshotIdMismatch` - if:"]
#[doc = " ```text"]
#[doc = " ∃ (i ∈ 0..SnapshotQueue.len())."]
#[doc = " results[i].0 ≠SnapshotQueue[SnapshotQueue.len() - i].id"]
#[doc = " ```"]
#[doc = " This is protects against clearing queue while GC is voting."]
pub fn enact_snapshot_results(
&self,
results: Vec<(pallet_pips::PipId, pallet_pips::SnapshotResult)>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::enact_snapshot_results { results },
))
}
#[doc = "Internal dispatchable that handles execution of a PIP."]
pub fn execute_scheduled_pip(
&self,
id: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::execute_scheduled_pip { id },
))
}
#[doc = "Internal dispatchable that handles expiration of a PIP."]
pub fn expire_scheduled_pip(
&self,
did: polymesh_primitives::identity_id::IdentityId,
id: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Pips(
types::pallet_pips::Call::expire_scheduled_pip { did, id },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Determines whether historical PIP data is persisted or removed"]
pub async fn prune_historical_pips(&self) -> ::polymesh_api_client::error::Result<bool> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 189u8, 16u8, 192u8, 60u8, 149u8, 36u8, 81u8, 199u8, 53u8, 30u8,
52u8, 222u8, 47u8, 68u8, 166u8, 44u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The minimum amount to be used as a deposit for community PIP creation."]
pub async fn minimum_proposal_deposit(&self) -> ::polymesh_api_client::error::Result<u128> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 142u8, 186u8, 24u8, 71u8, 175u8, 165u8, 243u8, 64u8, 139u8, 26u8,
206u8, 10u8, 193u8, 132u8, 103u8, 2u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Default enactment period that will be use after a proposal is accepted by GC."]
pub async fn default_enactment_period(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 51u8, 170u8, 252u8, 74u8, 212u8, 72u8, 38u8, 0u8, 53u8, 50u8, 101u8,
120u8, 239u8, 111u8, 130u8, 18u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " How many blocks will it take, after a `Pending` PIP expires,"]
#[doc = " assuming it has not transitioned to another `ProposalState`?"]
pub async fn pending_pip_expiry(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_common_utilities::MaybeBlock<u32>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 58u8, 147u8, 255u8, 239u8, 101u8, 133u8, 6u8, 145u8, 79u8, 53u8,
65u8, 205u8, 53u8, 56u8, 227u8, 209u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8];
<polymesh_common_utilities::MaybeBlock<u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Maximum times a PIP can be skipped before triggering `CannotSkipPip` in `enact_snapshot_results`."]
pub async fn max_pip_skip_count(&self) -> ::polymesh_api_client::error::Result<u8> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 220u8, 153u8, 145u8, 58u8, 218u8, 242u8, 187u8, 63u8, 0u8, 101u8,
235u8, 95u8, 125u8, 163u8, 103u8, 164u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<u8>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The maximum allowed number for `ActivePipCount`."]
#[doc = " Once reached, new PIPs cannot be proposed by community members."]
pub async fn active_pip_limit(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 142u8, 176u8, 200u8, 221u8, 213u8, 71u8, 139u8, 145u8, 46u8, 82u8,
219u8, 155u8, 155u8, 174u8, 243u8, 103u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Proposals so far. id can be used to keep track of PIPs off-chain."]
pub async fn pip_id_sequence(
&self,
) -> ::polymesh_api_client::error::Result<pallet_pips::PipId> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 89u8, 187u8, 247u8, 248u8, 106u8, 18u8, 26u8, 188u8, 148u8, 170u8,
211u8, 21u8, 5u8, 34u8, 135u8, 100u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<pallet_pips::PipId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Snapshots so far. id can be used to keep track of snapshots off-chain."]
pub async fn snapshot_id_sequence(
&self,
) -> ::polymesh_api_client::error::Result<pallet_pips::SnapshotId> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 6u8, 175u8, 149u8, 151u8, 152u8, 112u8, 164u8, 18u8, 129u8, 2u8,
178u8, 5u8, 64u8, 255u8, 210u8, 228u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<pallet_pips::SnapshotId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Total count of current pending or scheduled PIPs."]
pub async fn active_pip_count(&self) -> ::polymesh_api_client::error::Result<u32> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 160u8, 15u8, 19u8, 210u8, 89u8, 80u8, 103u8, 48u8, 205u8, 26u8,
95u8, 188u8, 201u8, 27u8, 117u8, 206u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The metadata of the active proposals."]
pub async fn proposal_metadata(
&self,
key_0: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<Option<pallet_pips::PipsMetadata<u32>>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 84u8, 36u8, 238u8, 140u8, 56u8, 250u8, 92u8, 7u8, 255u8, 42u8,
121u8, 197u8, 145u8, 184u8, 96u8, 30u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Those who have locked a deposit."]
#[doc = " proposal (id, proposer) -> deposit"]
pub async fn deposits(
&self,
key_0: pallet_pips::PipId,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
pallet_pips::DepositInfo<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 116u8, 166u8, 20u8, 219u8, 128u8, 33u8, 198u8, 189u8, 10u8, 2u8,
138u8, 175u8, 223u8, 41u8, 221u8, 8u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_pips::DepositInfo<::polymesh_api_client::sp_core::crypto::AccountId32>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Actual proposal for a given id, if it's current."]
#[doc = " proposal id -> proposal"]
pub async fn proposals(
&self,
key_0: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<
Option<
pallet_pips::Pip<
polymesh_runtime_develop::runtime::Call,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 136u8, 194u8, 247u8, 24u8, 140u8, 111u8, 221u8, 29u8, 255u8, 174u8,
47u8, 160u8, 209u8, 113u8, 244u8, 64u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " PolymeshVotes on a given proposal, if it is ongoing."]
#[doc = " proposal id -> vote count"]
pub async fn proposal_result(
&self,
key_0: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<pallet_pips::VotingResult> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 239u8, 64u8, 138u8, 67u8, 171u8, 101u8, 203u8, 26u8, 180u8, 173u8,
95u8, 36u8, 142u8, 58u8, 33u8, 239u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_pips::VotingResult>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Votes per Proposal and account. Used to avoid double vote issue."]
#[doc = " (proposal id, account) -> Vote"]
pub async fn proposal_votes(
&self,
key_0: pallet_pips::PipId,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Option<pallet_pips::Vote>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 38u8, 65u8, 14u8, 13u8, 124u8, 179u8, 198u8, 250u8, 215u8, 127u8,
63u8, 42u8, 53u8, 72u8, 177u8, 49u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Maps PIPs to the block at which they will be executed, if any."]
pub async fn pip_to_schedule(
&self,
key_0: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<Option<u32>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 235u8, 79u8, 164u8, 184u8, 26u8, 18u8, 180u8, 116u8, 221u8, 96u8,
50u8, 249u8, 124u8, 39u8, 211u8, 186u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A live priority queue (lowest priority at index 0)"]
#[doc = " of pending PIPs up to the active limit."]
#[doc = " Priority is defined by the `weight` in the `SnapshottedPip`."]
#[doc = ""]
#[doc = " Unlike `SnapshotQueue`, this queue is live, getting updated with each vote cast."]
#[doc = " The snapshot is therefore essentially a point-in-time clone of this queue."]
pub async fn live_queue(
&self,
) -> ::polymesh_api_client::error::Result<Vec<pallet_pips::SnapshottedPip>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 199u8, 191u8, 241u8, 183u8, 34u8, 25u8, 14u8, 165u8, 58u8, 69u8,
114u8, 15u8, 85u8, 83u8, 223u8, 90u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_pips::SnapshottedPip>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The priority queue (lowest priority at index 0) of PIPs at the point of snapshotting."]
#[doc = " Priority is defined by the `weight` in the `SnapshottedPip`."]
#[doc = ""]
#[doc = " A queued PIP can be skipped. Doing so bumps the `pip_skip_count`."]
#[doc = " Once a (configurable) threshhold is exceeded, a PIP cannot be skipped again."]
pub async fn snapshot_queue(
&self,
) -> ::polymesh_api_client::error::Result<Vec<pallet_pips::SnapshottedPip>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 71u8, 8u8, 47u8, 250u8, 214u8, 91u8, 162u8, 233u8, 118u8, 69u8,
120u8, 55u8, 47u8, 38u8, 190u8, 247u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_pips::SnapshottedPip>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The metadata of the snapshot, if there is one."]
pub async fn snapshot_meta(
&self,
) -> ::polymesh_api_client::error::Result<
Option<
pallet_pips::SnapshotMetadata<u32, ::polymesh_api_client::sp_core::crypto::AccountId32>,
>,
> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 90u8, 74u8, 35u8, 0u8, 255u8, 31u8, 130u8, 141u8, 244u8, 34u8,
103u8, 253u8, 93u8, 30u8, 199u8, 83u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The number of times a certain PIP has been skipped."]
#[doc = " Once a (configurable) threshhold is exceeded, a PIP cannot be skipped again."]
pub async fn pip_skip_count(
&self,
key_0: pallet_pips::PipId,
) -> ::polymesh_api_client::error::Result<u8> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 225u8, 98u8, 238u8, 82u8, 4u8, 74u8, 74u8, 120u8, 78u8, 232u8,
200u8, 123u8, 191u8, 156u8, 108u8, 85u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<u8>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " All existing PIPs where the proposer is a committee."]
#[doc = " This list is a cache of all ids in `Proposals` with `Proposer::Committee(_)`."]
pub async fn committee_pips(
&self,
) -> ::polymesh_api_client::error::Result<Vec<pallet_pips::PipId>> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 189u8, 121u8, 13u8, 219u8, 47u8, 171u8, 170u8, 240u8, 102u8, 140u8,
146u8, 163u8, 22u8, 76u8, 210u8, 186u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_pips::PipId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_pips::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
55u8, 181u8, 173u8, 154u8, 186u8, 156u8, 122u8, 135u8, 120u8, 164u8, 215u8, 115u8, 13u8,
254u8, 103u8, 198u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_pips::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod portfolio {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Creates a portfolio with the given `name`."]
pub fn create_portfolio(
&self,
name: polymesh_primitives::identity_id::PortfolioName,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::create_portfolio { name },
))
}
#[doc = "Deletes a user portfolio. A portfolio can be deleted only if it has no funds."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if `num` doesn't reference a valid portfolio."]
#[doc = "* `PortfolioNotEmpty` if the portfolio still holds any asset"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn delete_portfolio(
&self,
num: polymesh_primitives::identity_id::PortfolioNumber,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::delete_portfolio { num },
))
}
#[doc = "Moves a token amount from one portfolio of an identity to another portfolio of the same"]
#[doc = "identity. Must be called by the custodian of the sender."]
#[doc = "Funds from deleted portfolios can also be recovered via this method."]
#[doc = ""]
#[doc = "A short memo can be added to to each token amount moved."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if one or both of the portfolios reference an invalid portfolio."]
#[doc = "* `destination_is_same_portfolio` if both sender and receiver portfolio are the same"]
#[doc = "* `DifferentIdentityPortfolios` if the sender and receiver portfolios belong to different identities"]
#[doc = "* `UnauthorizedCustodian` if the caller is not the custodian of the from portfolio"]
#[doc = "* `InsufficientPortfolioBalance` if the sender does not have enough free balance"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn move_portfolio_funds(
&self,
from: polymesh_primitives::identity_id::PortfolioId,
to: polymesh_primitives::identity_id::PortfolioId,
items: Vec<pallet_portfolio::MovePortfolioItem>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::move_portfolio_funds { from, to, items },
))
}
#[doc = "Renames a non-default portfolio."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `PortfolioDoesNotExist` if `num` doesn't reference a valid portfolio."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn rename_portfolio(
&self,
num: polymesh_primitives::identity_id::PortfolioNumber,
to_name: polymesh_primitives::identity_id::PortfolioName,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::rename_portfolio { num, to_name },
))
}
#[doc = "When called by the custodian of `portfolio_id`,"]
#[doc = "allows returning the custody of the portfolio to the portfolio owner unilaterally."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `UnauthorizedCustodian` if the caller is not the current custodian of `portfolio_id`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn quit_portfolio_custody(
&self,
pid: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::quit_portfolio_custody { pid },
))
}
pub fn accept_portfolio_custody(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Portfolio(
types::pallet_portfolio::Call::accept_portfolio_custody { auth_id },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The next portfolio sequence number of an identity."]
pub async fn next_portfolio_number(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_id::PortfolioNumber>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 172u8, 83u8, 250u8, 216u8, 150u8, 217u8, 192u8, 44u8, 226u8, 108u8, 214u8,
101u8, 230u8, 169u8, 16u8, 146u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::identity_id::PortfolioNumber>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The set of existing portfolios with their names. If a certain pair of a DID and"]
#[doc = " portfolio number maps to `None` then such a portfolio doesn't exist. Conversely, if a"]
#[doc = " pair maps to `Some(name)` then such a portfolio exists and is called `name`."]
pub async fn portfolios(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::identity_id::PortfolioNumber,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_id::PortfolioName>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 216u8, 45u8, 233u8, 131u8, 28u8, 44u8, 102u8, 233u8, 160u8, 8u8, 50u8,
33u8, 79u8, 22u8, 134u8, 96u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<polymesh_primitives::identity_id::PortfolioName>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Inverse map of `Portfolios` used to ensure bijectivitiy,"]
#[doc = " and uniqueness of names in `Portfolios`."]
pub async fn name_to_number(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::identity_id::PortfolioName,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::identity_id::PortfolioNumber>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 201u8, 73u8, 93u8, 142u8, 176u8, 225u8, 64u8, 248u8, 75u8, 153u8, 21u8,
11u8, 147u8, 73u8, 1u8, 128u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::identity_id::PortfolioNumber>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " How many assets with non-zero balance this portfolio contains."]
pub async fn portfolio_asset_count(
&self,
key_0: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 134u8, 1u8, 141u8, 242u8, 36u8, 217u8, 225u8, 140u8, 57u8, 102u8, 61u8,
167u8, 241u8, 14u8, 193u8, 102u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The asset balances of portfolios."]
pub async fn portfolio_asset_balances(
&self,
key_0: polymesh_primitives::identity_id::PortfolioId,
key_1: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 187u8, 126u8, 217u8, 17u8, 104u8, 223u8, 249u8, 141u8, 179u8, 194u8, 128u8,
143u8, 216u8, 237u8, 226u8, 9u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Amount of assets locked in a portfolio."]
#[doc = " These assets show up in portfolio balance but can not be transferred away."]
pub async fn portfolio_locked_assets(
&self,
key_0: polymesh_primitives::identity_id::PortfolioId,
key_1: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 116u8, 19u8, 199u8, 203u8, 198u8, 5u8, 145u8, 166u8, 100u8, 250u8, 216u8,
43u8, 219u8, 255u8, 196u8, 204u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The custodian of a particular portfolio. None implies that the identity owner is the custodian."]
pub async fn portfolio_custodian(
&self,
key_0: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::identity_id::IdentityId>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 10u8, 6u8, 59u8, 83u8, 137u8, 54u8, 238u8, 218u8, 141u8, 253u8, 27u8,
117u8, 25u8, 62u8, 192u8, 180u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Tracks all the portfolios in custody of a particular identity. Only used by the UIs."]
#[doc = " When `true` is stored as the value for a given `(did, pid)`, it means that `pid` is in custody of `did`."]
#[doc = " `false` values are never explicitly stored in the map, and are instead inferred by the absence of a key."]
pub async fn portfolios_in_custody(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 151u8, 1u8, 246u8, 111u8, 5u8, 25u8, 23u8, 126u8, 54u8, 90u8, 86u8, 176u8,
77u8, 30u8, 44u8, 29u8,
]);
buf.extend(key_0.encode());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_portfolio::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
36u8, 2u8, 13u8, 65u8, 5u8, 65u8, 106u8, 176u8, 166u8, 221u8, 157u8, 115u8, 101u8, 254u8,
169u8, 230u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8, 169u8,
77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_portfolio::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod protocol_fee {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Changes the fee coefficient for the root origin."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - Only root allowed."]
pub fn change_coefficient(
&self,
coefficient: polymesh_primitives::PosRatio,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::ProtocolFee(
types::pallet_protocol_fee::Call::change_coefficient { coefficient },
))
}
#[doc = "Changes the a base fee for the root origin."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `BadOrigin` - Only root allowed."]
pub fn change_base_fee(
&self,
op: polymesh_common_utilities::protocol_fee::ProtocolOp,
base_fee: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::ProtocolFee(
types::pallet_protocol_fee::Call::change_base_fee { op, base_fee },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The mapping of operation names to the base fees of those operations."]
pub async fn base_fees(
&self,
key_0: polymesh_common_utilities::protocol_fee::ProtocolOp,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
184u8, 15u8, 129u8, 169u8, 9u8, 174u8, 84u8, 41u8, 252u8, 227u8, 28u8, 64u8, 3u8, 169u8,
228u8, 161u8, 54u8, 217u8, 243u8, 154u8, 193u8, 14u8, 44u8, 253u8, 114u8, 99u8, 70u8,
43u8, 154u8, 102u8, 138u8, 8u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The fee coefficient as a positive rational (numerator, denominator)."]
pub async fn coefficient(
&self,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::PosRatio> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
184u8, 15u8, 129u8, 169u8, 9u8, 174u8, 84u8, 41u8, 252u8, 227u8, 28u8, 64u8, 3u8, 169u8,
228u8, 161u8, 155u8, 182u8, 208u8, 38u8, 251u8, 72u8, 4u8, 189u8, 110u8, 17u8, 231u8,
0u8, 23u8, 52u8, 26u8, 97u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[1u8, 0u8, 0u8, 0u8, 1u8, 0u8, 0u8, 0u8];
<polymesh_primitives::PosRatio>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod scheduler {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Anonymously schedule a task."]
pub fn schedule(
&self,
when: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::schedule {
when,
maybe_periodic,
priority,
call: ::std::boxed::Box::new(call),
},
))
}
#[doc = "Cancel an anonymously scheduled task."]
pub fn cancel(
&self,
when: u32,
index: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::cancel { when, index },
))
}
#[doc = "Schedule a named task."]
pub fn schedule_named(
&self,
id: Vec<u8>,
when: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::schedule_named {
id,
when,
maybe_periodic,
priority,
call: ::std::boxed::Box::new(call),
},
))
}
#[doc = "Cancel a named scheduled task."]
pub fn cancel_named(
&self,
id: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::cancel_named { id },
))
}
#[doc = "Anonymously schedule a task after a delay."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`schedule`]."]
#[doc = "# </weight>"]
pub fn schedule_after(
&self,
after: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::schedule_after {
after,
maybe_periodic,
priority,
call: ::std::boxed::Box::new(call),
},
))
}
#[doc = "Schedule a named task after a delay."]
#[doc = ""]
#[doc = "# <weight>"]
#[doc = "Same as [`schedule_named`](Self::schedule_named)."]
#[doc = "# </weight>"]
pub fn schedule_named_after(
&self,
id: Vec<u8>,
after: u32,
maybe_periodic: Option<(u32, u32)>,
priority: u8,
call: frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Scheduler(
types::pallet_scheduler::pallet::Call::schedule_named_after {
id,
after,
maybe_periodic,
priority,
call: ::std::boxed::Box::new(call),
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Items to be executed, indexed by the block number that they should be executed on."]
pub async fn agenda(
&self,
key_0: u32,
) -> ::polymesh_api_client::error::Result<
Vec<
Option<
pallet_scheduler::ScheduledV3<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
u32,
polymesh_runtime_develop::runtime::OriginCaller,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
61u8, 183u8, 162u8, 76u8, 253u8, 201u8, 222u8, 120u8, 89u8, 116u8, 116u8, 108u8, 20u8,
169u8, 157u8, 249u8, 22u8, 67u8, 245u8, 65u8, 151u8, 24u8, 33u8, 156u8, 149u8, 103u8,
157u8, 221u8, 45u8, 130u8, 85u8, 116u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<
Option<
pallet_scheduler::ScheduledV3<
frame_support::traits::schedule::MaybeHashed<
polymesh_runtime_develop::runtime::Call,
primitive_types::H256,
>,
u32,
polymesh_runtime_develop::runtime::OriginCaller,
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Lookup from identity to the block number and index of the task."]
pub async fn lookup(
&self,
key_0: Vec<u8>,
) -> ::polymesh_api_client::error::Result<Option<(u32, u32)>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
61u8, 183u8, 162u8, 76u8, 253u8, 201u8, 222u8, 120u8, 89u8, 116u8, 116u8, 108u8, 20u8,
169u8, 157u8, 249u8, 137u8, 26u8, 212u8, 87u8, 191u8, 77u8, 165u8, 73u8, 144u8, 250u8,
132u8, 162u8, 172u8, 177u8, 72u8, 162u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod settlement {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Registers a new venue."]
#[doc = ""]
#[doc = "* `details` - Extra details about a venue"]
#[doc = "* `signers` - Array of signers that are allowed to sign receipts for this venue"]
#[doc = "* `typ` - Type of venue being created"]
pub fn create_venue(
&self,
details: pallet_settlement::VenueDetails,
signers: Vec<::polymesh_api_client::sp_core::crypto::AccountId32>,
typ: pallet_settlement::VenueType,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::create_venue {
details,
signers,
typ,
},
))
}
#[doc = "Edit a venue's details."]
#[doc = ""]
#[doc = "* `id` specifies the ID of the venue to edit."]
#[doc = "* `details` specifies the updated venue details."]
pub fn update_venue_details(
&self,
id: pallet_settlement::VenueId,
details: pallet_settlement::VenueDetails,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::update_venue_details { id, details },
))
}
#[doc = "Edit a venue's type."]
#[doc = ""]
#[doc = "* `id` specifies the ID of the venue to edit."]
#[doc = "* `type` specifies the new type of the venue."]
pub fn update_venue_type(
&self,
id: pallet_settlement::VenueId,
typ: pallet_settlement::VenueType,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::update_venue_type { id, typ },
))
}
#[doc = "Adds a new instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `venue_id` - ID of the venue this instruction belongs to."]
#[doc = "* `settlement_type` - Defines if the instruction should be settled"]
#[doc = " in the next block after receiving all affirmations or waiting till a specific block."]
#[doc = "* `trade_date` - Optional date from which people can interact with this instruction."]
#[doc = "* `value_date` - Optional date after which the instruction should be settled (not enforced)"]
#[doc = "* `legs` - Legs included in this instruction."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "`950_000_000 + 1_000_000 * legs.len()`"]
pub fn add_instruction(
&self,
venue_id: pallet_settlement::VenueId,
settlement_type: pallet_settlement::SettlementType<u32>,
trade_date: Option<u64>,
value_date: Option<u64>,
legs: Vec<pallet_settlement::Leg>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::add_instruction {
venue_id,
settlement_type,
trade_date,
value_date,
legs,
},
))
}
#[doc = "Adds and affirms a new instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `venue_id` - ID of the venue this instruction belongs to."]
#[doc = "* `settlement_type` - Defines if the instruction should be settled"]
#[doc = " in the next block after receiving all affirmations or waiting till a specific block."]
#[doc = "* `trade_date` - Optional date from which people can interact with this instruction."]
#[doc = "* `value_date` - Optional date after which the instruction should be settled (not enforced)"]
#[doc = "* `legs` - Legs included in this instruction."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to use in this affirmations."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn add_and_affirm_instruction(
&self,
venue_id: pallet_settlement::VenueId,
settlement_type: pallet_settlement::SettlementType<u32>,
trade_date: Option<u64>,
value_date: Option<u64>,
legs: Vec<pallet_settlement::Leg>,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::add_and_affirm_instruction {
venue_id,
settlement_type,
trade_date,
value_date,
legs,
portfolios,
},
))
}
#[doc = "Provide affirmation to an existing instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id to affirm."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to affirm this instruction."]
#[doc = "* `max_legs_count` - Number of legs that need to be affirmed."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn affirm_instruction(
&self,
id: pallet_settlement::InstructionId,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::affirm_instruction {
id,
portfolios,
max_legs_count,
},
))
}
#[doc = "Withdraw an affirmation for a given instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id for that affirmation get withdrawn."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to withdraw affirmation."]
#[doc = "* `max_legs_count` - Number of legs that need to be un-affirmed."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn withdraw_affirmation(
&self,
id: pallet_settlement::InstructionId,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::withdraw_affirmation {
id,
portfolios,
max_legs_count,
},
))
}
#[doc = "Rejects an existing instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Instruction id to reject."]
#[doc = "* `portfolio` - Portfolio to reject the instruction."]
#[doc = "* `num_of_legs` - Number of legs in the instruction."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn reject_instruction(
&self,
id: pallet_settlement::InstructionId,
portfolio: polymesh_primitives::identity_id::PortfolioId,
num_of_legs: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::reject_instruction {
id,
portfolio,
num_of_legs,
},
))
}
#[doc = "Accepts an instruction and claims a signed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = "* `receipt_uid` - Receipt ID generated by the signer."]
#[doc = "* `signer` - Signer of the receipt."]
#[doc = "* `signed_data` - Signed receipt."]
#[doc = "* `portfolios` - Portfolios that the sender controls and wants to accept this instruction with"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn affirm_with_receipts(
&self,
id: pallet_settlement::InstructionId,
receipt_details: Vec<
pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
>,
portfolios: Vec<polymesh_primitives::identity_id::PortfolioId>,
max_legs_count: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::affirm_with_receipts {
id,
receipt_details,
portfolios,
max_legs_count,
},
))
}
#[doc = "Claims a signed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id for the receipt."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = "* `receipt_uid` - Receipt ID generated by the signer."]
#[doc = "* `signer` - Signer of the receipt."]
#[doc = "* `signed_data` - Signed receipt."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn claim_receipt(
&self,
id: pallet_settlement::InstructionId,
receipt_details: pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::claim_receipt {
id,
receipt_details,
},
))
}
#[doc = "Unclaims a previously claimed receipt."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `instruction_id` - Target instruction id for the receipt."]
#[doc = "* `leg_id` - Target leg id for the receipt"]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn unclaim_receipt(
&self,
instruction_id: pallet_settlement::InstructionId,
leg_id: pallet_settlement::LegId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::unclaim_receipt {
instruction_id,
leg_id,
},
))
}
#[doc = "Enables or disabled venue filtering for a token."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `enabled` - Boolean that decides if the filtering should be enabled."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn set_venue_filtering(
&self,
ticker: polymesh_primitives::ticker::Ticker,
enabled: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::set_venue_filtering { ticker, enabled },
))
}
#[doc = "Allows additional venues to create instructions involving an asset."]
#[doc = ""]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `venues` - Array of venues that are allowed to create instructions for the token in question."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn allow_venues(
&self,
ticker: polymesh_primitives::ticker::Ticker,
venues: Vec<pallet_settlement::VenueId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::allow_venues { ticker, venues },
))
}
#[doc = "Revokes permission given to venues for creating instructions involving a particular asset."]
#[doc = ""]
#[doc = "* `ticker` - Ticker of the token in question."]
#[doc = "* `venues` - Array of venues that are no longer allowed to create instructions for the token in question."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn disallow_venues(
&self,
ticker: polymesh_primitives::ticker::Ticker,
venues: Vec<pallet_settlement::VenueId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::disallow_venues { ticker, venues },
))
}
#[doc = "Marks a receipt issued by the caller as claimed or not claimed."]
#[doc = "This allows the receipt issuer to invalidate an already issued receipt or revalidate an already claimed receipt."]
#[doc = ""]
#[doc = "* `receipt_uid` - Unique ID of the receipt."]
#[doc = "* `validity` - New validity of the receipt."]
pub fn change_receipt_validity(
&self,
receipt_uid: u64,
validity: bool,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::change_receipt_validity {
receipt_uid,
validity,
},
))
}
#[doc = "Root callable extrinsic, used as an internal call to execute a scheduled settlement instruction."]
pub fn execute_scheduled_instruction(
&self,
id: pallet_settlement::InstructionId,
_legs_count: u32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::execute_scheduled_instruction { id, _legs_count },
))
}
#[doc = "Reschedules a failed instruction."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "* `id` - Target instruction id to reschedule."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `InstructionNotFailed` - Instruction not in a failed state or does not exist."]
pub fn reschedule_instruction(
&self,
id: pallet_settlement::InstructionId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Settlement(
types::pallet_settlement::Call::reschedule_instruction { id },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Info about a venue. venue_id -> venue"]
pub async fn venue_info(
&self,
key_0: pallet_settlement::VenueId,
) -> ::polymesh_api_client::error::Result<Option<pallet_settlement::Venue>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 37u8, 149u8, 35u8, 221u8, 234u8, 221u8, 43u8, 130u8, 235u8, 131u8,
158u8, 182u8, 118u8, 158u8, 16u8, 163u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Free-form text about a venue. venue_id -> `VenueDetails`"]
#[doc = " Only needed for the UI."]
pub async fn details(
&self,
key_0: pallet_settlement::VenueId,
) -> ::polymesh_api_client::error::Result<pallet_settlement::VenueDetails> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 38u8, 140u8, 214u8, 5u8, 85u8, 135u8, 135u8, 226u8, 198u8, 220u8,
28u8, 194u8, 130u8, 139u8, 228u8, 24u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_settlement::VenueDetails>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Instructions under a venue."]
#[doc = " Only needed for the UI."]
#[doc = ""]
#[doc = " venue_id -> instruction_id -> ()"]
pub async fn venue_instructions(
&self,
key_0: pallet_settlement::VenueId,
key_1: pallet_settlement::InstructionId,
) -> ::polymesh_api_client::error::Result<()> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 194u8, 12u8, 53u8, 241u8, 21u8, 245u8, 35u8, 172u8, 170u8, 85u8, 47u8,
113u8, 49u8, 126u8, 98u8, 7u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[];
<()>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Signers allowed by the venue. (venue_id, signer) -> bool"]
pub async fn venue_signers(
&self,
key_0: pallet_settlement::VenueId,
key_1: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 182u8, 5u8, 81u8, 237u8, 11u8, 31u8, 45u8, 224u8, 46u8, 226u8, 44u8,
156u8, 78u8, 11u8, 160u8, 64u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Array of venues created by an identity. Only needed for the UI. IdentityId -> Vec<venue_id>"]
pub async fn user_venues(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<Vec<pallet_settlement::VenueId>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 210u8, 109u8, 136u8, 8u8, 7u8, 235u8, 230u8, 119u8, 137u8, 87u8,
141u8, 192u8, 40u8, 218u8, 115u8, 74u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_settlement::VenueId>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Details about an instruction. instruction_id -> instruction_details"]
pub async fn instruction_details(
&self,
key_0: pallet_settlement::InstructionId,
) -> ::polymesh_api_client::error::Result<pallet_settlement::Instruction<u64, u32>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 139u8, 174u8, 75u8, 191u8, 82u8, 90u8, 68u8, 48u8, 145u8, 19u8, 222u8,
238u8, 96u8, 255u8, 129u8, 178u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8,
];
<pallet_settlement::Instruction<u64, u32>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Legs under an instruction. (instruction_id, leg_id) -> Leg"]
pub async fn instruction_legs(
&self,
key_0: pallet_settlement::InstructionId,
key_1: pallet_settlement::LegId,
) -> ::polymesh_api_client::error::Result<pallet_settlement::Leg> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 17u8, 1u8, 179u8, 157u8, 113u8, 141u8, 101u8, 250u8, 213u8, 115u8,
20u8, 61u8, 204u8, 53u8, 74u8, 4u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<pallet_settlement::Leg>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Status of a leg under an instruction. (instruction_id, leg_id) -> LegStatus"]
pub async fn instruction_leg_status(
&self,
key_0: pallet_settlement::InstructionId,
key_1: pallet_settlement::LegId,
) -> ::polymesh_api_client::error::Result<
pallet_settlement::LegStatus<::polymesh_api_client::sp_core::crypto::AccountId32>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 241u8, 210u8, 62u8, 209u8, 210u8, 216u8, 97u8, 163u8, 74u8, 117u8,
189u8, 72u8, 12u8, 109u8, 191u8, 35u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_settlement::LegStatus<
::polymesh_api_client::sp_core::crypto::AccountId32,
>>::decode(&mut &DEFAULT[..])
.unwrap()
}))
}
#[doc = " Number of affirmations pending before instruction is executed. instruction_id -> affirm_pending"]
pub async fn instruction_affirms_pending(
&self,
key_0: pallet_settlement::InstructionId,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 84u8, 168u8, 38u8, 237u8, 42u8, 215u8, 233u8, 246u8, 173u8, 70u8, 3u8,
122u8, 135u8, 90u8, 149u8, 95u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Tracks affirmations received for an instruction. (instruction_id, counter_party) -> AffirmationStatus"]
pub async fn affirms_received(
&self,
key_0: pallet_settlement::InstructionId,
key_1: polymesh_primitives::identity_id::PortfolioId,
) -> ::polymesh_api_client::error::Result<pallet_settlement::AffirmationStatus> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 196u8, 164u8, 249u8, 77u8, 192u8, 14u8, 231u8, 77u8, 10u8, 20u8, 57u8,
61u8, 241u8, 216u8, 34u8, 202u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_settlement::AffirmationStatus>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Helps a user track their pending instructions and affirmations (only needed for UI)."]
#[doc = " (counter_party, instruction_id) -> AffirmationStatus"]
pub async fn user_affirmations(
&self,
key_0: polymesh_primitives::identity_id::PortfolioId,
key_1: pallet_settlement::InstructionId,
) -> ::polymesh_api_client::error::Result<pallet_settlement::AffirmationStatus> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 34u8, 4u8, 158u8, 52u8, 236u8, 109u8, 105u8, 33u8, 29u8, 40u8, 146u8,
57u8, 70u8, 48u8, 102u8, 159u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_settlement::AffirmationStatus>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Tracks redemption of receipts. (signer, receipt_uid) -> receipt_used"]
pub async fn receipts_used(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
key_1: u64,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 127u8, 126u8, 234u8, 226u8, 61u8, 64u8, 167u8, 253u8, 218u8, 94u8,
162u8, 111u8, 120u8, 56u8, 116u8, 157u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Tracks if a token has enabled filtering venues that can create instructions involving their token. Ticker -> filtering_enabled"]
pub async fn venue_filtering(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 242u8, 42u8, 22u8, 99u8, 179u8, 59u8, 93u8, 97u8, 223u8, 90u8, 186u8,
160u8, 76u8, 19u8, 198u8, 73u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Venues that are allowed to create instructions involving a particular ticker. Only used if filtering is enabled."]
#[doc = " (ticker, venue_id) -> allowed"]
pub async fn venue_allow_list(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: pallet_settlement::VenueId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 113u8, 120u8, 81u8, 211u8, 168u8, 229u8, 128u8, 215u8, 96u8, 177u8,
241u8, 151u8, 120u8, 224u8, 185u8, 22u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Number of venues in the system (It's one more than the actual number)"]
pub async fn venue_counter(
&self,
) -> ::polymesh_api_client::error::Result<pallet_settlement::VenueId> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 117u8, 30u8, 157u8, 0u8, 240u8, 121u8, 103u8, 207u8, 127u8, 87u8,
212u8, 100u8, 178u8, 100u8, 6u8, 108u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<pallet_settlement::VenueId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Number of instructions in the system (It's one more than the actual number)"]
pub async fn instruction_counter(
&self,
) -> ::polymesh_api_client::error::Result<pallet_settlement::InstructionId> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 186u8, 56u8, 151u8, 67u8, 78u8, 201u8, 90u8, 108u8, 36u8, 245u8,
147u8, 242u8, 23u8, 13u8, 233u8, 58u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<pallet_settlement::InstructionId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_settlement::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
165u8, 111u8, 232u8, 82u8, 109u8, 208u8, 251u8, 206u8, 254u8, 94u8, 76u8, 244u8, 45u8,
74u8, 131u8, 57u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_settlement::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod statistics {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Set the active asset stat_types."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `stat_types` - the new stat types to replace any existing types."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `StatTypeLimitReached` - too many stat types enabled for the `asset`."]
#[doc = "- `CannotRemoveStatTypeInUse` - can not remove a stat type that is in use by transfer conditions."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
pub fn set_active_asset_stats(
&self,
asset: polymesh_primitives::statistics::AssetScope,
stat_types: std::collections::BTreeSet<polymesh_primitives::statistics::StatType>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Statistics(
types::pallet_statistics::Call::set_active_asset_stats { asset, stat_types },
))
}
#[doc = "Allow a trusted issuer to init/resync ticker/company stats."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `stat_type` - stat type to update."]
#[doc = "- `values` - Updated values for `stat_type`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `StatTypeMissing` - `stat_type` is not enabled for the `asset`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
pub fn batch_update_asset_stats(
&self,
asset: polymesh_primitives::statistics::AssetScope,
stat_type: polymesh_primitives::statistics::StatType,
values: std::collections::BTreeSet<polymesh_primitives::statistics::StatUpdate>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Statistics(
types::pallet_statistics::Call::batch_update_asset_stats {
asset,
stat_type,
values,
},
))
}
#[doc = "Set asset transfer compliance rules."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `asset`."]
#[doc = "- `asset` - the asset to change the active stats on."]
#[doc = "- `transfer_conditions` - the new transfer condition to replace any existing conditions."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `TransferConditionLimitReached` - too many transfer condititon enabled for `asset`."]
#[doc = "- `StatTypeMissing` - a transfer condition requires a stat type that is not enabled for the `asset`."]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
pub fn set_asset_transfer_compliance(
&self,
asset: polymesh_primitives::statistics::AssetScope,
transfer_conditions: std::collections::BTreeSet<
polymesh_primitives::transfer_compliance::TransferCondition,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Statistics(
types::pallet_statistics::Call::set_asset_transfer_compliance {
asset,
transfer_conditions,
},
))
}
#[doc = "Set/unset entities exempt from an asset's transfer compliance rules."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `origin` - a signer that has permissions to act as an agent of `exempt_key.asset`."]
#[doc = "- `is_exempt` - enable/disable exemption for `entities`."]
#[doc = "- `exempt_key` - the asset and stat type to exempt the `entities` from."]
#[doc = "- `entities` - the entities to set/unset the exemption for."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "- Agent"]
#[doc = "- Asset"]
pub fn set_entities_exempt(
&self,
is_exempt: bool,
exempt_key: polymesh_primitives::transfer_compliance::TransferConditionExemptKey,
entities: std::collections::BTreeSet<polymesh_primitives::identity_id::IdentityId>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Statistics(
types::pallet_statistics::Call::set_entities_exempt {
is_exempt,
exempt_key,
entities,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Active stats for a ticker/company. There should be a max limit on the number of active stats for a ticker/company."]
pub async fn active_asset_stats(
&self,
key_0: polymesh_primitives::statistics::AssetScope,
) -> ::polymesh_api_client::error::Result<
std::collections::BTreeSet<polymesh_primitives::statistics::StatType>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
122u8, 118u8, 79u8, 87u8, 64u8, 136u8, 128u8, 152u8, 133u8, 248u8, 66u8, 104u8, 92u8,
191u8, 151u8, 8u8, 239u8, 22u8, 59u8, 174u8, 32u8, 48u8, 119u8, 218u8, 227u8, 43u8,
193u8, 151u8, 65u8, 213u8, 147u8, 30u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<std::collections::BTreeSet<polymesh_primitives::statistics::StatType>>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Asset stats."]
pub async fn asset_stats(
&self,
key_0: polymesh_primitives::statistics::Stat1stKey,
key_1: polymesh_primitives::statistics::Stat2ndKey,
) -> ::polymesh_api_client::error::Result<u128> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
122u8, 118u8, 79u8, 87u8, 64u8, 136u8, 128u8, 152u8, 133u8, 248u8, 66u8, 104u8, 92u8,
191u8, 151u8, 8u8, 13u8, 224u8, 187u8, 176u8, 120u8, 186u8, 103u8, 210u8, 250u8, 246u8,
251u8, 70u8, 123u8, 141u8, 62u8, 51u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[
0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8,
];
<u128>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Asset transfer compliance for a ticker (AssetScope -> AssetTransferCompliance)"]
pub async fn asset_transfer_compliances(
&self,
key_0: polymesh_primitives::statistics::AssetScope,
) -> ::polymesh_api_client::error::Result<
polymesh_primitives::transfer_compliance::AssetTransferCompliance,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
122u8, 118u8, 79u8, 87u8, 64u8, 136u8, 128u8, 152u8, 133u8, 248u8, 66u8, 104u8, 92u8,
191u8, 151u8, 8u8, 86u8, 51u8, 252u8, 244u8, 127u8, 54u8, 208u8, 97u8, 49u8, 83u8, 224u8,
203u8, 24u8, 190u8, 105u8, 124u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8];
<polymesh_primitives::transfer_compliance::AssetTransferCompliance>::decode(
&mut &DEFAULT[..],
)
.unwrap()
}))
}
#[doc = " Entities exempt from a Transfer Compliance rule."]
pub async fn transfer_condition_exempt_entities(
&self,
key_0: polymesh_primitives::transfer_compliance::TransferConditionExemptKey,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<bool> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
122u8, 118u8, 79u8, 87u8, 64u8, 136u8, 128u8, 152u8, 133u8, 248u8, 66u8, 104u8, 92u8,
191u8, 151u8, 8u8, 26u8, 48u8, 88u8, 202u8, 218u8, 234u8, 155u8, 104u8, 25u8, 241u8,
119u8, 22u8, 42u8, 149u8, 27u8, 223u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<bool>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Storage migration version."]
pub async fn storage_version(
&self,
) -> ::polymesh_api_client::error::Result<pallet_statistics::Version> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
122u8, 118u8, 79u8, 87u8, 64u8, 136u8, 128u8, 152u8, 133u8, 248u8, 66u8, 104u8, 92u8,
191u8, 151u8, 8u8, 48u8, 140u8, 233u8, 97u8, 93u8, 224u8, 119u8, 90u8, 130u8, 248u8,
169u8, 77u8, 195u8, 210u8, 133u8, 161u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_statistics::Version>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod sto {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Create a new fundraiser."]
#[doc = ""]
#[doc = "* `offering_portfolio` - Portfolio containing the `offering_asset`."]
#[doc = "* `offering_asset` - Asset being offered."]
#[doc = "* `raising_portfolio` - Portfolio containing the `raising_asset`."]
#[doc = "* `raising_asset` - Asset being exchanged for `offering_asset` on investment."]
#[doc = "* `tiers` - Price tiers to charge investors on investment."]
#[doc = "* `venue_id` - Venue to handle settlement."]
#[doc = "* `start` - Fundraiser start time, if `None` the fundraiser will start immediately."]
#[doc = "* `end` - Fundraiser end time, if `None` the fundraiser will never expire."]
#[doc = "* `minimum_investment` - Minimum amount of `raising_asset` that an investor needs to spend to invest in this raise."]
#[doc = "* `fundraiser_name` - Fundraiser name, only used in the UIs."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Portfolio"]
pub fn create_fundraiser(
&self,
offering_portfolio: polymesh_primitives::identity_id::PortfolioId,
offering_asset: polymesh_primitives::ticker::Ticker,
raising_portfolio: polymesh_primitives::identity_id::PortfolioId,
raising_asset: polymesh_primitives::ticker::Ticker,
tiers: Vec<pallet_sto::PriceTier>,
venue_id: pallet_settlement::VenueId,
start: Option<u64>,
end: Option<u64>,
minimum_investment: u128,
fundraiser_name: pallet_sto::FundraiserName,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::create_fundraiser {
offering_portfolio,
offering_asset,
raising_portfolio,
raising_asset,
tiers,
venue_id,
start,
end,
minimum_investment,
fundraiser_name,
},
))
}
#[doc = "Invest in a fundraiser."]
#[doc = ""]
#[doc = "* `investment_portfolio` - Portfolio that `offering_asset` will be deposited in."]
#[doc = "* `funding_portfolio` - Portfolio that will fund the investment."]
#[doc = "* `offering_asset` - Asset to invest in."]
#[doc = "* `id` - ID of the fundraiser to invest in."]
#[doc = "* `purchase_amount` - Amount of `offering_asset` to purchase."]
#[doc = "* `max_price` - Maximum price to pay per unit of `offering_asset`, If `None`there are no constraints on price."]
#[doc = "* `receipt` - Off-chain receipt to use instead of on-chain balance in `funding_portfolio`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Portfolio"]
pub fn invest(
&self,
investment_portfolio: polymesh_primitives::identity_id::PortfolioId,
funding_portfolio: polymesh_primitives::identity_id::PortfolioId,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
purchase_amount: u128,
max_price: Option<u128>,
receipt: Option<
pallet_settlement::ReceiptDetails<
::polymesh_api_client::sp_core::crypto::AccountId32,
sp_runtime::MultiSignature,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::invest {
investment_portfolio,
funding_portfolio,
offering_asset,
id,
purchase_amount,
max_price,
receipt,
},
))
}
#[doc = "Freeze a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to freeze."]
#[doc = "* `id` - ID of the fundraiser to freeze."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn freeze_fundraiser(
&self,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::freeze_fundraiser { offering_asset, id },
))
}
#[doc = "Unfreeze a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to unfreeze."]
#[doc = "* `id` - ID of the fundraiser to unfreeze."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn unfreeze_fundraiser(
&self,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::unfreeze_fundraiser { offering_asset, id },
))
}
#[doc = "Modify the time window a fundraiser is active"]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to modify."]
#[doc = "* `id` - ID of the fundraiser to modify."]
#[doc = "* `start` - New start of the fundraiser."]
#[doc = "* `end` - New end of the fundraiser to modify."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn modify_fundraiser_window(
&self,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
start: u64,
end: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::modify_fundraiser_window {
offering_asset,
id,
start,
end,
},
))
}
#[doc = "Stop a fundraiser."]
#[doc = ""]
#[doc = "* `offering_asset` - Asset to stop."]
#[doc = "* `id` - ID of the fundraiser to stop."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn stop(
&self,
offering_asset: polymesh_primitives::ticker::Ticker,
id: pallet_sto::FundraiserId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Sto(
types::pallet_sto::Call::stop { offering_asset, id },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " All fundraisers that are currently running."]
#[doc = " (ticker, fundraiser_id) -> Fundraiser"]
pub async fn fundraisers(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: pallet_sto::FundraiserId,
) -> ::polymesh_api_client::error::Result<Option<pallet_sto::Fundraiser<u64>>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
74u8, 66u8, 125u8, 144u8, 93u8, 182u8, 66u8, 62u8, 238u8, 230u8, 185u8, 54u8, 235u8,
242u8, 167u8, 54u8, 200u8, 242u8, 149u8, 77u8, 218u8, 243u8, 200u8, 19u8, 142u8, 65u8,
23u8, 184u8, 97u8, 230u8, 68u8, 109u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Total fundraisers created for a token."]
pub async fn fundraiser_count(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<pallet_sto::FundraiserId> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
74u8, 66u8, 125u8, 144u8, 93u8, 182u8, 66u8, 62u8, 238u8, 230u8, 185u8, 54u8, 235u8,
242u8, 167u8, 54u8, 220u8, 57u8, 49u8, 4u8, 64u8, 150u8, 65u8, 208u8, 189u8, 149u8, 72u8,
244u8, 76u8, 90u8, 115u8, 235u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<pallet_sto::FundraiserId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Name for the Fundraiser. Only used offchain."]
#[doc = " (ticker, fundraiser_id) -> Fundraiser name"]
pub async fn fundraiser_names(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: pallet_sto::FundraiserId,
) -> ::polymesh_api_client::error::Result<pallet_sto::FundraiserName> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
74u8, 66u8, 125u8, 144u8, 93u8, 182u8, 66u8, 62u8, 238u8, 230u8, 185u8, 54u8, 235u8,
242u8, 167u8, 54u8, 70u8, 206u8, 185u8, 249u8, 61u8, 181u8, 239u8, 65u8, 114u8, 228u8,
101u8, 54u8, 80u8, 98u8, 238u8, 252u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<pallet_sto::FundraiserName>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod treasury {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "It transfers balances from treasury to each of beneficiaries and the specific amount"]
#[doc = "for each of them."]
#[doc = ""]
#[doc = "# Error"]
#[doc = "* `BadOrigin`: Only root can execute transaction."]
#[doc = "* `InsufficientBalance`: If treasury balances is not enough to cover all beneficiaries."]
#[doc = "* `InvalidIdentity`: If one of the beneficiaries has an invalid identity."]
pub fn disbursement(
&self,
beneficiaries: Vec<polymesh_primitives::Beneficiary<u128>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Treasury(
types::pallet_treasury::Call::disbursement { beneficiaries },
))
}
#[doc = "It transfers the specific `amount` from `origin` account into treasury."]
#[doc = ""]
#[doc = "Only accounts which are associated to an identity can make a donation to treasury."]
pub fn reimbursement(
&self,
amount: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Treasury(
types::pallet_treasury::Call::reimbursement { amount },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod utility {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute until the first one fails and then stop."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin. To determine the success of the batch, an"]
#[doc = "event is deposited. If a call failed and the batch was interrupted, then the"]
#[doc = "`BatchInterrupted` event is deposited, along with the number of successful calls made"]
#[doc = "and the error of the failed call. If all were successful, then the `BatchCompleted`"]
#[doc = "event is deposited."]
pub fn batch(
&self,
calls: Vec<polymesh_runtime_develop::runtime::Call>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Utility(
types::pallet_utility::Call::batch { calls },
))
}
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute all calls, in order, stopping at the first failure,"]
#[doc = "in which case the state changes are rolled back."]
#[doc = "On failure, an event `BatchInterrupted(failure_idx, error)` is deposited."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin."]
#[doc = "To determine the success of the batch, an event is deposited."]
#[doc = "If any call failed, then `BatchInterrupted` is deposited."]
#[doc = "If all were successful, then the `BatchCompleted` event is deposited."]
pub fn batch_atomic(
&self,
calls: Vec<polymesh_runtime_develop::runtime::Call>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Utility(
types::pallet_utility::Call::batch_atomic { calls },
))
}
#[doc = "Dispatch multiple calls from the sender's origin."]
#[doc = ""]
#[doc = "This will execute all calls, in order, irrespective of failures."]
#[doc = "Any failures will be available in a `BatchOptimisticFailed` event."]
#[doc = ""]
#[doc = "May be called from root or a signed origin."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `calls`: The calls to be dispatched from the same origin."]
#[doc = ""]
#[doc = ""]
#[doc = "# Weight"]
#[doc = "- The sum of the weights of the `calls`."]
#[doc = "- One event."]
#[doc = ""]
#[doc = "This will return `Ok` in all circumstances except an unsigned origin."]
#[doc = "To determine the success of the batch, an event is deposited."]
#[doc = "If any call failed, then `BatchOptimisticFailed` is deposited,"]
#[doc = "with a vector of event counts for each call as well as a vector"]
#[doc = "of errors."]
#[doc = "If all were successful, then the `BatchCompleted` event is deposited."]
pub fn batch_optimistic(
&self,
calls: Vec<polymesh_runtime_develop::runtime::Call>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Utility(
types::pallet_utility::Call::batch_optimistic { calls },
))
}
#[doc = "Relay a call for a target from an origin"]
#[doc = ""]
#[doc = "Relaying in this context refers to the ability of origin to make a call on behalf of"]
#[doc = "target."]
#[doc = ""]
#[doc = "Fees are charged to origin"]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = "- `target`: Account to be relayed"]
#[doc = "- `signature`: Signature from target authorizing the relay"]
#[doc = "- `call`: Call to be relayed on behalf of target"]
#[doc = ""]
pub fn relay_tx(
&self,
target: ::polymesh_api_client::sp_core::crypto::AccountId32,
signature: sp_runtime::MultiSignature,
call: pallet_utility::UniqueCall<polymesh_runtime_develop::runtime::Call>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Utility(
types::pallet_utility::Call::relay_tx {
target,
signature,
call,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
pub async fn nonces(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<u64> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
213u8, 225u8, 162u8, 250u8, 22u8, 115u8, 44u8, 230u8, 144u8, 97u8, 137u8, 67u8, 140u8,
10u8, 130u8, 198u8, 194u8, 10u8, 83u8, 78u8, 161u8, 40u8, 231u8, 69u8, 69u8, 109u8,
162u8, 52u8, 205u8, 165u8, 229u8, 109u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod base {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod external_agents {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Creates a custom agent group (AG) for the given `ticker`."]
#[doc = ""]
#[doc = "The AG will have the permissions as given by `perms`."]
#[doc = "This new AG is then assigned `id = AGIdSequence::get() + 1` as its `AGId`,"]
#[doc = "which you can use as `AgentGroup::Custom(id)` when adding agents for `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` to add the custom group for."]
#[doc = "- `perms` that the new AG will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `TooLong` if `perms` had some string or list length that was too long."]
#[doc = "- `CounterOverflow` if `AGIdSequence::get() + 1` would exceed `u32::MAX`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn create_group(
&self,
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::create_group { ticker, perms },
),
)
}
#[doc = "Updates the permissions of the custom AG identified by `id`, for the given `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` the custom AG belongs to."]
#[doc = "- `id` for the custom AG within `ticker`."]
#[doc = "- `perms` to update the custom AG to."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `TooLong` if `perms` had some string or list length that was too long."]
#[doc = "- `NoSuchAG` if `id` does not identify a custom AG."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn set_group_permissions(
&self,
ticker: polymesh_primitives::ticker::Ticker,
id: polymesh_primitives::agent::AGId,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::set_group_permissions { ticker, id, perms },
),
)
}
#[doc = "Remove the given `agent` from `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` that has the `agent` to remove."]
#[doc = "- `agent` of `ticker` to remove."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `NotAnAgent` if `agent` is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if `agent` is the last full one."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn remove_agent(
&self,
ticker: polymesh_primitives::ticker::Ticker,
agent: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::remove_agent { ticker, agent },
),
)
}
#[doc = "Abdicate agentship for `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` of which the caller is an agent."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NotAnAgent` if the caller is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if the caller is the last full agent."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
pub fn abdicate(
&self,
ticker: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::abdicate { ticker },
),
)
}
#[doc = "Change the agent group that `agent` belongs to in `ticker`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `ticker` that has the `agent`."]
#[doc = "- `agent` of `ticker` to change the group for."]
#[doc = "- `group` that `agent` will belong to in `ticker`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this."]
#[doc = "- `NoSuchAG` if `id` does not identify a custom AG."]
#[doc = "- `NotAnAgent` if `agent` is not an agent of `ticker`."]
#[doc = "- `RemovingLastFullAgent` if `agent` was a `Full` one and is being demoted."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn change_group(
&self,
ticker: polymesh_primitives::ticker::Ticker,
agent: polymesh_primitives::identity_id::IdentityId,
group: polymesh_primitives::agent::AgentGroup,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::change_group {
ticker,
agent,
group,
},
),
)
}
#[doc = "Accept an authorization by an agent \"Alice\" who issued `auth_id`"]
#[doc = "to also become an agent of the ticker Alice specified."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `auth_id` identifying the authorization to accept."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AuthorizationError::Invalid` if `auth_id` does not exist for the given caller."]
#[doc = "- `AuthorizationError::Expired` if `auth_id` is for an auth that has expired."]
#[doc = "- `AuthorizationError::BadType` if `auth_id` was not for a `BecomeAgent` auth type."]
#[doc = "- `UnauthorizedAgent` if \"Alice\" is not permissioned to provide the auth."]
#[doc = "- `NoSuchAG` if the group referred to a custom that does not exist."]
#[doc = "- `AlreadyAnAgent` if the caller is already an agent of the ticker."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Agent"]
pub fn accept_become_agent(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::accept_become_agent { auth_id },
),
)
}
#[doc = "Utility extrinsic to batch `create_group` and `add_auth`."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn create_group_and_add_auth(
&self,
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
target: polymesh_primitives::identity_id::IdentityId,
expiry: Option<u64>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::create_group_and_add_auth {
ticker,
perms,
target,
expiry,
},
),
)
}
#[doc = "Utility extrinsic to batch `create_group` and `change_group` for custom groups only."]
#[doc = ""]
#[doc = "# Permissions"]
#[doc = "* Asset"]
#[doc = "* Agent"]
pub fn create_and_change_custom_group(
&self,
ticker: polymesh_primitives::ticker::Ticker,
perms: polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
agent: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::ExternalAgents(
types::pallet_external_agents::Call::create_and_change_custom_group {
ticker,
perms,
agent,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The next per-`Ticker` AG ID in the sequence."]
#[doc = ""]
#[doc = " The full ID is defined as a combination of `Ticker` and a number in this sequence,"]
#[doc = " which starts from 1, rather than 0."]
pub async fn ag_id_sequence(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<polymesh_primitives::agent::AGId> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
217u8, 211u8, 240u8, 107u8, 84u8, 165u8, 3u8, 207u8, 6u8, 208u8, 45u8, 154u8, 84u8,
235u8, 102u8, 212u8, 12u8, 233u8, 200u8, 225u8, 173u8, 92u8, 11u8, 5u8, 96u8, 24u8,
174u8, 23u8, 140u8, 103u8, 130u8, 219u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<polymesh_primitives::agent::AGId>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Maps an agent (`IdentityId`) to all all `Ticker`s they belong to, if any."]
pub async fn agent_of(
&self,
key_0: polymesh_primitives::identity_id::IdentityId,
key_1: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<()> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
217u8, 211u8, 240u8, 107u8, 84u8, 165u8, 3u8, 207u8, 6u8, 208u8, 45u8, 154u8, 84u8,
235u8, 102u8, 212u8, 53u8, 162u8, 207u8, 202u8, 92u8, 195u8, 4u8, 152u8, 44u8, 119u8,
99u8, 8u8, 91u8, 94u8, 104u8, 181u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[];
<()>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " Maps agents (`IdentityId`) for a `Ticker` to what AG they belong to, if any."]
pub async fn group_of_agent(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::identity_id::IdentityId,
) -> ::polymesh_api_client::error::Result<Option<polymesh_primitives::agent::AgentGroup>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
217u8, 211u8, 240u8, 107u8, 84u8, 165u8, 3u8, 207u8, 6u8, 208u8, 45u8, 154u8, 84u8,
235u8, 102u8, 212u8, 242u8, 55u8, 209u8, 95u8, 72u8, 97u8, 175u8, 60u8, 82u8, 212u8,
93u8, 134u8, 226u8, 228u8, 249u8, 241u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Maps a `Ticker` to the number of `Full` agents for it."]
pub async fn num_full_agents(
&self,
key_0: polymesh_primitives::ticker::Ticker,
) -> ::polymesh_api_client::error::Result<u32> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
217u8, 211u8, 240u8, 107u8, 84u8, 165u8, 3u8, 207u8, 6u8, 208u8, 45u8, 154u8, 84u8,
235u8, 102u8, 212u8, 73u8, 199u8, 126u8, 22u8, 129u8, 58u8, 64u8, 117u8, 2u8, 182u8,
198u8, 217u8, 175u8, 14u8, 213u8, 191u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8];
<u32>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " For custom AGs of a `Ticker`, maps to what permissions an agent in that AG would have."]
pub async fn group_permissions(
&self,
key_0: polymesh_primitives::ticker::Ticker,
key_1: polymesh_primitives::agent::AGId,
) -> ::polymesh_api_client::error::Result<
Option<
polymesh_primitives::subset::SubsetRestriction<
polymesh_primitives::secondary_key::PalletPermissions,
>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
217u8, 211u8, 240u8, 107u8, 84u8, 165u8, 3u8, 207u8, 6u8, 208u8, 45u8, 154u8, 84u8,
235u8, 102u8, 212u8, 228u8, 175u8, 240u8, 58u8, 197u8, 94u8, 151u8, 139u8, 185u8, 101u8,
37u8, 225u8, 222u8, 165u8, 102u8, 172u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = key_1.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod relayer {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Creates an authorization to allow `user_key` to accept the caller (`origin == paying_key`) as their subsidiser."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key to subsidise."]
#[doc = "- `polyx_limit` the initial POLYX limit for this subsidy."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
pub fn set_paying_key(
&self,
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
polyx_limit: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::set_paying_key {
user_key,
polyx_limit,
},
))
}
#[doc = "Accepts a `paying_key` authorization."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `auth_id` the authorization id to accept a `paying_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AuthorizationError::Invalid` if `auth_id` does not exist for the given caller."]
#[doc = "- `AuthorizationError::Expired` if `auth_id` the authorization has expired."]
#[doc = "- `AuthorizationError::BadType` if `auth_id` was not a `AddRelayerPayingKey` authorization."]
#[doc = "- `NotAuthorizedForUserKey` if `origin` is not authorized to accept the authorization for the `user_key`."]
#[doc = "- `NotAuthorizedForPayingKey` if the authorization was created an identity different from the `paying_key`'s identity."]
#[doc = "- `UserKeyCddMissing` if the `user_key` is not attached to a CDD'd identity."]
#[doc = "- `PayingKeyCddMissing` if the `paying_key` is not attached to a CDD'd identity."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
pub fn accept_paying_key(
&self,
auth_id: u64,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::accept_paying_key { auth_id },
))
}
#[doc = "Removes the `paying_key` from a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key to remove the subsidy from."]
#[doc = "- `paying_key` the paying key that was subsidising the `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NotAuthorizedForUserKey` if `origin` is not authorized to remove the subsidy for the `user_key`."]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if the `paying_key` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
pub fn remove_paying_key(
&self,
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
paying_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::remove_paying_key {
user_key,
paying_key,
},
))
}
#[doc = "Updates the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `polyx_limit` the amount of POLYX available for subsidising the `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
pub fn update_polyx_limit(
&self,
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
polyx_limit: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::update_polyx_limit {
user_key,
polyx_limit,
},
))
}
#[doc = "Increase the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `amount` the amount of POLYX to add to the subsidy of `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[doc = "- `Overlow` if the subsidy's remaining POLYX would have overflowed `u128::MAX`."]
pub fn increase_polyx_limit(
&self,
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
amount: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::increase_polyx_limit { user_key, amount },
))
}
#[doc = "Decrease the available POLYX for a `user_key`."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `user_key` the user key of the subsidy to update the available POLYX."]
#[doc = "- `amount` the amount of POLYX to remove from the subsidy of `user_key`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `NoPayingKey` if the `user_key` doesn't have a `paying_key`."]
#[doc = "- `NotPayingKey` if `origin` doesn't match the current `paying_key`."]
#[doc = "- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic."]
#[doc = "- `Overlow` if the subsidy has less then `amount` POLYX remaining."]
pub fn decrease_polyx_limit(
&self,
user_key: ::polymesh_api_client::sp_core::crypto::AccountId32,
amount: u128,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Relayer(
types::pallet_relayer::Call::decrease_polyx_limit { user_key, amount },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The subsidy for a `user_key` if they are being subsidised,"]
#[doc = " as a map `user_key` => `Subsidy`."]
#[doc = ""]
#[doc = " A key can only have one subsidy at a time. To change subsidisers"]
#[doc = " a key needs to call `remove_paying_key` to remove the current subsidy,"]
#[doc = " before they can accept a new subsidiser."]
pub async fn subsidies(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<pallet_relayer::Subsidy<::polymesh_api_client::sp_core::crypto::AccountId32>>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
5u8, 71u8, 187u8, 31u8, 121u8, 115u8, 160u8, 127u8, 217u8, 78u8, 1u8, 160u8, 208u8,
220u8, 209u8, 106u8, 75u8, 74u8, 110u8, 95u8, 140u8, 115u8, 246u8, 81u8, 202u8, 177u8,
63u8, 253u8, 143u8, 76u8, 227u8, 53u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod rewards {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Claim an ITN reward."]
#[doc = ""]
#[doc = "## Arguments"]
#[doc = "* `itn_address` specifying the awarded address on ITN."]
#[doc = "* `signature` authenticating the claim to the reward."]
#[doc = " The signature should contain `reward_address` followed by the suffix `\"claim_itn_reward\"`,"]
#[doc = " and must have been signed by `itn_address`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "* `InsufficientBalance` - Itn rewards has insufficient funds to issue the reward."]
#[doc = "* `InvalidSignature` - `signature` had an invalid signer or invalid message."]
#[doc = "* `ItnRewardAlreadyClaimed` - Reward issued to the `itn_address` has already been claimed."]
#[doc = "* `UnknownItnAddress` - `itn_address` is not in the rewards table and has no reward to be claimed."]
pub fn claim_itn_reward(
&self,
reward_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
itn_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
signature: sp_runtime::MultiSignature,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Rewards(
types::pallet_rewards::Call::claim_itn_reward {
reward_address,
itn_address,
signature,
},
))
}
pub fn set_itn_reward_status(
&self,
itn_address: ::polymesh_api_client::sp_core::crypto::AccountId32,
status: pallet_rewards::ItnRewardStatus,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Rewards(
types::pallet_rewards::Call::set_itn_reward_status {
itn_address,
status,
},
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " Map of (Itn Address `AccountId`) -> (Reward `ItnRewardStatus`)."]
pub async fn itn_rewards(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<Option<pallet_rewards::ItnRewardStatus>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
84u8, 10u8, 79u8, 135u8, 84u8, 170u8, 82u8, 152u8, 163u8, 214u8, 233u8, 170u8, 9u8,
233u8, 63u8, 151u8, 55u8, 94u8, 14u8, 120u8, 188u8, 252u8, 178u8, 70u8, 46u8, 13u8,
134u8, 59u8, 85u8, 93u8, 105u8, 211u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::blake2_128(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod contracts {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Makes a call to an account, optionally transferring some balance."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = ""]
#[doc = "* `dest`: Address of the contract to call."]
#[doc = "* `value`: The balance to transfer from the `origin` to `dest`."]
#[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."]
#[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged from the"]
#[doc = " caller to pay for the storage consumed."]
#[doc = "* `data`: The input data to pass to the contract."]
#[doc = ""]
#[doc = "* If the account is a smart-contract account, the associated code will be"]
#[doc = "executed and any value will be transferred."]
#[doc = "* If the account is a regular account, any value will be transferred."]
#[doc = "* If no account exists and the call value is not less than `existential_deposit`,"]
#[doc = "a regular account will be created and any value will be transferred."]
pub fn call(
&self,
dest: ::polymesh_api_client::MultiAddress<
::polymesh_api_client::sp_core::crypto::AccountId32,
u32,
>,
value: u128,
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
data: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Contracts(
types::pallet_contracts::pallet::Call::call {
dest,
value,
gas_limit,
storage_deposit_limit,
data,
},
))
}
#[doc = "Instantiates a new contract from the supplied `code` optionally transferring"]
#[doc = "some balance."]
#[doc = ""]
#[doc = "This dispatchable has the same effect as calling [`Self::upload_code`] +"]
#[doc = "[`Self::instantiate`]. Bundling them together provides efficiency gains. Please"]
#[doc = "also check the documentation of [`Self::upload_code`]."]
#[doc = ""]
#[doc = "# Parameters"]
#[doc = ""]
#[doc = "* `value`: The balance to transfer from the `origin` to the newly created contract."]
#[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."]
#[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "* `code`: The contract code to deploy in raw bytes."]
#[doc = "* `data`: The input data to pass to the contract constructor."]
#[doc = "* `salt`: Used for the address derivation. See [`Pallet::contract_address`]."]
#[doc = ""]
#[doc = "Instantiation is executed as follows:"]
#[doc = ""]
#[doc = "- The supplied `code` is instrumented, deployed, and a `code_hash` is created for that"]
#[doc = " code."]
#[doc = "- If the `code_hash` already exists on the chain the underlying `code` will be shared."]
#[doc = "- The destination address is computed based on the sender, code_hash and the salt."]
#[doc = "- The smart-contract account is created at the computed address."]
#[doc = "- The `value` is transferred to the new account."]
#[doc = "- The `deploy` function is executed in the context of the newly-created account."]
pub fn instantiate_with_code(
&self,
value: u128,
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
code: Vec<u8>,
data: Vec<u8>,
salt: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Contracts(
types::pallet_contracts::pallet::Call::instantiate_with_code {
value,
gas_limit,
storage_deposit_limit,
code,
data,
salt,
},
))
}
#[doc = "Instantiates a contract from a previously deployed wasm binary."]
#[doc = ""]
#[doc = "This function is identical to [`Self::instantiate_with_code`] but without the"]
#[doc = "code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary"]
#[doc = "must be supplied."]
pub fn instantiate(
&self,
value: u128,
gas_limit: u64,
storage_deposit_limit: Option<::codec::Compact<u128>>,
code_hash: primitive_types::H256,
data: Vec<u8>,
salt: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Contracts(
types::pallet_contracts::pallet::Call::instantiate {
value,
gas_limit,
storage_deposit_limit,
code_hash,
data,
salt,
},
))
}
#[doc = "Upload new `code` without instantiating a contract from it."]
#[doc = ""]
#[doc = "If the code does not already exist a deposit is reserved from the caller"]
#[doc = "and unreserved only when [`Self::remove_code`] is called. The size of the reserve"]
#[doc = "depends on the instrumented size of the the supplied `code`."]
#[doc = ""]
#[doc = "If the code already exists in storage it will still return `Ok` and upgrades"]
#[doc = "the in storage version to the current"]
#[doc = "[`InstructionWeights::version`](InstructionWeights)."]
#[doc = ""]
#[doc = "# Note"]
#[doc = ""]
#[doc = "Anyone can instantiate a contract from any uploaded code and thus prevent its removal."]
#[doc = "To avoid this situation a constructor could employ access control so that it can"]
#[doc = "only be instantiated by permissioned entities. The same is true when uploading"]
#[doc = "through [`Self::instantiate_with_code`]."]
pub fn upload_code(
&self,
code: Vec<u8>,
storage_deposit_limit: Option<::codec::Compact<u128>>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Contracts(
types::pallet_contracts::pallet::Call::upload_code {
code,
storage_deposit_limit,
},
))
}
#[doc = "Remove the code stored under `code_hash` and refund the deposit to its owner."]
#[doc = ""]
#[doc = "A code can only be removed by its original uploader (its owner) and only if it is"]
#[doc = "not used by any contract."]
pub fn remove_code(
&self,
code_hash: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Contracts(
types::pallet_contracts::pallet::Call::remove_code { code_hash },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " A mapping from an original code hash to the original code, untouched by instrumentation."]
pub async fn pristine_code(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<Vec<u8>>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 77u8, 108u8, 43u8, 3u8, 185u8, 0u8, 40u8, 243u8, 191u8, 64u8, 126u8,
180u8, 51u8, 233u8, 99u8, 137u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A mapping between an original code hash and instrumented wasm code, ready for execution."]
pub async fn code_storage(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<pallet_contracts::wasm::PrefabWasmModule>>
{
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 34u8, 252u8, 169u8, 6u8, 17u8, 186u8, 139u8, 121u8, 66u8, 248u8,
189u8, 179u8, 185u8, 127u8, 101u8, 128u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " A mapping between an original code hash and its owner information."]
pub async fn owner_info_of(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<pallet_contracts::wasm::OwnerInfo>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 83u8, 241u8, 63u8, 211u8, 25u8, 160u8, 60u8, 33u8, 19u8, 55u8, 199u8,
110u8, 15u8, 231u8, 118u8, 223u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " This is a **monotonic** counter incremented on contract instantiation."]
#[doc = ""]
#[doc = " This is used in order to generate unique trie ids for contracts."]
#[doc = " The trie id of a new contract is calculated from hash(account_id, nonce)."]
#[doc = " The nonce is required because otherwise the following sequence would lead to"]
#[doc = " a possible collision of storage:"]
#[doc = ""]
#[doc = " 1. Create a new contract."]
#[doc = " 2. Terminate the contract."]
#[doc = " 3. Immediately recreate the contract with the same account_id."]
#[doc = ""]
#[doc = " This is bad because the contents of a trie are deleted lazily and there might be"]
#[doc = " storage of the old instantiation still in it when the new contract is created. Please"]
#[doc = " note that we can't replace the counter by the block number because the sequence above"]
#[doc = " can happen in the same block. We also can't keep the account counter in memory only"]
#[doc = " because storage is the only way to communicate across different extrinsics in the"]
#[doc = " same block."]
#[doc = ""]
#[doc = " # Note"]
#[doc = ""]
#[doc = " Do not use it to determine the number of contracts. It won't be decremented if"]
#[doc = " a contract is destroyed."]
pub async fn nonce(&self) -> ::polymesh_api_client::error::Result<u64> {
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 113u8, 131u8, 104u8, 160u8, 172u8, 227u8, 110u8, 43u8, 27u8, 139u8,
109u8, 189u8, 127u8, 128u8, 147u8, 192u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
<u64>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
#[doc = " The code associated with a given account."]
#[doc = ""]
#[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."]
pub async fn contract_info_of(
&self,
key_0: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<
Option<pallet_contracts::storage::RawContractInfo<primitive_types::H256, u128>>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 6u8, 14u8, 153u8, 229u8, 55u8, 142u8, 86u8, 37u8, 55u8, 207u8, 59u8,
201u8, 131u8, 225u8, 123u8, 145u8,
]);
let key = key_0.encode();
buf.extend(::polymesh_api_client::sp_core::hashing::twox_64(&key));
buf.extend(key.into_iter());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " Evicted contracts that await child trie deletion."]
#[doc = ""]
#[doc = " Child trie deletion is a heavy operation depending on the amount of storage items"]
#[doc = " stored in said trie. Therefore this operation is performed lazily in `on_initialize`."]
pub async fn deletion_queue(
&self,
) -> ::polymesh_api_client::error::Result<Vec<pallet_contracts::storage::DeletedContract>>
{
let key = ::polymesh_api_client::sp_core::storage::StorageKey(vec![
67u8, 66u8, 25u8, 62u8, 73u8, 111u8, 171u8, 126u8, 197u8, 157u8, 97u8, 94u8, 208u8,
220u8, 85u8, 48u8, 41u8, 22u8, 33u8, 17u8, 173u8, 25u8, 239u8, 20u8, 81u8, 85u8, 238u8,
85u8, 42u8, 239u8, 45u8, 17u8,
]);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value.unwrap_or_else(|| {
use ::codec::Decode;
const DEFAULT: &'static [u8] = &[0u8];
<Vec<pallet_contracts::storage::DeletedContract>>::decode(&mut &DEFAULT[..]).unwrap()
}))
}
}
}
pub mod polymesh_contracts {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Instantiates a smart contract defining it with the given `code` and `salt`."]
#[doc = ""]
#[doc = "The contract will be attached as a secondary key,"]
#[doc = "with `perms` as its permissions, to `origin`'s identity."]
#[doc = ""]
#[doc = "The contract is transferred `endowment` amount of POLYX."]
#[doc = "This is distinct from the `gas_limit`,"]
#[doc = "which controls how much gas the deployment code may at most consume."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `endowment` amount of POLYX to transfer to the contract."]
#[doc = "- `gas_limit` for how much gas the `deploy` code in the contract may at most consume."]
#[doc = "- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "- `code` with the WASM binary defining the smart contract."]
#[doc = "- `data` The input data to pass to the contract constructor."]
#[doc = "- `salt` used for contract address derivation."]
#[doc = " By varying this, the same `code` can be used under the same identity."]
#[doc = "- `perms` that the new secondary key will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- All the errors in `pallet_contracts::Call::instantiate_with_code` can also happen here."]
#[doc = "- CDD/Permissions are checked, unlike in `pallet_contracts`."]
#[doc = "- Errors that arise when adding a new secondary key can also occur here."]
pub fn instantiate_with_code_perms(
&self,
endowment: u128,
gas_limit: u64,
storage_deposit_limit: Option<u128>,
code: Vec<u8>,
data: Vec<u8>,
salt: Vec<u8>,
perms: polymesh_primitives::secondary_key::Permissions,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshContracts(
types::polymesh_contracts::Call::instantiate_with_code_perms {
endowment,
gas_limit,
storage_deposit_limit,
code,
data,
salt,
perms,
},
),
)
}
#[doc = "Instantiates a smart contract defining using the given `code_hash` and `salt`."]
#[doc = ""]
#[doc = "Unlike `instantiate_with_code`,"]
#[doc = "this assumes that at least one contract with the same WASM code has already been uploaded."]
#[doc = ""]
#[doc = "The contract will be attached as a secondary key,"]
#[doc = "with `perms` as its permissions, to `origin`'s identity."]
#[doc = ""]
#[doc = "The contract is transferred `endowment` amount of POLYX."]
#[doc = "This is distinct from the `gas_limit`,"]
#[doc = "which controls how much gas the deployment code may at most consume."]
#[doc = ""]
#[doc = "# Arguments"]
#[doc = "- `endowment` amount of POLYX to transfer to the contract."]
#[doc = "- `gas_limit` for how much gas the `deploy` code in the contract may at most consume."]
#[doc = "- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved"]
#[doc = " from the caller to pay for the storage consumed."]
#[doc = "- `code_hash` of an already uploaded WASM binary."]
#[doc = "- `data` The input data to pass to the contract constructor."]
#[doc = "- `salt` used for contract address derivation."]
#[doc = " By varying this, the same `code` can be used under the same identity."]
#[doc = "- `perms` that the new secondary key will have."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- All the errors in `pallet_contracts::Call::instantiate` can also happen here."]
#[doc = "- CDD/Permissions are checked, unlike in `pallet_contracts`."]
#[doc = "- Errors that arise when adding a new secondary key can also occur here."]
pub fn instantiate_with_hash_perms(
&self,
endowment: u128,
gas_limit: u64,
storage_deposit_limit: Option<u128>,
code_hash: primitive_types::H256,
data: Vec<u8>,
salt: Vec<u8>,
perms: polymesh_primitives::secondary_key::Permissions,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self.api.wrap_call(
types::polymesh_runtime_develop::runtime::Call::PolymeshContracts(
types::polymesh_contracts::Call::instantiate_with_hash_perms {
endowment,
gas_limit,
storage_deposit_limit,
code_hash,
data,
salt,
perms,
},
),
)
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
pub mod preimage {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Register a preimage on-chain."]
#[doc = ""]
#[doc = "If the preimage was previously requested, no fees or deposits are taken for providing"]
#[doc = "the preimage. Otherwise, a deposit is taken proportional to the size of the preimage."]
pub fn note_preimage(
&self,
bytes: Vec<u8>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Preimage(
types::pallet_preimage::pallet::Call::note_preimage { bytes },
))
}
#[doc = "Clear an unrequested preimage from the runtime storage."]
pub fn unnote_preimage(
&self,
hash: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Preimage(
types::pallet_preimage::pallet::Call::unnote_preimage { hash },
))
}
#[doc = "Request a preimage be uploaded to the chain without paying any fees or deposits."]
#[doc = ""]
#[doc = "If the preimage requests has already been provided on-chain, we unreserve any deposit"]
#[doc = "a user may have paid, and take the control of the preimage out of their hands."]
pub fn request_preimage(
&self,
hash: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Preimage(
types::pallet_preimage::pallet::Call::request_preimage { hash },
))
}
#[doc = "Clear a previously made request for a preimage."]
#[doc = ""]
#[doc = "NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`."]
pub fn unrequest_preimage(
&self,
hash: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::Preimage(
types::pallet_preimage::pallet::Call::unrequest_preimage { hash },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
#[doc = " The request status of a given hash."]
pub async fn status_for(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<
Option<
pallet_preimage::RequestStatus<::polymesh_api_client::sp_core::crypto::AccountId32, u128>,
>,
> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
216u8, 243u8, 20u8, 183u8, 244u8, 230u8, 176u8, 149u8, 240u8, 248u8, 238u8, 70u8, 86u8,
164u8, 72u8, 37u8, 85u8, 177u8, 174u8, 142u8, 206u8, 213u8, 82u8, 47u8, 60u8, 64u8, 73u8,
188u8, 132u8, 237u8, 164u8, 168u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
#[doc = " The preimages stored by this pallet."]
pub async fn preimage_for(
&self,
key_0: primitive_types::H256,
) -> ::polymesh_api_client::error::Result<Option<Vec<u8>>> {
use ::codec::Encode;
let mut buf = Vec::with_capacity(512);
buf.extend([
216u8, 243u8, 20u8, 183u8, 244u8, 230u8, 176u8, 149u8, 240u8, 248u8, 238u8, 70u8, 86u8,
164u8, 72u8, 37u8, 124u8, 125u8, 218u8, 133u8, 201u8, 194u8, 151u8, 153u8, 159u8, 208u8,
34u8, 21u8, 232u8, 200u8, 249u8, 222u8,
]);
buf.extend(key_0.encode());
let key = ::polymesh_api_client::sp_core::storage::StorageKey(buf);
let value = self.api.client.get_storage_by_key(key, self.at).await?;
Ok(value)
}
}
}
pub mod test_utils {
use super::*;
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api super::super::Api,
}
impl<'api> CallApi<'api> {
#[doc = "Generates a new `IdentityID` for the caller, and issues a self-generated CDD claim."]
#[doc = ""]
#[doc = "The caller account will be the primary key of that identity."]
#[doc = "For each account of `secondary_keys`, a new `JoinIdentity` authorization is created, so"]
#[doc = "each of them will need to accept it before become part of this new `IdentityID`."]
#[doc = ""]
#[doc = "# Errors"]
#[doc = "- `AlreadyLinked` if the caller account or if any of the given `secondary_keys` has already linked to an `IdentityID`"]
#[doc = "- `SecondaryKeysContainPrimaryKey` if `secondary_keys` contains the caller account."]
#[doc = "- `DidAlreadyExists` if auto-generated DID already exists."]
pub fn register_did(
&self,
uid: polymesh_primitives::cdd_id::InvestorUid,
secondary_keys: Vec<
polymesh_primitives::secondary_key::SecondaryKey<
::polymesh_api_client::sp_core::crypto::AccountId32,
>,
>,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::TestUtils(
types::pallet_test_utils::Call::register_did {
uid,
secondary_keys,
},
))
}
#[doc = "Registers a new Identity for the `target_account` and issues a CDD claim to it."]
#[doc = "The Investor UID is generated deterministically by the hash of the generated DID and"]
#[doc = "then we fix it to be compliant with UUID v4."]
#[doc = ""]
#[doc = "# See"]
#[doc = "- [RFC 4122: UUID](https://tools.ietf.org/html/rfc4122)"]
#[doc = ""]
#[doc = "# Failure"]
#[doc = "- `origin` has to be an active CDD provider. Inactive CDD providers cannot add new"]
#[doc = "claims."]
#[doc = "- `target_account` (primary key of the new Identity) can be linked to just one and only"]
#[doc = "one identity."]
pub fn mock_cdd_register_did(
&self,
target_account: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::TestUtils(
types::pallet_test_utils::Call::mock_cdd_register_did { target_account },
))
}
#[doc = "Emits an event with caller's identity."]
pub fn get_my_did(
&self,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::TestUtils(
types::pallet_test_utils::Call::get_my_did,
))
}
#[doc = "Emits an event with caller's identity and CDD status."]
pub fn get_cdd_of(
&self,
of: ::polymesh_api_client::sp_core::crypto::AccountId32,
) -> ::polymesh_api_client::error::Result<super::super::WrappedCall<'api>> {
self
.api
.wrap_call(types::polymesh_runtime_develop::runtime::Call::TestUtils(
types::pallet_test_utils::Call::get_cdd_of { of },
))
}
}
impl<'api> From<&'api super::super::Api> for CallApi<'api> {
fn from(api: &'api super::super::Api) -> Self {
Self { api }
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
pub(crate) api: &'api super::super::Api,
pub(crate) at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {}
}
}
#[derive(Debug)]
pub struct Api {
client: ::polymesh_api_client::Client,
}
impl Api {
pub async fn new(url: &str) -> ::polymesh_api_client::error::Result<Self> {
Ok(Self {
client: ::polymesh_api_client::Client::new(url).await?,
})
}
pub fn call(&self) -> CallApi {
CallApi { api: self }
}
pub fn query(&self) -> QueryApi {
QueryApi {
api: self,
at: None,
}
}
pub fn query_at(&self, block: ::polymesh_api_client::BlockHash) -> QueryApi {
QueryApi {
api: self,
at: Some(block),
}
}
pub fn wrap_call(
&self,
call: types::polymesh_runtime_develop::runtime::Call,
) -> ::polymesh_api_client::Result<WrappedCall> {
Ok(WrappedCall::new(self, call))
}
}
#[async_trait::async_trait]
impl ::polymesh_api_client::ChainApi for Api {
type RuntimeCall = types::polymesh_runtime_develop::runtime::Call;
type RuntimeEvent = types::polymesh_runtime_develop::runtime::Event;
async fn get_nonce(
&self,
account: ::polymesh_api_client::AccountId,
) -> ::polymesh_api_client::Result<u32> {
let info = self.query().system().account(account).await?;
Ok(info.nonce)
}
async fn block_events(
&self,
block: Option<::polymesh_api_client::BlockHash>,
) -> ::polymesh_api_client::Result<Vec<::polymesh_api_client::EventRecord<Self::RuntimeEvent>>>
{
let system = match block {
Some(block) => self.query_at(block).system(),
None => self.query().system(),
};
Ok(system.events().await?)
}
fn client(&self) -> &::polymesh_api_client::Client {
&self.client
}
}
#[derive(Clone, Debug)]
pub struct CallApi<'api> {
api: &'api Api,
}
impl<'api> CallApi<'api> {
pub fn system(&self) -> api::system::CallApi<'api> {
api::system::CallApi::from(self.api)
}
pub fn babe(&self) -> api::babe::CallApi<'api> {
api::babe::CallApi::from(self.api)
}
pub fn timestamp(&self) -> api::timestamp::CallApi<'api> {
api::timestamp::CallApi::from(self.api)
}
pub fn indices(&self) -> api::indices::CallApi<'api> {
api::indices::CallApi::from(self.api)
}
pub fn authorship(&self) -> api::authorship::CallApi<'api> {
api::authorship::CallApi::from(self.api)
}
pub fn balances(&self) -> api::balances::CallApi<'api> {
api::balances::CallApi::from(self.api)
}
pub fn transaction_payment(&self) -> api::transaction_payment::CallApi<'api> {
api::transaction_payment::CallApi::from(self.api)
}
pub fn identity(&self) -> api::identity::CallApi<'api> {
api::identity::CallApi::from(self.api)
}
pub fn cdd_service_providers(&self) -> api::cdd_service_providers::CallApi<'api> {
api::cdd_service_providers::CallApi::from(self.api)
}
pub fn polymesh_committee(&self) -> api::polymesh_committee::CallApi<'api> {
api::polymesh_committee::CallApi::from(self.api)
}
pub fn committee_membership(&self) -> api::committee_membership::CallApi<'api> {
api::committee_membership::CallApi::from(self.api)
}
pub fn technical_committee(&self) -> api::technical_committee::CallApi<'api> {
api::technical_committee::CallApi::from(self.api)
}
pub fn technical_committee_membership(
&self,
) -> api::technical_committee_membership::CallApi<'api> {
api::technical_committee_membership::CallApi::from(self.api)
}
pub fn upgrade_committee(&self) -> api::upgrade_committee::CallApi<'api> {
api::upgrade_committee::CallApi::from(self.api)
}
pub fn upgrade_committee_membership(&self) -> api::upgrade_committee_membership::CallApi<'api> {
api::upgrade_committee_membership::CallApi::from(self.api)
}
pub fn multi_sig(&self) -> api::multi_sig::CallApi<'api> {
api::multi_sig::CallApi::from(self.api)
}
pub fn bridge(&self) -> api::bridge::CallApi<'api> {
api::bridge::CallApi::from(self.api)
}
pub fn staking(&self) -> api::staking::CallApi<'api> {
api::staking::CallApi::from(self.api)
}
pub fn offences(&self) -> api::offences::CallApi<'api> {
api::offences::CallApi::from(self.api)
}
pub fn session(&self) -> api::session::CallApi<'api> {
api::session::CallApi::from(self.api)
}
pub fn authority_discovery(&self) -> api::authority_discovery::CallApi<'api> {
api::authority_discovery::CallApi::from(self.api)
}
pub fn grandpa(&self) -> api::grandpa::CallApi<'api> {
api::grandpa::CallApi::from(self.api)
}
pub fn historical(&self) -> api::historical::CallApi<'api> {
api::historical::CallApi::from(self.api)
}
pub fn im_online(&self) -> api::im_online::CallApi<'api> {
api::im_online::CallApi::from(self.api)
}
pub fn randomness_collective_flip(&self) -> api::randomness_collective_flip::CallApi<'api> {
api::randomness_collective_flip::CallApi::from(self.api)
}
pub fn sudo(&self) -> api::sudo::CallApi<'api> {
api::sudo::CallApi::from(self.api)
}
pub fn asset(&self) -> api::asset::CallApi<'api> {
api::asset::CallApi::from(self.api)
}
pub fn capital_distribution(&self) -> api::capital_distribution::CallApi<'api> {
api::capital_distribution::CallApi::from(self.api)
}
pub fn checkpoint(&self) -> api::checkpoint::CallApi<'api> {
api::checkpoint::CallApi::from(self.api)
}
pub fn compliance_manager(&self) -> api::compliance_manager::CallApi<'api> {
api::compliance_manager::CallApi::from(self.api)
}
pub fn corporate_action(&self) -> api::corporate_action::CallApi<'api> {
api::corporate_action::CallApi::from(self.api)
}
pub fn corporate_ballot(&self) -> api::corporate_ballot::CallApi<'api> {
api::corporate_ballot::CallApi::from(self.api)
}
pub fn permissions(&self) -> api::permissions::CallApi<'api> {
api::permissions::CallApi::from(self.api)
}
pub fn pips(&self) -> api::pips::CallApi<'api> {
api::pips::CallApi::from(self.api)
}
pub fn portfolio(&self) -> api::portfolio::CallApi<'api> {
api::portfolio::CallApi::from(self.api)
}
pub fn protocol_fee(&self) -> api::protocol_fee::CallApi<'api> {
api::protocol_fee::CallApi::from(self.api)
}
pub fn scheduler(&self) -> api::scheduler::CallApi<'api> {
api::scheduler::CallApi::from(self.api)
}
pub fn settlement(&self) -> api::settlement::CallApi<'api> {
api::settlement::CallApi::from(self.api)
}
pub fn statistics(&self) -> api::statistics::CallApi<'api> {
api::statistics::CallApi::from(self.api)
}
pub fn sto(&self) -> api::sto::CallApi<'api> {
api::sto::CallApi::from(self.api)
}
pub fn treasury(&self) -> api::treasury::CallApi<'api> {
api::treasury::CallApi::from(self.api)
}
pub fn utility(&self) -> api::utility::CallApi<'api> {
api::utility::CallApi::from(self.api)
}
pub fn base(&self) -> api::base::CallApi<'api> {
api::base::CallApi::from(self.api)
}
pub fn external_agents(&self) -> api::external_agents::CallApi<'api> {
api::external_agents::CallApi::from(self.api)
}
pub fn relayer(&self) -> api::relayer::CallApi<'api> {
api::relayer::CallApi::from(self.api)
}
pub fn rewards(&self) -> api::rewards::CallApi<'api> {
api::rewards::CallApi::from(self.api)
}
pub fn contracts(&self) -> api::contracts::CallApi<'api> {
api::contracts::CallApi::from(self.api)
}
pub fn polymesh_contracts(&self) -> api::polymesh_contracts::CallApi<'api> {
api::polymesh_contracts::CallApi::from(self.api)
}
pub fn preimage(&self) -> api::preimage::CallApi<'api> {
api::preimage::CallApi::from(self.api)
}
pub fn test_utils(&self) -> api::test_utils::CallApi<'api> {
api::test_utils::CallApi::from(self.api)
}
}
pub type WrappedCall<'api> = ::polymesh_api_client::Call<'api, Api>;
impl<'api> From<WrappedCall<'api>> for types::polymesh_runtime_develop::runtime::Call {
fn from(wrapped: WrappedCall<'api>) -> Self {
wrapped.into_runtime_call()
}
}
impl<'api> From<&WrappedCall<'api>> for types::polymesh_runtime_develop::runtime::Call {
fn from(wrapped: &WrappedCall<'api>) -> Self {
wrapped.runtime_call().clone()
}
}
#[derive(Clone, Debug)]
pub struct QueryApi<'api> {
api: &'api Api,
at: Option<::polymesh_api_client::BlockHash>,
}
impl<'api> QueryApi<'api> {
pub fn system(&self) -> api::system::QueryApi<'api> {
api::system::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn babe(&self) -> api::babe::QueryApi<'api> {
api::babe::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn timestamp(&self) -> api::timestamp::QueryApi<'api> {
api::timestamp::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn indices(&self) -> api::indices::QueryApi<'api> {
api::indices::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn authorship(&self) -> api::authorship::QueryApi<'api> {
api::authorship::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn balances(&self) -> api::balances::QueryApi<'api> {
api::balances::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn transaction_payment(&self) -> api::transaction_payment::QueryApi<'api> {
api::transaction_payment::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn identity(&self) -> api::identity::QueryApi<'api> {
api::identity::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn cdd_service_providers(&self) -> api::cdd_service_providers::QueryApi<'api> {
api::cdd_service_providers::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn polymesh_committee(&self) -> api::polymesh_committee::QueryApi<'api> {
api::polymesh_committee::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn committee_membership(&self) -> api::committee_membership::QueryApi<'api> {
api::committee_membership::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn technical_committee(&self) -> api::technical_committee::QueryApi<'api> {
api::technical_committee::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn technical_committee_membership(
&self,
) -> api::technical_committee_membership::QueryApi<'api> {
api::technical_committee_membership::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn upgrade_committee(&self) -> api::upgrade_committee::QueryApi<'api> {
api::upgrade_committee::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn upgrade_committee_membership(&self) -> api::upgrade_committee_membership::QueryApi<'api> {
api::upgrade_committee_membership::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn multi_sig(&self) -> api::multi_sig::QueryApi<'api> {
api::multi_sig::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn bridge(&self) -> api::bridge::QueryApi<'api> {
api::bridge::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn staking(&self) -> api::staking::QueryApi<'api> {
api::staking::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn offences(&self) -> api::offences::QueryApi<'api> {
api::offences::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn session(&self) -> api::session::QueryApi<'api> {
api::session::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn authority_discovery(&self) -> api::authority_discovery::QueryApi<'api> {
api::authority_discovery::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn grandpa(&self) -> api::grandpa::QueryApi<'api> {
api::grandpa::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn historical(&self) -> api::historical::QueryApi<'api> {
api::historical::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn im_online(&self) -> api::im_online::QueryApi<'api> {
api::im_online::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn randomness_collective_flip(&self) -> api::randomness_collective_flip::QueryApi<'api> {
api::randomness_collective_flip::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn sudo(&self) -> api::sudo::QueryApi<'api> {
api::sudo::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn asset(&self) -> api::asset::QueryApi<'api> {
api::asset::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn capital_distribution(&self) -> api::capital_distribution::QueryApi<'api> {
api::capital_distribution::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn checkpoint(&self) -> api::checkpoint::QueryApi<'api> {
api::checkpoint::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn compliance_manager(&self) -> api::compliance_manager::QueryApi<'api> {
api::compliance_manager::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn corporate_action(&self) -> api::corporate_action::QueryApi<'api> {
api::corporate_action::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn corporate_ballot(&self) -> api::corporate_ballot::QueryApi<'api> {
api::corporate_ballot::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn permissions(&self) -> api::permissions::QueryApi<'api> {
api::permissions::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn pips(&self) -> api::pips::QueryApi<'api> {
api::pips::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn portfolio(&self) -> api::portfolio::QueryApi<'api> {
api::portfolio::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn protocol_fee(&self) -> api::protocol_fee::QueryApi<'api> {
api::protocol_fee::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn scheduler(&self) -> api::scheduler::QueryApi<'api> {
api::scheduler::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn settlement(&self) -> api::settlement::QueryApi<'api> {
api::settlement::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn statistics(&self) -> api::statistics::QueryApi<'api> {
api::statistics::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn sto(&self) -> api::sto::QueryApi<'api> {
api::sto::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn treasury(&self) -> api::treasury::QueryApi<'api> {
api::treasury::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn utility(&self) -> api::utility::QueryApi<'api> {
api::utility::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn base(&self) -> api::base::QueryApi<'api> {
api::base::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn external_agents(&self) -> api::external_agents::QueryApi<'api> {
api::external_agents::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn relayer(&self) -> api::relayer::QueryApi<'api> {
api::relayer::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn rewards(&self) -> api::rewards::QueryApi<'api> {
api::rewards::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn contracts(&self) -> api::contracts::QueryApi<'api> {
api::contracts::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn polymesh_contracts(&self) -> api::polymesh_contracts::QueryApi<'api> {
api::polymesh_contracts::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn preimage(&self) -> api::preimage::QueryApi<'api> {
api::preimage::QueryApi {
api: self.api,
at: self.at,
}
}
pub fn test_utils(&self) -> api::test_utils::QueryApi<'api> {
api::test_utils::QueryApi {
api: self.api,
at: self.at,
}
}
}