Closed
Description
The fuzz-testing workflow has detected a bug.
Auto-Minimized Fuzzing Input That Triggers the Bug: Click this line.
Note: If the input is multi-line then the end-of-line characters '\n' (0x0A) and '\r' (0x0D) may affect the reproducibility of the bug. If you fail to repro the bug with the input shown below then you may want to go to the workflow that reported this GitHub bug, download the artifact, and extract the file with the exact minimized input.operation e(oracle:(w=>)){oracle=i(_)
Fuzzing stderr
Log (last 62kB), includes the stack trace: Click.
The fragment of interest starts with "panicked at".
_unwind
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/panicking.rs:697:5
1: core::panicking::panic_fmt
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/panicking.rs:75:14
2: qsc_hir::ty::FunctorSet::expect_value
at ./compiler/qsc_hir/src/ty.rs:545:51
3: qsc_frontend::closure::partial_app_block
at ./compiler/qsc_frontend/src/closure.rs:176:19
4: qsc_frontend::lower::With::lower_partial_app
at ./compiler/qsc_frontend/src/lower.rs:895:25
5: qsc_frontend::lower::With::lower_expr
at ./compiler/qsc_frontend/src/lower.rs:742:21
6: qsc_frontend::lower::With::lower_expr
at ./compiler/qsc_frontend/src/lower.rs:713:26
7: qsc_frontend::lower::With::lower_stmt
at ./compiler/qsc_frontend/src/lower.rs:684:62
8: qsc_frontend::lower::With::lower_block::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:659:33
9: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/ops/function.rs:294:13
10: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/slice/iter/macros.rs:342:38
11: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/adapters/filter_map.rs:64:9
12: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter_nested.rs:25:32
13: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter.rs:34:9
14: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3438:9
15: core::iter::traits::iterator::Iterator::collect
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/traits/iterator.rs:2003:9
16: qsc_frontend::lower::With::lower_block
at ./compiler/qsc_frontend/src/lower.rs:656:20
17: qsc_frontend::lower::With::lower_callable_decl
at ./compiler/qsc_frontend/src/lower.rs:524:53
18: qsc_frontend::lower::With::lower_item
at ./compiler/qsc_frontend/src/lower.rs:304:44
19: qsc_frontend::lower::With::lower_stmt
at ./compiler/qsc_frontend/src/lower.rs:669:62
20: qsc_frontend::lower::With::lower_block::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:659:33
21: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/ops/function.rs:294:13
22: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/slice/iter/macros.rs:342:38
23: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/adapters/filter_map.rs:64:9
24: alloc::vec::Vec<T,A>::extend_desugared
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3546:35
25: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_extend.rs:19:9
26: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter_nested.rs:42:9
27: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter.rs:34:9
28: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3438:9
29: core::iter::traits::iterator::Iterator::collect
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/traits/iterator.rs:2003:9
30: qsc_frontend::lower::With::lower_block
at ./compiler/qsc_frontend/src/lower.rs:656:20
31: qsc_frontend::lower::With::lower_callable_decl
at ./compiler/qsc_frontend/src/lower.rs:524:53
32: qsc_frontend::lower::With::lower_item
at ./compiler/qsc_frontend/src/lower.rs:304:44
33: qsc_frontend::lower::With::lower_stmt
at ./compiler/qsc_frontend/src/lower.rs:669:62
34: qsc_frontend::lower::With::lower_block::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:659:33
35: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/ops/function.rs:294:13
36: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/slice/iter/macros.rs:342:38
37: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/adapters/filter_map.rs:64:9
38: alloc::vec::Vec<T,A>::extend_desugared
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3546:35
39: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_extend.rs:19:9
40: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter_nested.rs:42:9
41: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter.rs:34:9
42: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3438:9
43: core::iter::traits::iterator::Iterator::collect
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/traits/iterator.rs:2003:9
44: qsc_frontend::lower::With::lower_block
at ./compiler/qsc_frontend/src/lower.rs:656:20
45: qsc_frontend::lower::With::lower_expr
at ./compiler/qsc_frontend/src/lower.rs:770:48
46: qsc_frontend::lower::With::lower_expr::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:772:52
47: core::option::Option<T>::map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/option.rs:1144:29
48: qsc_frontend::lower::With::lower_expr
at ./compiler/qsc_frontend/src/lower.rs:772:35
49: qsc_frontend::lower::With::lower_stmt
at ./compiler/qsc_frontend/src/lower.rs:668:62
50: qsc_frontend::lower::With::lower_block::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:659:33
51: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/ops/function.rs:294:13
52: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/slice/iter/macros.rs:342:38
53: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/adapters/filter_map.rs:64:9
54: alloc::vec::Vec<T,A>::extend_desugared
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3546:35
55: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_extend.rs:19:9
56: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter_nested.rs:42:9
57: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter.rs:34:9
58: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3438:9
59: core::iter::traits::iterator::Iterator::collect
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/traits/iterator.rs:2003:9
60: qsc_frontend::lower::With::lower_block
at ./compiler/qsc_frontend/src/lower.rs:656:20
61: qsc_frontend::lower::With::lower_callable_decl
at ./compiler/qsc_frontend/src/lower.rs:524:53
62: qsc_frontend::lower::With::lower_item
at ./compiler/qsc_frontend/src/lower.rs:304:44
63: qsc_frontend::lower::With::lower_namespace::{{closure}}
at ./compiler/qsc_frontend/src/lower.rs:225:29
64: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/ops/function.rs:294:13
65: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/slice/iter/macros.rs:342:38
66: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/adapters/filter_map.rs:64:9
67: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter_nested.rs:25:32
68: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/spec_from_iter.rs:34:9
69: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/alloc/src/vec/mod.rs:3438:9
70: core::iter::traits::iterator::Iterator::collect
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/core/src/iter/traits/iterator.rs:2003:9
71: qsc_frontend::lower::With::lower_namespace
at ./compiler/qsc_frontend/src/lower.rs:222:21
72: qsc_frontend::lower::With::lower_package
at ./compiler/qsc_frontend/src/lower.rs:171:60
73: qsc_frontend::compile::compile_ast
at ./compiler/qsc_frontend/src/compile.rs:408:19
74: qsc_frontend::compile::compile
at ./compiler/qsc_frontend/src/compile.rs:367:5
75: qsc::compile::compile
at ./compiler/qsc/src/compile.rs:82:16
76: qsharp::compile::{{closure}}
at ./fuzz/fuzz_targets/qsharp.rs:23:29
77: std::thread::local::LocalKey<T>::try_with
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/thread/local.rs:315:12
78: std::thread::local::LocalKey<T>::with
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/thread/local.rs:279:15
79: qsharp::compile
at ./fuzz/fuzz_targets/qsharp.rs:22:9
80: rust_fuzzer_test_input
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/src/lib.rs:224:17
81: libfuzzer_sys::test_input_wrap::{{closure}}
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/src/lib.rs:61:9
82: std::panicking::try::do_call
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/panicking.rs:589:40
83: std::panicking::try
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/panicking.rs:552:19
84: std::panic::catch_unwind
at /rustc/13e87909494f2f31bce51bc106e2b629420d1235/library/std/src/panic.rs:359:14
85: LLVMFuzzerTestOneInput
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/src/lib.rs:59:22
86: _ZN6fuzzer6Fuzzer15ExecuteCallbackEPKhm
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerLoop.cpp:612:15
87: _ZN6fuzzer6Fuzzer6RunOneEPKhmbPNS_9InputInfoEbPb
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerLoop.cpp:514:22
88: _ZN6fuzzer6Fuzzer16MutateAndTestOneEv
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerLoop.cpp:758:25
89: _ZN6fuzzer6Fuzzer4LoopERSt6vectorINS_9SizedFileESaIS2_EE
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerLoop.cpp:903:21
90: _ZN6fuzzer12FuzzerDriverEPiPPPcPFiPKhmE
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerDriver.cpp:912:10
91: main
at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libfuzzer-sys-0.4.7/libfuzzer/FuzzerMain.cpp:20:30
92: <unknown>
93: __libc_start_main
94: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
==4947== ERROR: libFuzzer: deadly signal
NOTE: libFuzzer has rudimentary signal handlers.
Combine libFuzzer with AddressSanitizer or similar for better crash reports.
SUMMARY: libFuzzer: deadly signal
MS: 2 CMP-CrossOver- DE: "\001\000\000\000\000\000\000\000"-; base unit: fcfc2ed5038cd8a46a3caf4c42db1f3f8eb53d88
artifact_prefix='/home/runner/work/qsharp/qsharp/fuzz/artifacts/qsharp/'; Test unit written to /home/runner/work/qsharp/qsharp/fuzz/artifacts/qsharp/crash-fc34245dd0fcb868d327fcebe2886932983e9a54
────────────────────────────────────────────────────────────────────────────────
Failing input:
fuzz/artifacts/qsharp/crash-fc34245dd0fcb868d327fcebe2886932983e9a54
Output of `std::fmt::Debug`:
[47, 47, 32, 67, 111, 112, 121, 114, 105, 103, 104, 116, 32, 40, 99, 41, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 32, 67, 111, 114, 112, 111, 114, 97, 116, 105, 111, 110, 46, 10, 47, 47, 32, 76, 105, 99, 101, 110, 115, 101, 100, 32, 117, 110, 100, 101, 114, 32, 116, 104, 101, 32, 77, 73, 84, 32, 76, 105, 99, 101, 110, 115, 101, 46, 10, 10, 110, 97, 109, 101, 115, 112, 97, 99, 101, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 67, 104, 101, 109, 105, 115, 116, 114, 121, 46, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 32, 123, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 80, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 65, 114, 105, 116, 104, 109, 101, 116, 105, 99, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 73, 110, 116, 114, 105, 110, 115, 105, 99, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 67, 97, 110, 111, 110, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 67, 111, 110, 118, 101, 114, 116, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 65, 114, 114, 97, 121, 115, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 77, 97, 116, 104, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 83, 105, 109, 117, 108, 97, 116, 105, 111, 110, 59, 10, 10, 32, 32, 32, 32, 47, 47, 110, 101, 119, 116, 121, 112, 101, 32, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 73, 110, 112, 117, 116, 83, 116, 97, 116, 101, 32, 61, 32, 40, 40, 68, 111, 117, 98, 108, 101, 44, 32, 68, 111, 117, 98, 108, 101, 41, 44, 32, 73, 110, 116, 91, 93, 41, 59, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 80, 114, 101, 112, 97, 114, 101, 84, 114, 105, 97, 108, 83, 116, 97, 116, 101, 32, 40, 115, 116, 97, 116, 101, 68, 97, 116, 97, 32, 58, 32, 40, 73, 110, 116, 44, 32, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 73, 110, 112, 117, 116, 83, 116, 97, 116, 101, 91, 93, 41, 44, 32, 113, 117, 98, 105, 116, 115, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 32, 58, 32, 85, 110, 105, 116, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 40, 115, 116, 97, 116, 101, 84, 121, 112, 101, 44, 32, 116, 101, 114, 109, 115, 41, 32, 61, 32, 115, 116, 97, 116, 101, 68, 97, 116, 97, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 83, 116, 97, 116, 101, 32, 116, 121, 112, 101, 32, 105, 110, 100, 101, 120, 105, 110, 103, 32, 102, 114, 111, 109, 32, 70, 101, 114, 109, 105, 111, 110, 72, 97, 109, 105, 108, 116, 111, 110, 105, 97, 110, 83, 116, 97, 116, 101, 80, 114, 101, 112, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 112, 117, 98, 108, 105, 99, 32, 101, 110, 117, 109, 32, 83, 116, 97, 116, 101, 84, 121, 112, 101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 32, 32, 32, 68, 101, 102, 97, 117, 108, 116, 32, 61, 32, 48, 44, 32, 83, 105, 110, 103, 108, 101, 95, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 32, 61, 32, 49, 44, 32, 83, 112, 97, 114, 115, 101, 95, 77, 117, 108, 116, 105, 95, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 32, 61, 32, 50, 44, 32, 85, 110, 105, 116, 97, 114, 121, 95, 67, 111, 117, 112, 108, 101, 100, 95, 67, 108, 117, 115, 116, 101, 114, 32, 61, 32, 51, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 105, 102, 32, 115, 116, 97, 116, 101, 84, 121, 112, 101, 32, 61, 61, 32, 50, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 105, 102, 32, 73, 115, 69, 109, 112, 116, 121, 40, 116, 101, 114, 109, 115, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 68, 111, 32, 110, 111, 116, 104, 105, 110, 103, 44, 32, 97, 115, 32, 116, 104, 101, 114, 101, 32, 97, 114, 101, 32, 110, 111, 32, 116, 101, 114, 109, 115, 32, 116, 111, 32, 112, 114, 101, 112, 97, 114, 101, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 32, 101, 108, 105, 102, 32, 76, 101, 110, 103, 116, 104, 40, 116, 101, 114, 109, 115, 41, 32, 61, 61, 32, 49, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 40, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 44, 32, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 41, 32, 61, 32, 116, 101, 114, 109, 115, 91, 48, 93, 33, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 80, 114, 101, 112, 97, 114, 101, 83, 105, 110, 103, 108, 101, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 83, 105, 110, 103, 108, 101, 83, 105, 116, 101, 79, 99, 99, 117, 112, 97, 116, 105, 111, 110, 40, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 44, 32, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 32, 101, 108, 115, 101, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 80, 114, 101, 112, 97, 114, 101, 83, 112, 97, 114, 115, 101, 77, 117, 108, 116, 105, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 40, 78, 111, 79, 112, 44, 32, 116, 101, 114, 109, 115, 44, 32, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 32, 101, 108, 105, 102, 32, 115, 116, 97, 116, 101, 84, 121, 112, 101, 32, 61, 61, 32, 51, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 110, 84, 101, 114, 109, 115, 32, 61, 32, 76, 101, 110, 103, 116, 104, 40, 116, 101, 114, 109, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 116, 114, 111, 116, 116, 101, 114, 83, 116, 101, 112, 83, 105, 122, 101, 32, 61, 32, 49, 46, 48, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 84, 104, 101, 32, 108, 97, 115, 116, 32, 116, 101, 114, 109, 32, 105, 115, 32, 116, 104, 101, 32, 114, 101, 102, 101, 114, 101, 110, 99, 101, 32, 115, 116, 97, 116, 101, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 114, 101, 102, 101, 114, 101, 110, 99, 101, 83, 116, 97, 116, 101, 32, 61, 32, 80, 114, 101, 112, 97, 114, 101, 84, 114, 105, 97, 108, 83, 116, 97, 116, 101, 40, 40, 50, 44, 32, 91, 116, 101, 114, 109, 115, 91, 110, 84, 101, 114, 109, 115, 32, 45, 32, 49, 93, 93, 41, 44, 32, 95, 41, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 80, 114, 101, 112, 97, 114, 101, 85, 110, 105, 116, 97, 114, 121, 67, 111, 117, 112, 108, 101, 100, 67, 108, 117, 115, 116, 101, 114, 83, 116, 97, 116, 101, 40, 114, 101, 102, 101, 114, 101, 110, 99, 101, 83, 116, 97, 116, 101, 44, 32, 116, 101, 114, 109, 115, 91, 46, 46, 46, 110, 84, 101, 114, 109, 115, 32, 45, 32, 50, 93, 44, 32, 116, 114, 111, 116, 116, 101, 114, 83, 116, 101, 112, 83, 105, 122, 101, 44, 32, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 117, 98, 105, 116, 115, 32, 111, 102, 32, 72, 97, 109, 105, 108, 116, 111, 110, 105, 97, 110, 46, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 80, 114, 101, 112, 97, 114, 101, 83, 105, 110, 103, 108, 101, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 83, 105, 110, 103, 108, 101, 83, 105, 116, 101, 79, 99, 99, 117, 112, 97, 116, 105, 111, 110, 32, 40, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 32, 58, 32, 73, 110, 116, 91, 93, 44, 32, 113, 117, 98, 105, 116, 115, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 10, 32, 32, 32, 32, 58, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 32, 43, 32, 67, 116, 108, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 65, 112, 112, 108, 121, 84, 111, 69, 97, 99, 104, 67, 65, 40, 88, 44, 32, 83, 117, 98, 97, 114, 114, 97, 121, 40, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 44, 32, 113, 117, 98, 105, 116, 115, 41, 41, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 105, 110, 116, 101, 114, 110, 97, 108, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 95, 80, 114, 101, 112, 97, 114, 101, 83, 105, 110, 103, 108, 101, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 83, 105, 110, 103, 108, 101, 83, 105, 116, 101, 79, 99, 99, 117, 112, 97, 116, 105, 111, 110, 40, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 32, 58, 32, 73, 110, 116, 91, 93, 41, 32, 58, 32, 40, 81, 117, 98, 105, 116, 91, 93, 32, 61, 62, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 32, 43, 32, 67, 116, 108, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 80, 114, 101, 112, 97, 114, 101, 83, 105, 110, 103, 108, 101, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 83, 105, 110, 103, 108, 101, 83, 105, 116, 101, 79, 99, 99, 117, 112, 97, 116, 105, 111, 110, 40, 113, 117, 98, 105, 116, 73, 110, 100, 105, 99, 101, 115, 44, 32, 95, 41, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 32, 83, 117, 109, 109, 97, 114, 121, 10, 32, 32, 32, 32, 47, 47, 47, 32, 83, 112, 97, 114, 115, 101, 32, 109, 117, 108, 116, 105, 45, 99, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 32, 115, 116, 97, 116, 101, 32, 112, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 32, 111, 102, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 32, 98, 121, 32, 97, 100, 100, 105, 110, 103, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 10, 32, 32, 32, 32, 47, 47, 47, 32, 116, 111, 32, 105, 110, 105, 116, 105, 97, 108, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 46, 10, 32, 32, 32, 32, 47, 47, 47, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 32, 73, 110, 112, 117, 116, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 35, 32, 105, 110, 105, 116, 105, 97, 108, 83, 116, 97, 116, 101, 80, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 10, 32, 32, 32, 32, 47, 47, 47, 32, 85, 110, 105, 116, 97, 114, 121, 32, 116, 111, 32, 112, 114, 101, 112, 97, 114, 101, 32, 105, 110, 105, 116, 105, 97, 108, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 46, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 35, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 10, 32, 32, 32, 32, 47, 47, 47, 32, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 32, 111, 102, 32, 105, 110, 105, 116, 105, 97, 108, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 32, 114, 101, 112, 114, 101, 115, 101, 110, 116, 101, 100, 32, 98, 121, 10, 32, 32, 32, 32, 47, 47, 47, 32, 116, 104, 101, 32, 97, 109, 112, 108, 105, 116, 117, 100, 101, 32, 111, 102, 32, 116, 104, 101, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 32, 97, 110, 100, 32, 116, 104, 101, 32, 113, 117, 98, 105, 116, 32, 105, 110, 100, 105, 99, 101, 115, 10, 32, 32, 32, 32, 47, 47, 47, 32, 116, 104, 101, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 32, 97, 99, 116, 115, 32, 111, 110, 46, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 35, 32, 113, 117, 98, 105, 116, 115, 10, 32, 32, 32, 32, 47, 47, 47, 32, 81, 117, 98, 105, 116, 115, 32, 111, 102, 32, 72, 97, 109, 105, 108, 116, 111, 110, 105, 97, 110, 46, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 80, 114, 101, 112, 97, 114, 101, 83, 112, 97, 114, 115, 101, 77, 117, 108, 116, 105, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 40, 10, 32, 32, 32, 32, 32, 32, 32, 32, 105, 110, 105, 116, 105, 97, 108, 83, 116, 97, 116, 101, 80, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 32, 58, 32, 40, 81, 117, 98, 105, 116, 91, 93, 32, 61, 62, 32, 85, 110, 105, 116, 41, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 32, 58, 32, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 73, 110, 112, 117, 116, 83, 116, 97, 116, 101, 91, 93, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32, 113, 117, 98, 105, 116, 115, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 10, 32, 32, 32, 32, 41, 10, 32, 32, 32, 32, 58, 32, 85, 110, 105, 116, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 32, 61, 32, 76, 101, 110, 103, 116, 104, 40, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 41, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 70, 73, 88, 77, 69, 32, 99, 111, 109, 112, 105, 108, 101, 32, 101, 114, 114, 111, 114, 32, 108, 101, 116, 32, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 83, 113, 114, 116, 65, 98, 115, 32, 61, 32, 77, 97, 112, 112, 101, 100, 40, 67, 111, 109, 112, 111, 115, 101, 40, 67, 111, 109, 112, 111, 115, 101, 40, 83, 113, 114, 116, 44, 32, 70, 115, 116, 41, 44, 70, 115, 116, 41, 44, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 83, 113, 114, 116, 65, 98, 115, 32, 61, 32, 91, 48, 46, 48, 44, 32, 115, 105, 122, 101, 32, 61, 32, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 93, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 78, 101, 119, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 32, 61, 32, 91, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 40, 48, 46, 48, 44, 32, 48, 46, 48, 41, 44, 32, 115, 105, 122, 101, 32, 61, 32, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 93, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 97, 112, 112, 108, 121, 70, 108, 105, 112, 115, 32, 61, 32, 91, 91, 93, 44, 32, 115, 105, 122, 101, 32, 61, 32, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 93, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 32, 105, 100, 120, 32, 105, 110, 32, 48, 32, 46, 46, 32, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 32, 45, 32, 49, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 40, 120, 44, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 41, 32, 61, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 91, 105, 100, 120, 93, 33, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 115, 101, 116, 32, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 83, 113, 114, 116, 65, 98, 115, 32, 119, 47, 61, 32, 105, 100, 120, 32, 60, 45, 32, 83, 113, 114, 116, 40, 65, 98, 115, 67, 111, 109, 112, 1, 0, 0, 0, 0, 0, 0, 0, 108, 101, 120, 80, 111, 108, 97, 114, 40, 67, 111, 109, 112, 108, 101, 120, 65, 115, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 40, 67, 111, 109, 112, 108, 101, 120, 40, 120, 41, 41, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 115, 101, 116, 32, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 78, 101, 119, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 32, 119, 47, 61, 32, 105, 100, 120, 32, 60, 45, 32, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 40, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 83, 113, 114, 116, 65, 98, 115, 91, 105, 100, 120, 93, 44, 32, 65, 114, 103, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 40, 67, 111, 109, 112, 108, 101, 120, 65, 115, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 40, 67, 111, 109, 112, 108, 101, 120, 40, 120, 41, 41, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 115, 101, 116, 32, 97, 112, 112, 108, 121, 70, 108, 105, 112, 115, 32, 119, 47, 61, 32, 105, 100, 120, 32, 60, 45, 32, 101, 120, 99, 105, 116, 97, 116, 105, 111, 110, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 110, 66, 105, 116, 115, 73, 110, 100, 105, 99, 101, 115, 32, 61, 32, 67, 101, 105, 108, 105, 110, 103, 40, 76, 103, 40, 73, 110, 116, 65, 115, 68, 111, 117, 98, 108, 101, 40, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 41, 41, 41, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 112, 101, 97, 116, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 115, 117, 99, 99, 101, 115, 115, 32, 61, 32, 102, 97, 108, 115, 101, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 117, 115, 101, 32, 97, 117, 120, 105, 108, 108, 97, 114, 121, 32, 61, 32, 81, 117, 98, 105, 116, 91, 110, 66, 105, 116, 115, 73, 110, 100, 105, 99, 101, 115, 32, 43, 32, 49, 93, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 117, 115, 101, 32, 102, 108, 97, 103, 32, 61, 32, 81, 117, 98, 105, 116, 40, 41, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 109, 117, 108, 116, 105, 112, 108, 101, 120, 101, 114, 32, 61, 32, 77, 117, 108, 116, 105, 112, 108, 101, 120, 101, 114, 66, 114, 117, 116, 101, 70, 111, 114, 99, 101, 70, 114, 111, 109, 71, 101, 110, 101, 114, 97, 116, 111, 114, 40, 110, 69, 120, 99, 105, 116, 97, 116, 105, 111, 110, 115, 44, 32, 76, 111, 111, 107, 117, 112, 70, 117, 110, 99, 116, 105, 111, 110, 40, 77, 97, 112, 112, 101, 100, 40, 95, 80, 114, 101, 112, 97, 114, 101, 83, 105, 110, 103, 108, 101, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 97, 108, 83, 116, 97, 116, 101, 83, 105, 110, 103, 108, 101, 83, 105, 116, 101, 79, 99, 99, 117, 112, 97, 116, 105, 111, 110, 44, 32, 97, 112, 112, 108, 121, 70, 108, 105, 112, 115, 41, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 80, 114, 101, 112, 97, 114, 101, 65, 114, 98, 105, 116, 114, 97, 114, 121, 83, 116, 97, 116, 101, 67, 80, 40, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 78, 101, 119, 67, 111, 109, 112, 108, 101, 120, 80, 111, 108, 97, 114, 44, 32, 76, 105, 116, 116, 108, 101, 69, 110, 100, 105, 97, 110, 40, 97, 117, 120, 105, 108, 108, 97, 114, 121, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 108, 116, 105, 112, 108, 101, 120, 101, 114, 40, 76, 105, 116, 116, 108, 101, 69, 110, 100, 105, 97, 110, 40, 97, 117, 120, 105, 108, 108, 97, 114, 121, 41, 44, 32, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 65, 100, 106, 111, 105, 110, 116, 32, 80, 114, 101, 112, 97, 114, 101, 65, 114, 98, 105, 116, 114, 97, 114, 121, 83, 116, 97, 116, 101, 68, 40, 99, 111, 101, 102, 102, 105, 99, 105, 101, 110, 116, 115, 83, 113, 114, 116, 65, 98, 115, 44, 32, 76, 105, 116, 116, 108, 101, 69, 110, 100, 105, 97, 110, 40, 97, 117, 120, 105, 108, 108, 97, 114, 121, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 67, 111, 110, 116, 114, 111, 108, 108, 101, 100, 79, 110, 73, 110, 116, 40, 48, 44, 32, 88, 41, 40, 97, 117, 120, 105, 108, 108, 97, 114, 121, 44, 32, 102, 108, 97, 103, 41, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 105, 102, 32, 109, 101, 97, 115, 117, 114, 101, 109, 101, 110, 116, 32, 111, 117, 116, 99, 111, 109, 101, 32, 111, 110, 101, 32, 119, 101, 32, 112, 114, 101, 112, 97, 114, 101, 100, 32, 114, 101, 113, 117, 105, 114, 101, 100, 32, 115, 116, 97, 116, 101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 111, 117, 116, 99, 111, 109, 101, 32, 61, 32, 77, 40, 102, 108, 97, 103, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 115, 101, 116, 32, 115, 117, 99, 99, 101, 115, 115, 32, 61, 32, 111, 117, 116, 99, 111, 109, 101, 32, 61, 61, 32, 79, 110, 101, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 82, 101, 115, 101, 116, 65, 108, 108, 40, 97, 117, 120, 105, 108, 108, 97, 114, 121, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 82, 101, 115, 101, 116, 40, 102, 108, 97, 103, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 117, 110, 116, 105, 108, 32, 115, 117, 99, 99, 101, 115, 115, 10, 32, 32, 32, 32, 32, 32, 32, 32, 102, 105, 120, 117, 112, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 82, 101, 115, 101, 116, 65, 108, 108, 40, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 125, 10, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 32, 83, 117, 109, 109, 97, 114, 121, 10, 32, 32, 32, 32, 47, 47, 47, 32, 85, 110, 105, 116, 97, 114, 121, 32, 99, 111, 117, 112, 108, 101, 100, 45, 99, 108, 117, 115, 116, 101, 114, 32, 115, 116, 97, 116, 101, 32, 112, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 32, 111, 102, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 10, 32, 32, 32, 32, 47, 47, 47, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 32, 73, 110, 112, 117, 116, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 35, 32, 105, 110, 105, 116, 105, 97, 108, 83, 116, 97, 116, 101, 80, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 10, 32, 32, 32, 32, 47, 47, 47, 32, 85, 110, 105, 116, 97, 114, 121, 32, 116, 111, 32, 112, 114, 101, 112, 97, 114, 101, 32, 105, 110, 105, 116, 105, 97, 108, 32, 116, 114, 105, 97, 108, 32, 115, 116, 97, 116, 101, 46, 10, 32, 32, 32, 32, 47, 47, 47, 32, 35, 35, 32, 113, 117, 98, 105, 116, 115, 10, 32, 32, 32, 32, 47, 47, 47, 32, 81, 117, 98, 105, 116, 115, 32, 111, 102, 32, 72, 97, 109, 105, 108, 116, 111, 110, 105, 97, 110, 46, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 80, 114, 101, 112, 97, 114, 101, 85, 110, 105, 116, 97, 114, 121, 67, 111, 117, 112, 108, 101, 100, 67, 108, 117, 115, 116, 101, 114, 83, 116, 97, 116, 101, 32, 40, 105, 110, 105, 116, 105, 97, 108, 83, 116, 97, 116, 101, 80, 114, 101, 112, 97, 114, 97, 116, 105, 111, 110, 32, 58, 32, 40, 81, 117, 98, 105, 116, 91, 93, 32, 61, 62, 32, 85, 110, 105, 116, 41, 44, 32, 99, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 32, 58, 32, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 73, 110, 112, 117, 116, 83, 116, 97, 116, 101, 91, 93, 44, 32, 116, 114, 111, 116, 116, 101, 114, 83, 116, 101, 112, 83, 105, 122, 101, 32, 58, 32, 68, 111, 117, 98, 108, 101, 44, 32, 113, 117, 98, 105, 116, 115, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 32, 58, 32, 85, 110, 105, 116, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 99, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 71, 101, 110, 101, 114, 97, 116, 111, 114, 83, 121, 115, 116, 101, 109, 32, 61, 32, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 67, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 71, 101, 110, 101, 114, 97, 116, 111, 114, 83, 121, 115, 116, 101, 109, 40, 99, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 101, 118, 111, 108, 117, 116, 105, 111, 110, 71, 101, 110, 101, 114, 97, 116, 111, 114, 32, 61, 32, 69, 118, 111, 108, 117, 116, 105, 111, 110, 71, 101, 110, 101, 114, 97, 116, 111, 114, 40, 74, 111, 114, 100, 97, 110, 87, 105, 103, 110, 101, 114, 67, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 69, 118, 111, 108, 117, 116, 105, 111, 110, 83, 101, 116, 40, 41, 44, 32, 99, 108, 117, 115, 116, 101, 114, 79, 112, 101, 114, 97, 116, 111, 114, 71, 101, 110, 101, 114, 97, 116, 111, 114, 83, 121, 115, 116, 101, 109, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 116, 114, 111, 116, 116, 101, 114, 79, 114, 100, 101, 114, 32, 61, 32, 49, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 115, 105, 109, 117, 108, 97, 116, 105, 111, 110, 65, 108, 103, 111, 114, 105, 116, 104, 109, 32, 61, 32, 40, 84, 114, 111, 116, 116, 101, 114, 83, 105, 109, 117, 108, 97, 116, 105, 111, 110, 65, 108, 103, 111, 114, 105, 116, 104, 109, 40, 116, 114, 111, 116, 116, 101, 114, 83, 116, 101, 112, 83, 105, 122, 101, 44, 32, 116, 114, 111, 116, 116, 101, 114, 79, 114, 100, 101, 114, 41, 41, 33, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 47, 47, 32, 67, 111, 112, 121, 114, 105, 103, 104, 116, 32, 40, 99, 41, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 32, 67, 111, 114, 112, 111, 114, 97, 116, 105, 111, 110, 46, 32, 65, 108, 108, 32, 114, 105, 103, 104, 116, 115, 32, 114, 101, 115, 101, 114, 118, 101, 100, 46, 10, 47, 47, 32, 76, 105, 99, 101, 110, 115, 101, 100, 32, 117, 110, 100, 101, 114, 32, 116, 104, 101, 32, 77, 73, 84, 32, 108, 105, 99, 101, 110, 115, 101, 46, 10, 10, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 47, 47, 32, 84, 104, 105, 115, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 97, 105, 110, 115, 32, 114, 101, 102, 101, 114, 101, 110, 99, 101, 32, 115, 111, 108, 117, 116, 105, 111, 110, 115, 32, 116, 111, 32, 97, 108, 108, 32, 116, 97, 115, 107, 115, 46, 10, 47, 47, 32, 84, 104, 101, 32, 116, 97, 115, 107, 115, 32, 116, 104, 101, 109, 115, 101, 108, 118, 101, 115, 32, 99, 97, 110, 32, 98, 101, 32, 102, 111, 117, 110, 100, 32, 105, 110, 32, 84, 97, 115, 107, 115, 46, 113, 115, 32, 102, 105, 108, 101, 46, 10, 47, 47, 32, 87, 101, 32, 114, 101, 99, 111, 109, 109, 101, 110, 100, 32, 116, 104, 97, 116, 32, 121, 111, 117, 32, 116, 114, 121, 32, 116, 111, 32, 115, 111, 108, 118, 101, 32, 116, 104, 101, 32, 116, 97, 115, 107, 115, 32, 121, 111, 117, 114, 115, 101, 108, 102, 32, 102, 105, 114, 115, 116, 44, 10, 47, 47, 32, 98, 117, 116, 32, 102, 101, 101, 108, 32, 102, 114, 101, 101, 32, 116, 111, 32, 108, 111, 111, 107, 32, 117, 112, 32, 116, 104, 101, 32, 115, 111, 108, 117, 116, 105, 111, 110, 32, 105, 102, 32, 121, 111, 117, 32, 103, 101, 116, 32, 115, 116, 117, 99, 107, 46, 10, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 10, 110, 97, 109, 101, 115, 112, 97, 99, 101, 32, 81, 117, 97, 110, 116, 117, 109, 46, 75, 97, 116, 97, 46, 71, 114, 97, 112, 104, 67, 111, 108, 111, 114, 105, 110, 103, 32, 123, 10, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 65, 114, 114, 97, 121, 115, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 67, 111, 110, 118, 101, 114, 116, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 77, 97, 116, 104, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 77, 101, 97, 115, 117, 114, 101, 109, 101, 110, 116, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 73, 110, 116, 114, 105, 110, 115, 105, 99, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 67, 97, 110, 111, 110, 59, 10, 32, 32, 32, 32, 111, 112, 101, 110, 32, 77, 105, 99, 114, 111, 115, 111, 102, 116, 46, 81, 117, 97, 110, 116, 117, 109, 46, 68, 105, 97, 103, 110, 111, 115, 116, 105, 99, 115, 59, 10, 10, 10, 32, 32, 32, 32, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 32, 32, 32, 32, 47, 47, 32, 80, 97, 114, 116, 32, 73, 46, 32, 67, 111, 108, 111, 114, 115, 32, 114, 101, 112, 114, 101, 115, 101, 110, 116, 97, 116, 105, 111, 110, 32, 97, 110, 100, 32, 109, 97, 110, 105, 112, 117, 108, 97, 116, 105, 111, 110, 10, 32, 32, 32, 32, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 49, 46, 49, 46, 32, 73, 110, 105, 116, 105, 97, 108, 105, 122, 101, 32, 114, 101, 103, 105, 115, 116, 101, 114, 32, 116, 111, 32, 97, 32, 99, 111, 108, 111, 114, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 73, 110, 105, 116, 105, 97, 108, 105, 122, 101, 67, 111, 108, 111, 114, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 67, 32, 58, 32, 73, 110, 116, 44, 32, 114, 101, 103, 105, 115, 116, 101, 114, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 32, 58, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 78, 32, 61, 32, 76, 101, 110, 103, 116, 104, 40, 114, 101, 103, 105, 115, 116, 101, 114, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 67, 111, 110, 118, 101, 114, 116, 32, 67, 32, 116, 111, 32, 97, 110, 32, 97, 114, 114, 97, 121, 32, 111, 102, 32, 98, 105, 116, 115, 32, 105, 110, 32, 108, 105, 116, 116, 108, 101, 32, 101, 110, 100, 105, 97, 110, 32, 102, 111, 114, 109, 97, 116, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 98, 105, 110, 97, 114, 121, 67, 32, 61, 32, 73, 110, 116, 65, 115, 66, 111, 111, 108, 65, 114, 114, 97, 121, 40, 67, 44, 32, 78, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 86, 97, 108, 117, 101, 32, 34, 116, 114, 117, 101, 34, 32, 99, 111, 114, 114, 101, 115, 112, 111, 110, 100, 115, 32, 116, 111, 32, 98, 105, 116, 32, 49, 32, 97, 110, 100, 32, 114, 101, 113, 117, 105, 114, 101, 115, 32, 97, 112, 112, 108, 121, 105, 110, 103, 32, 97, 110, 32, 88, 32, 103, 97, 116, 101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 65, 112, 112, 108, 121, 80, 97, 117, 108, 105, 70, 114, 111, 109, 66, 105, 116, 83, 116, 114, 105, 110, 103, 40, 80, 97, 117, 108, 105, 88, 44, 32, 116, 114, 117, 101, 44, 32, 98, 105, 110, 97, 114, 121, 67, 44, 32, 114, 101, 103, 105, 115, 116, 101, 114, 41, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 49, 46, 50, 46, 32, 82, 101, 97, 100, 32, 99, 111, 108, 111, 114, 32, 102, 114, 111, 109, 32, 97, 32, 114, 101, 103, 105, 115, 116, 101, 114, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 77, 101, 97, 115, 117, 114, 101, 67, 111, 108, 111, 114, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 114, 101, 103, 105, 115, 116, 101, 114, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 32, 58, 32, 73, 110, 116, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 82, 101, 115, 117, 108, 116, 65, 114, 114, 97, 121, 65, 115, 73, 110, 116, 40, 77, 117, 108, 116, 105, 77, 40, 114, 101, 103, 105, 115, 116, 101, 114, 41, 41, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 49, 46, 51, 46, 32, 82, 101, 97, 100, 32, 99, 111, 108, 111, 114, 105, 110, 103, 32, 102, 114, 111, 109, 32, 97, 32, 114, 101, 103, 105, 115, 116, 101, 114, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 77, 101, 97, 115, 117, 114, 101, 67, 111, 108, 111, 114, 105, 110, 103, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 75, 32, 58, 32, 73, 110, 116, 44, 32, 114, 101, 103, 105, 115, 116, 101, 114, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 41, 32, 58, 32, 73, 110, 116, 91, 93, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 78, 32, 61, 32, 76, 101, 110, 103, 116, 104, 40, 114, 101, 103, 105, 115, 116, 101, 114, 41, 32, 47, 32, 75, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 99, 111, 108, 111, 114, 80, 97, 114, 116, 105, 116, 105, 111, 110, 115, 32, 61, 32, 67, 104, 117, 110, 107, 115, 40, 78, 44, 32, 114, 101, 103, 105, 115, 116, 101, 114, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 70, 111, 114, 69, 97, 99, 104, 40, 77, 101, 97, 115, 117, 114, 101, 67, 111, 108, 111, 114, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 44, 32, 99, 111, 108, 111, 114, 80, 97, 114, 116, 105, 116, 105, 111, 110, 115, 41, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 49, 46, 52, 46, 32, 50, 45, 98, 105, 116, 32, 99, 111, 108, 111, 114, 32, 101, 113, 117, 97, 108, 105, 116, 121, 32, 111, 114, 97, 99, 108, 101, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 67, 111, 108, 111, 114, 69, 113, 117, 97, 108, 105, 116, 121, 79, 114, 97, 99, 108, 101, 95, 50, 98, 105, 116, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 99, 48, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 44, 32, 99, 49, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 44, 32, 116, 97, 114, 103, 101, 116, 32, 58, 32, 81, 117, 98, 105, 116, 41, 32, 58, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 43, 67, 116, 108, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 83, 109, 97, 108, 108, 32, 99, 97, 115, 101, 32, 115, 111, 108, 117, 116, 105, 111, 110, 32, 119, 105, 116, 104, 32, 110, 111, 32, 101, 120, 116, 114, 97, 32, 113, 117, 98, 105, 116, 115, 32, 97, 108, 108, 111, 99, 97, 116, 101, 100, 58, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 105, 116, 101, 114, 97, 116, 101, 32, 111, 118, 101, 114, 32, 97, 108, 108, 32, 98, 105, 116, 32, 115, 116, 114, 105, 110, 103, 115, 32, 111, 102, 32, 108, 101, 110, 103, 116, 104, 32, 50, 44, 32, 97, 110, 100, 32, 100, 111, 32, 97, 32, 99, 111, 110, 116, 114, 111, 108, 108, 101, 100, 32, 88, 32, 111, 110, 32, 116, 104, 101, 32, 116, 97, 114, 103, 101, 116, 32, 113, 117, 98, 105, 116, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 119, 105, 116, 104, 32, 99, 111, 110, 116, 114, 111, 108, 32, 113, 117, 98, 105, 116, 115, 32, 99, 48, 32, 97, 110, 100, 32, 99, 49, 32, 105, 110, 32, 115, 116, 97, 116, 101, 115, 32, 100, 101, 115, 99, 114, 105, 98, 101, 100, 32, 98, 121, 32, 101, 97, 99, 104, 32, 111, 102, 32, 116, 104, 101, 115, 101, 32, 98, 105, 116, 32, 115, 116, 114, 105, 110, 103, 115, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 70, 111, 114, 32, 97, 32, 98, 101, 116, 116, 101, 114, 32, 115, 111, 108, 117, 116, 105, 111, 110, 44, 32, 115, 101, 101, 32, 116, 97, 115, 107, 32, 49, 46, 53, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 32, 99, 111, 108, 111, 114, 32, 105, 110, 32, 48, 46, 46, 51, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 98, 105, 110, 97, 114, 121, 67, 111, 108, 111, 114, 32, 61, 32, 73, 110, 116, 65, 115, 66, 111, 111, 108, 65, 114, 114, 97, 121, 40, 99, 111, 108, 111, 114, 44, 32, 50, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 67, 111, 110, 116, 114, 111, 108, 108, 101, 100, 79, 110, 66, 105, 116, 83, 116, 114, 105, 110, 103, 40, 98, 105, 110, 97, 114, 121, 67, 111, 108, 111, 114, 32, 43, 32, 98, 105, 110, 97, 114, 121, 67, 111, 108, 111, 114, 44, 32, 88, 41, 41, 40, 99, 48, 32, 43, 32, 99, 49, 44, 32, 116, 97, 114, 103, 101, 116, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 49, 46, 53, 46, 32, 78, 45, 98, 105, 116, 32, 99, 111, 108, 111, 114, 32, 101, 113, 117, 97, 108, 105, 116, 121, 32, 111, 114, 97, 99, 108, 101, 32, 40, 110, 111, 32, 101, 120, 116, 114, 97, 32, 113, 117, 98, 105, 116, 115, 41, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 67, 111, 108, 111, 114, 69, 113, 117, 97, 108, 105, 116, 121, 79, 114, 97, 99, 108, 101, 95, 78, 98, 105, 116, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 99, 48, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 44, 32, 99, 49, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 44, 32, 116, 97, 114, 103, 101, 116, 32, 58, 32, 81, 117, 98, 105, 116, 41, 32, 58, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 43, 67, 116, 108, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 119, 105, 116, 104, 105, 110, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 32, 40, 113, 48, 44, 32, 113, 49, 41, 32, 105, 110, 32, 90, 105, 112, 112, 101, 100, 40, 99, 48, 44, 32, 99, 49, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 99, 111, 109, 112, 117, 116, 101, 32, 88, 79, 82, 32, 111, 102, 32, 113, 48, 32, 97, 110, 100, 32, 113, 49, 32, 105, 110, 32, 112, 108, 97, 99, 101, 32, 40, 115, 116, 111, 114, 105, 110, 103, 32, 105, 116, 32, 105, 110, 32, 113, 49, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 67, 78, 79, 84, 40, 113, 48, 44, 32, 113, 49, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 32, 97, 112, 112, 108, 121, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 105, 102, 32, 97, 108, 108, 32, 88, 79, 82, 115, 32, 97, 114, 101, 32, 48, 44, 32, 116, 104, 101, 32, 98, 105, 116, 32, 115, 116, 114, 105, 110, 103, 115, 32, 97, 114, 101, 32, 101, 113, 117, 97, 108, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 67, 111, 110, 116, 114, 111, 108, 108, 101, 100, 79, 110, 73, 110, 116, 40, 48, 44, 32, 88, 41, 41, 40, 99, 49, 44, 32, 116, 97, 114, 103, 101, 116, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 125, 10, 10, 10, 10, 32, 32, 32, 32, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 32, 32, 32, 32, 47, 47, 32, 80, 97, 114, 116, 32, 73, 73, 46, 32, 86, 101, 114, 116, 101, 120, 32, 99, 111, 108, 111, 114, 105, 110, 103, 32, 112, 114, 111, 98, 108, 101, 109, 10, 32, 32, 32, 32, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 50, 46, 49, 46, 32, 67, 108, 97, 115, 115, 105, 99, 97, 108, 32, 118, 101, 114, 105, 102, 105, 99, 97, 116, 105, 111, 110, 32, 111, 102, 32, 118, 101, 114, 116, 101, 120, 32, 99, 111, 108, 111, 114, 105, 110, 103, 10, 32, 32, 32, 32, 102, 117, 110, 99, 116, 105, 111, 110, 32, 73, 115, 86, 101, 114, 116, 101, 120, 67, 111, 108, 111, 114, 105, 110, 103, 86, 97, 108, 105, 100, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 86, 32, 58, 32, 73, 110, 116, 44, 32, 101, 100, 103, 101, 115, 58, 32, 40, 73, 110, 116, 44, 32, 73, 110, 116, 41, 91, 93, 44, 32, 99, 111, 108, 111, 114, 115, 58, 32, 73, 110, 116, 91, 93, 41, 32, 58, 32, 66, 111, 111, 108, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 32, 40, 115, 116, 97, 114, 116, 44, 32, 101, 110, 100, 41, 32, 105, 110, 32, 101, 100, 103, 101, 115, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 105, 102, 32, 99, 111, 108, 111, 114, 115, 91, 115, 116, 97, 114, 116, 93, 32, 61, 61, 32, 99, 111, 108, 111, 114, 115, 91, 101, 110, 100, 93, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 102, 97, 108, 115, 101, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 116, 114, 117, 101, 59, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 50, 46, 50, 46, 32, 79, 114, 97, 99, 108, 101, 32, 102, 111, 114, 32, 118, 101, 114, 105, 102, 121, 105, 110, 103, 32, 118, 101, 114, 116, 101, 120, 32, 99, 111, 108, 111, 114, 105, 110, 103, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 86, 101, 114, 116, 101, 120, 67, 111, 108, 111, 114, 105, 110, 103, 79, 114, 97, 99, 108, 101, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 86, 32, 58, 32, 73, 110, 116, 44, 32, 101, 100, 103, 101, 115, 32, 58, 32, 40, 73, 110, 116, 44, 32, 73, 110, 116, 41, 91, 93, 44, 32, 99, 111, 108, 111, 114, 115, 82, 101, 103, 105, 115, 116, 101, 114, 32, 58, 32, 81, 117, 98, 105, 116, 91, 93, 44, 32, 116, 97, 114, 103, 101, 116, 32, 58, 32, 81, 117, 98, 105, 116, 41, 32, 58, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 43, 67, 116, 108, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 108, 101, 116, 32, 110, 69, 100, 103, 101, 115, 32, 61, 32, 76, 101, 110, 103, 116, 104, 40, 101, 100, 103, 101, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 117, 115, 101, 32, 99, 111, 110, 102, 108, 105, 99, 116, 81, 117, 98, 105, 116, 115, 32, 61, 32, 81, 117, 98, 105, 116, 91, 110, 69, 100, 103, 101, 115, 93, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 119, 105, 116, 104, 105, 110, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 102, 111, 114, 32, 40, 40, 115, 116, 97, 114, 116, 44, 32, 101, 110, 100, 41, 44, 32, 99, 111, 110, 102, 108, 105, 99, 116, 81, 117, 98, 105, 116, 41, 32, 105, 110, 32, 90, 105, 112, 112, 101, 100, 40, 101, 100, 103, 101, 115, 44, 32, 99, 111, 110, 102, 108, 105, 99, 116, 81, 117, 98, 105, 116, 115, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 67, 104, 101, 99, 107, 32, 116, 104, 97, 116, 32, 101, 110, 100, 112, 111, 105, 110, 116, 115, 32, 111, 102, 32, 116, 104, 101, 32, 101, 100, 103, 101, 32, 104, 97, 118, 101, 32, 100, 105, 102, 102, 101, 114, 101, 110, 116, 32, 99, 111, 108, 111, 114, 115, 58, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 97, 112, 112, 108, 121, 32, 67, 111, 108, 111, 114, 69, 113, 117, 97, 108, 105, 116, 121, 79, 114, 97, 99, 108, 101, 95, 78, 98, 105, 116, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 111, 114, 97, 99, 108, 101, 59, 32, 105, 102, 32, 116, 104, 101, 32, 99, 111, 108, 111, 114, 115, 32, 97, 114, 101, 32, 116, 104, 101, 32, 115, 97, 109, 101, 32, 116, 104, 101, 32, 114, 101, 115, 117, 108, 116, 32, 119, 105, 108, 108, 32, 98, 101, 32, 49, 44, 32, 105, 110, 100, 105, 99, 97, 116, 105, 110, 103, 32, 97, 32, 99, 111, 110, 102, 108, 105, 99, 116, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 67, 111, 108, 111, 114, 69, 113, 117, 97, 108, 105, 116, 121, 79, 114, 97, 99, 108, 101, 95, 78, 98, 105, 116, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 40, 99, 111, 108, 111, 114, 115, 82, 101, 103, 105, 115, 116, 101, 114, 91, 115, 116, 97, 114, 116, 32, 42, 32, 50, 32, 46, 46, 32, 115, 116, 97, 114, 116, 32, 42, 32, 50, 32, 43, 32, 49, 93, 44, 32, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 99, 111, 108, 111, 114, 115, 82, 101, 103, 105, 115, 116, 101, 114, 91, 101, 110, 100, 32, 42, 32, 50, 32, 46, 46, 32, 101, 110, 100, 32, 42, 32, 50, 32, 43, 32, 49, 93, 44, 32, 99, 111, 110, 102, 108, 105, 99, 116, 81, 117, 98, 105, 116, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 32, 97, 112, 112, 108, 121, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 73, 102, 32, 116, 104, 101, 114, 101, 32, 97, 114, 101, 32, 110, 111, 32, 99, 111, 110, 102, 108, 105, 99, 116, 115, 32, 40, 97, 108, 108, 32, 113, 117, 98, 105, 116, 115, 32, 97, 114, 101, 32, 105, 110, 32, 48, 32, 115, 116, 97, 116, 101, 41, 44, 32, 116, 104, 101, 32, 118, 101, 114, 116, 101, 120, 32, 99, 111, 108, 111, 114, 105, 110, 103, 32, 105, 115, 32, 118, 97, 108, 105, 100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 67, 111, 110, 116, 114, 111, 108, 108, 101, 100, 79, 110, 73, 110, 116, 40, 48, 44, 32, 88, 41, 41, 40, 99, 111, 110, 102, 108, 105, 99, 116, 81, 117, 98, 105, 116, 115, 44, 32, 116, 97, 114, 103, 101, 116, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 125, 10, 10, 10, 32, 32, 32, 32, 47, 47, 32, 84, 97, 115, 107, 32, 50, 46, 51, 46, 32, 85, 115, 105, 110, 103, 32, 71, 114, 111, 118, 101, 114, 39, 115, 32, 115, 101, 97, 114, 99, 104, 32, 116, 111, 32, 102, 105, 110, 100, 32, 118, 101, 114, 116, 101, 120, 32, 99, 111, 108, 111, 114, 105, 110, 103, 10, 32, 32, 32, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 71, 114, 111, 118, 101, 114, 115, 65, 108, 103, 111, 114, 105, 116, 104, 109, 95, 82, 101, 102, 101, 114, 101, 110, 99, 101, 32, 40, 86, 32, 58, 32, 73, 110, 116, 44, 32, 111, 114, 97, 99, 108, 101, 32, 58, 32, 40, 40, 81, 117, 98, 105, 116, 91, 93, 44, 32, 81, 117, 98, 105, 116, 41, 32, 61, 62, 32, 85, 110, 105, 116, 32, 105, 115, 32, 65, 100, 106, 41, 41, 32, 58, 32, 73, 110, 116, 91, 93, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 111, 114, 97, 99, 108, 101, 32, 61, 32, 115, 105, 109, 117, 108, 97, 116, 105, 111, 110, 65, 108, 103, 111, 114, 105, 116, 104, 109, 40, 49, 46, 48, 44, 32, 101, 118, 111, 108, 117, 116, 105, 111, 110, 71, 101, 110, 101, 114, 97, 116, 111, 114, 44, 32, 95, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 105, 110, 105, 116, 105, 97, 108, 83, 116, 97, 116, 101, 80, 114, 101, 112, 97, 114, 97, 47, 47, 32, 84, 104, 105, 115, 32, 116, 97, 115, 107, 32, 105, 115, 32, 115, 105, 109, 105, 108, 97, 114, 32, 116, 111, 32, 116, 97, 115, 107, 32, 50, 46, 50, 32, 102, 114, 111, 109, 32, 83, 111, 108, 118, 101, 83, 65, 84, 87, 105, 116, 104, 71, 114, 111, 118, 101, 114, 32, 107, 97, 116, 97, 44, 32, 98, 117, 116, 32, 116, 104, 101, 32, 112, 101, 114, 99, 101, 110, 116, 97, 103, 101, 32, 111, 102, 32, 99, 111, 114, 114, 101, 99, 116, 32, 115, 111, 108, 117, 116, 105, 111, 110, 115, 32, 105, 115, 32, 112, 111, 116, 101, 110, 116, 105, 97, 108, 108, 121, 32, 104, 105, 103, 104, 101, 114, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 99, 111, 108, 111, 114, 105, 110, 103, 32, 61, 32, 91, 48, 44, 32, 115, 105, 122, 101, 32, 61, 32, 86, 93, 59, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 78, 111, 116, 101, 32, 116, 104, 97, 116, 32, 99, 111, 108, 111, 114, 105, 110, 103, 32, 114, 101, 103, 105, 115, 116, 101, 114, 32, 104, 97, 115, 32, 116, 104, 101, 32, 110, 117, 109, 98, 101, 116, 105, 111, 110, 40, 113, 117, 98, 105, 116, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 111, 114, 97, 99, 108, 101, 40, 113, 117, 98, 105, 114, 32, 111, 102, 32, 113, 117, 98, 105, 116, 115, 32, 116, 104, 97, 116, 32, 105, 115, 32, 116, 119, 105, 99, 101, 32, 116, 104, 101, 32, 110, 117, 109, 98, 101, 114, 32, 111, 102, 32, 118, 101, 114, 116, 105, 99, 101, 115, 32, 40, 50, 32, 113, 117, 98, 105, 116, 115, 32, 112, 101, 114, 32, 118, 101, 114, 116, 101, 120, 41, 46, 10, 32, 32, 32, 32, 32, 32, 32, 32, 117, 115, 101, 32, 40, 114, 101, 103, 105, 115, 116, 101, 114, 44, 116, 115, 41, 59, 10, 32, 32, 32, 32, 111, 117, 116, 112, 117, 116, 41, 32, 61, 32, 40, 81, 117, 98, 105, 116, 91, 50, 32, 42, 32, 86, 93, 44, 32, 81, 117, 98, 105, 116, 40, 41, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 32, 125, 108, 101, 32, 99, 111, 114, 114, 101, 99, 116, 32, 61, 32, 102, 97, 108, 115, 101, 59, 10, 32, 32, 32, 10, 125, 10, 32, 32, 32, 32, 32, 109, 117, 116, 97, 98, 108, 101, 32, 105, 116, 101, 114, 32, 61, 32]
Reproduce with:
cargo fuzz run -O --features=do_fuzz --sanitizer=none qsharp fuzz/artifacts/qsharp/crash-fc34245dd0fcb868d327fcebe2886932983e9a54
Minimize test case with:
cargo fuzz tmin -O --features=do_fuzz --sanitizer=none qsharp fuzz/artifacts/qsharp/crash-fc34245dd0fcb868d327fcebe2886932983e9a54
────────────────────────────────────────────────────────────────────────────────
Error: Fuzz target exited with exit status: 77
Stack backtrace:
0: anyhow::error::<impl anyhow::Error>::msg
1: cargo_fuzz::project::FuzzProject::exec_fuzz
2: cargo_fuzz::main
3: std::sys::backtrace::__rust_begin_short_backtrace
4: std::rt::lang_start::{{closure}}
5: std::rt::lang_start_internal
6: main
7: <unknown>
8: __libc_start_main
9: _start
The branch/commit the bug has been found in: Click.
If the developers fail to repro the bug in the latestmain
then the branch/commit info below can help them to make sure
that they are using the correct way to repro. If the bug is reproducible in the branch/commit below, but not in latest main
,
then the bug is likely fixed already or is not in the main
branch.
Branch: * main
commit a8ded9f90f349a004ccef157681e8d64de5efa68
Author: Stefan J. Wernli <swernli@microsoft.com>
Date: Mon May 5 14:13:58 2025 -0700
Revert "Revert "Fix out-of-memory in typeck on nested `Ty::Arrow`" (#2359)" (#2362)
Now that the release is complete, we can bring back this fix and let it
marinate until the next release.
Closes #2302
Other Info
- Workflow (contains the run artifacts).
- Workflow Agent System Info:
ubuntu-latest: Linux fv-az2210-160 6.11.0-1012-azure #12~24.04.1-Ubuntu SMP Mon Mar 10 19:00:39 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
. - Bug Reporting Timestamp: 2025.05.05 21:39 UTC (UTC - 8:00 = PST. UTC - 7:00 = PDT).